我有一个kubernetes部署,它使用秘密的环境变量。因此,pod包含使用秘密的env变量。
现在,我更新了部署清单json和秘密json,以删除一些变量,但是当我应用这些文件时,会收到 CreateContainerConfigError ,并在其说明中看到:< / p>
在Secret mynamespace / secret-mypod中找不到密钥FOO
我已经从我的秘密json和部署清单json中删除了此密钥。为什么我仍然收到此错误?
我知道我可以删除部署并应用它以使其正常工作,但是我不想这样做。
处理这种情况的正确方法是什么?
答案 0 :(得分:1)
我会在部署json上执行replace
。如果原始部署具有常规更新设置,则将使用新的部署配置创建一个新的容器。如果一切正常,旧的将被删除。
为了安全起见,您可以在名称中创建带有某些版本指示符的新密钥,并在新的部署定义中引用新的密钥名称。这样,如果新吊舱有问题或需要重新部署旧吊舱,旧的秘密仍然存在。