我在我的 StatefulSet 中定义了一个可选的秘密卷,例如
- name: my-secret-volume
secret:
secretName: my-secret
optional: true
此外,我将它安装在我的容器中。当我配置 pod 时,秘密还不存在。
稍后,在集群上安装了另一个服务,它会创建my-secret
. 有什么方法可以将该秘密安装在我最初标记为可选的 pod 中,而无需重新启动 pod?
我在我的 StatefulSet 中定义了一个可选的秘密卷,例如
- name: my-secret-volume
secret:
secretName: my-secret
optional: true
此外,我将它安装在我的容器中。当我配置 pod 时,秘密还不存在。
稍后,在集群上安装了另一个服务,它会创建my-secret
. 有什么方法可以将该秘密安装在我最初标记为可选的 pod 中,而无需重新启动 pod?
显然,挂载的秘密会自动更新。来自https://kubernetes.io/docs/concepts/configuration/secret/#using-secrets:
当卷中已经使用的秘密被更新时,预计的密钥最终也会被更新。Kubelet 会在每次定期同步时检查挂载的密钥是否是新的。
我已经手动对其进行了测试,定义my-secret
并最终(在一分钟内)出现在安装路径中,该路径以前是空的(在我创建之前my-secret
)。