问题标签 [helmfile]
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.
kubernetes - 使用 helm 和冒烟测试部署到 Kubernetes 集群
我正在使用 helm 图表将我们的微服务移动到 Kubernetes 集群。流量将
- 部署应用
- 运行自动冒烟测试
- 如果测试通过,将流量路由到一组新的 pod。
- 如果测试失败,请删除新部署。
目前正在通过 traefik 探索 Istio 服务网格和基于标头的路由器。
在不丢失 helm 历史的情况下,在 Kubernetes 世界中使用 helm 实现这一目标的最佳方法是什么?因此,如果产品出现任何问题,helm rollback
应该可以工作
docker - 使用 Helm2 的 Kubernetes 滚动更新
我正在尝试使用Helm v2执行Kubernetes 滚动更新;但是,我做不到。
当我helm upgrade
对慢速 Tomcat 映像执行 a 时,原始 pod 被破坏。
我想弄清楚如何通过使用新实例增量更新 Pods 实例并耗尽旧实例来实现零停机时间。
为了演示,我创建了一个示例慢速 Tomcat Docker 映像和一个Helm 图表。
安装:
您可以通过运行来跟踪日志kubectl logs -f slowtom-sf-0
,一旦准备好您就可以访问应用程序http://localhost:30901
升级:
(这就是我需要帮助的地方)
除了标签版本号之外,它与部署文件upgrade.yaml
相同。initial.yaml
在这里,原来的 pod 被破坏了,新的 pod 开始了。同时,用户无法访问应用程序http://localhost:30901
删除:
参考
本地头盔图
下载舵图:
从本地 helm-chart 安装:
从本地 helm-chart 升级:
码头工人形象
Dockerfile
Helm 图表内容
slowtom/Chart.yaml
slowtom/values.yaml
slowtom/environments/initial.yaml
slowtom/environments/upgrade.yaml
slowtom/templates/deployment.yaml
slowtom/templates/service.yaml
kubernetes-helm - 使用 Helmfile 模板化值文件并得到“tpl 函数执行期间的错误”
我helmfile
用来安装我的 Helm 图表和其他依赖关系图表。我想在值文件中使用模板化值。
从这个已解决的问题来看,似乎支持值文件中的模板化。但是,我使用以下文件进行了测试
helmfile.yaml
:
values.yaml
:
如果我跑步helmfile template
,我会得到
如果我内联值,它可以工作
kubernetes - Helm,有没有办法将 kubernetes 标签添加到 values.yaml(不使用模板和 _helpers.tpl)
因此,如标题所示,我想为我已经运行的应用程序的 helm 添加标签(来自官方 helm 图表的 sonarqube 和 jenkins)。我没有模板,只有 values.yaml。我害怕添加模板,因为正如我所说,应用程序已经在运行,我只想在元数据中添加一些标签。
kubernetes - 如何为领事公开入口
我正在尝试将领事入口添加到我的项目中,并且我正在使用这个 GitHub 存储库作为 ui 和入口的文档:在这里,不幸的是,你可以看到文档中没有入口,有一个 ingressGateways 没用因为不会在 Kubernetes 内部创建入口(它可以将 URL 暴露给外部)
我搜索了很多,有两种可能的选择:
1:为入口创建额外的部署
2:创建consul helm chart添加ingress deploy
(不幸的是,我在互联网上找不到合适的解决方案)
helmfile - 如何在 Helm 值文件中引用其他环境变量?
我有一个 Helm 值,其内容如下:
我想引用另一个名为 $POSTGRES_DB_NAME 的变量并输入该 PACT_BROKER_DATABASE_NAME。当前值不起作用。如何将一个值提供给另一个变量?
kubernetes - 有条件地在图表中包含 helmfile
我们使用 helm 图表部署到 Kubernetes 并使用 helm 生成这些图表。不幸的是,我不熟悉 helm 或 helm 模板(并且只对 kubernetes 有一定的了解)所以在问下面的问题时我可能使用了不正确的术语(实际上我可能已经在本段中做过)所以请耐心等待我得到加快速度。
我有一个 helm 模板 foo.yaml,它类似于以下内容:
如您所见,它定义了一个创建一些环境变量的脚本。我正在研究仅在某些条件为真时创建那些变量的要求(.Values.global_vars.baz == 1
)
我想我可以通过执行以下操作来实现这一点:
但这感觉不是一种非常优雅的方式。我可以将条件表达式放入data
仅包含满足条件的脚本中。像这样的东西:
希望这是有道理的。这实际上是我第一次去掌舵,所以我正在寻找一些菜鸟指导。
kubernetes - Helm,Promethus:在 ec2 实例上安装带有数据/默认目录的 prometheus
我正在 Kubernetes 环境中研究 prometheus,我想在其中监控我们的 pod,这些 pod 正准备将指标直接发送到 prometheus。我可以通过 helm install stable/prometheus 命令安装 prometheus,但 prometheus.yml 抓取文件位于 pod 内,并且在 pod 重新启动时也不会持久。
由于我们仍在试验中,抓取文件将经过一些迭代,然后我们才能确定这个文件对我们有用。我坚持使用 helm 的原因是它还安装了其他软件包,如 grafana、nodeexpoerter 等,这些软件包很有帮助
如何指示 helm 使用 AWS 上存在的特定数据目录。假设 /var/prometheus。如果这不可能,那么至少一个自定义的 prometheus.yml,在服务器端更新时可以反映在 prometheus pod 中。
到目前为止,至少,我想补充
kubernetes-helm - helm 失败并创建失败:秘密“sh.helm.release.v1.(release-name).v1”无效:数据:太长:最多必须有 1048576 个字符
我正在尝试使用以下命令安装 helm 版本
未打包的图表以展开形式保存。
这失败并出现以下错误,它基本上试图存储发布信息
如何去调试这个问题?
如果我尝试生成图表模板并执行 kubectl create 它安装得很好.ie
尝试通过 helm 安装并尝试创建 helm-secret 时会出现问题
我该如何解决这个问题?
我正在使用掌舵版本