use*_*321 4 config docker kubernetes kubernetes-helm
我正在使用头盔图来部署使用管理配置的"ConfigMap"的pod.
我直接编辑ConfigMap以更改配置文件,然后使用kubectl delete删除pod,以使新配置生效.
有没有简单的方法使用helm用新配置替换正在运行的pod而不执行" kubectl delete "命令
Oli*_*der 17
我们发现using --recreate-pods会立即终止该部署的所有正在运行的pod,这意味着您的服务会有一些停机时间.换句话说,您的广告连播不会滚动更新.
在Helm中解决这个问题的问题仍然存在:https://github.com/kubernetes/helm/issues/1702
相反,helm建议将配置文件的校验和添加到注释中的部署中.这样,部署将具有不同的散列,并且基本上看起来是"新的",导致它正确更新.
sha256sum函数可用于确保在另一个文件更改时更新部署的注释部分:
kind: Deployment
spec:
template:
metadata:
annotations:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
[...]
Run Code Online (Sandbox Code Playgroud)
来自这里的文档:https://github.com/kubernetes/helm/blob/master/docs/charts_tips_and_tricks.md#automatically-roll-deployments-when-configmaps-or-secrets-change
你可以运行
头盔升级--recreate-pods
去做这个。
| 归档时间: |
|
| 查看次数: |
10995 次 |
| 最近记录: |