问题标签 [kubernetes-helm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9575 浏览

jenkins - 默认服务帐户不适用于 jenkins 上的 kubernetes 插件

我已经配置了 Kubernetes 插件来启动从属服务器。但是我在访问控制方面遇到了问题。当 master 尝试启动新的 pod(slave)时出现错误

配置代理 Kubernetes Pod 模板 io.fabric8.kubernetes.client.KubernetesClientException 时遇到意外异常:执行失败:POST 在:https://kubernetes.default/api/v1/namespaces/npd-test/pods. 消息:禁止!配置的服务帐户无权访问。服务帐户可能已被撤销......在 io.fabric8.kubernetes.client.dsl.base.OperationSupport.assertResponseCode(OperationSupport. java:266) 在 io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:237) 在 io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:230)在 io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleCreate(OperationSupport.java:208) 在 io.fabric8.kubernetes.client.dsl.base.BaseOperation.handleCreate(BaseOperation.java:643) 在 io.fabric8 .kubernetes.client.dsl.base.BaseOperation.create(BaseOperation.java:300) 在 org.csanchez。

我已经检查了位于的默认服务帐户的访问权限,/var/run/secrets/kubernetes.io/serviceaccount/token并尝试https://kubernetes.default/api/v1/namespaces/npd-test/pods.使用令牌创建一个 pod,它可以工作。

不知道为什么插件抱怨服务帐户无权访问。

我曾尝试使用无凭据和 Kubernetes 服务帐户凭据(无法指定帐户)配置 Kubernetes 插件,但两者都不起作用。

0 投票
2 回答
467 浏览

kubernetes - 自定义 Helm 图表存储库是什么格式?

我在非互联网环境中安装 Kubernetes。我想使用 Helm 并想设置一个自定义图表存储库。

helm init创建后的 barfs~/.helm/repository/repositories.yaml因为它无法访问默认的 Google 存储库,所以我最终将通过 kubectl 手动安装 - 如果我想设置自己的图表存储库的格式是什么?

我将运行helm init --dry-run --debug以获取清单并将其修改为指向我有权访问的 Docker 注册表,然后通过kubectl.

0 投票
1 回答
1539 浏览

kubernetes - 是什么导致此 Kubernetes 清单验证失败?

我正在尝试将 Helm (v2.4.1) Tiller 安装到 Kubernetes 集群 (v1.5.7) 中。这需要能够在非 Internet 环境中完成,所以我想从helm init --dry-run --debug. 但是,当我将清单复制到一个名为tiller.yaml然后运行的文件中时,kubectl create -f tiller.yaml我得到如下所示的验证错误。请问这个文件有什么问题吗?

分蘖.yaml:

0 投票
1 回答
93 浏览

kubernetes - Kubernetes HA 主设置

我在 Google Cloud 的 Kubernetes 中配置了两个单独的主服务器。如何连接两个主服务器以实现高可用性 Mater(用于弹性)?任何人都可以帮忙吗?

Reagrds,里沙布

0 投票
1 回答
2041 浏览

kubernetes - 如何为 Kubernetes ConfigMap 设置默认值(或者 Helm 是否覆盖 ConfigMap 值?)

用例:

我希望能够从第一份工作停止的地方重新运行一份工作。我正在使用 Helm 部署到 Kubernetes。

我有将第一份工作的状态保存在 ConfigMap 中的想法。定义 ConfigMap 的 ConfigMap yaml 与作业一起打包,并与 Helm 同时部署。

该作业使用 ConfigMap 中设置的 ENV 变量运行:

该作业运行一个脚本,查看是否设置了 $MY_STATE,如果未设置,则该作业是第一次运行,否则该作业将关闭已经运行的第一个作业,将第一个作业的状态保存到 MY_STATE ConfigMap 变量并使用保存的状态再次启动作业。

如果我没有在初始 ConfigMap 定义中声明 MY_STATE 键,那么作业的第一次运行将失败,因为上面的 ENV 定义找不到 ConfigMap 变量。

如果我确实MY_STATE: ""在 ConfigMap 定义中声明了值 ( ),那么第一个部署将起作用。但是,如果我重新部署作业,helm upgrade那么我在定义中输入的值是否不会覆盖现有 ConfigMap 中的现有值?

在同一作业的运行之间存储状态的最佳方法是什么?

0 投票
4 回答
22103 浏览

docker - 在 kubernetes helm 如何用新的配置值替换 pod

我正在使用 helm 图表来部署带有管理配置的“ConfigMap”的 pod。

我直接编辑 ConfigMap 以更改配置文件,然后使用 kubectl delete 删除 pod,以使新配置生效。

是否有任何简单的方法使用helm用新配置替换正在运行的 pod 而无需执行“ kubectl delete ”命令

0 投票
1 回答
349 浏览

sql - 在部署期间添加辅助数据库数据

我的应用程序由两个容器组成:应用程序本身和数据库。我打算将应用程序包装到图表中​​,从而为轻松的可重复部署铺平道路。

除了设置/读取环境 envs(helm+kubernetes 似乎处理得很好)之外,应用程序的部分配置是:

确保数据库预先填充了特殊的辅助数据(例如存在管理员用户,存在创建新用户所需的一些用户角色名称等)。

我喜欢让可读的 yaml 文件以人类可读的格式保存整个配置的想法。然而,乍一看,这似乎对这种(数据库记录)类型的配置没有helm任何帮助。

话虽如此,放置代码/配置以确保数据库包含某些辅助记录的最佳位置是什么?配置 yaml 文件?用 bash 编写的容器初始化脚本?

0 投票
0 回答
237 浏览

kubernetes - 如何通过 helm 在 minikube 中创建角色

我有一个包含以下模板的舵图:

我无法在 minikube 上安装它,但我可以手动创建这样的角色:

为什么我不能使用 helm 创建这个角色?

其他信息:

0 投票
1 回答
1637 浏览

kubernetes - 有没有像`helm exec`这样的东西?

我在脚本中使用以下helm(2.4.2) 命令:gitlab-ci.yml

这是部署到我的暂存/审查环境的一部分。上述命令完成后,我想对my-apppod 执行命令以创建/迁移数据库。目前,这是通过使用initContainer(在引用的 yaml 文件中定义的)来实现的。但我更希望逻辑成为 CI 脚本的一部分 - 所以我不必为生产提供单独的部署文件。

有没有办法做到这一点helm?还是我唯一的选择kubectl exec?如果我使用kubectl exec,是否有一种简单的方法来获取使用的 pod 名称helm

0 投票
1 回答
2049 浏览

configuration - 存储配置和机密

我打算将我们的应用程序(由多个微服务组成)包装到一个图表中。

现在,对于每个微服务,我们将秘密和配置值直接硬编码在我们的deployment.yaml文件中,在...containers[].env. 我们所有的yaml文件都存储在 git repo 中。

我注意到一些流行的图表使用ConfigMap( 1 , 2 ) 和Secret( 1 , 2 ) Kubernetes 对象分别存储配置值和秘密。

ConfigMap使用和Secret对象有哪些优点,无论是人体工程学和/或安全性增益

我已经可以从yaml我们拥有的所有文件中制作模板,使所有硬编码的值都可配置,从而在 helm 的模板编译期间可解析。

然而,由于 Kubernetes 提供了专门的对象来存储配置和秘密,我想证明添加configmap.yamlsecrets.yaml模板文件是合理的,以及从现有deployment.yaml文件中添加对它们的引用。