问题描述
我正在使用 kubernetes 及其资源,例如机密。在部署期间,已经创建了一个秘密(比如 test-secret),其中包含一些值。 现在我需要在同一个命名空间中重命名这个秘密(dev-secret)。 如何重命名机密或如何将 test-secret 值复制到 dev-secret。
请告诉我正确的方法。
解决方法
没有具体的方法可以做到这一点。 Kubernetes API 没有“重命名”作为操作。在这种特殊情况下,您需要kubectl get server test-secret -o yaml
,清除不再适用的 metadata:
部分,编辑名称,然后再次kubectl apply
。
扩展@coderanger 答案: 如果你还有秘密的配置 yaml 文件,你可以这样做
kubectl delete -f </path/to/secret-config-yaml>
更改 metadata.name
对象并发出
kubectl apply -f </path/to/secret-config-yaml>