我喜欢后缀为hashes的configMapGenerator,因为它强制重新部署使用特定配置的pod。但更改配置后的diff输出只是删除和创建,这并不理想。有没有一种方法可以让configMapGenerator用后缀hashes生成更智能的diff-config映射?
编辑:
例如,如果我有kustomization.yaml:
generatorOptions:
disableNameSuffixHash: false
configMapGenerator:
- name: nginx-conf
files:
- nginx.conf=config/nginx.conf
让我们假设
kubectl apply -k
第一次生成nginx-conf-aaaa
配置映射。编辑
config/nginx.conf
。假设
kubectl apply -k
将生成nginx-config-bbbb
。
在应用更改之前,是否有方法区分nginx-config-aaaa
和nginx-config-bbbb
?
您可以执行类似的操作
-
获取ConfigMap的当前版本并将其写入文件
current.yaml
kubectl get configmap nginx-conf-aaaa -o=yaml > ./current.yaml
-
进行更改后,在
new.yaml
中获取ConfigMap的新版本kubectl kustomize . > ./new.yaml
-
然后执行
git diff
git diff --no-index ./current.yaml ./new.yaml
如果您对差异感到满意,请继续应用更改。