Kustomize/Helm 常见写法
Kustomize/Helm 常见写法
Helm: annotations: {checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}}
Kustomize: configMapGenerator 的 nameHash/behavior 生成内容哈希后缀手工版
手工版
HASH=$(kubectl get cm app-config -o yaml | sha256sum | cut -c1-16)
printf '{"spec":{"template":{"metadata":{"annotations":{"checksum/config":"%s"}}}}}' "$HASH" > /tmp/patch.json
kubectl patch deploy web --patch-file /tmp/patch.json
kubectl rollout status deploy/web原理:注解位于 Pod 模板 → 模板哈希变化 → 自动滚动;应用侧无需理解 ConfigMap 更新语义。