我有服务帐户名:myservice
$ kubectl get serviceaccount
NAME SECRETS AGE
default 1 15d
myservice 1 15d
$ kubectl get serviceaccount myservice -o yaml
apiVersion: v1
kind: ServiceAccount
metadata:
creationTimestamp: 2018-06-13T12:41:18Z
name: myservice
namespace: default
...
我想将服务的 namespace
default
更改为development
。我尝试使用以下方法进行编辑:
kubectl edit serviceaccount myservice
保存后,我收到:
A copy of your changes has been stored to "/tmp/kubectl-edit-gjae6.yaml"
error: the namespace from the provided object "development" does not match the namespace "default". You must pass '--namespace=development' to perform this operation.
因此,我尝试像他们写的那样仍然无法正常工作:
$ kubectl edit serviceaccount myservice --namespace=development
Error from server (NotFound): serviceaccounts "myservice" not found
命名空间
development
存在,服务myservice
也存在。 最佳答案
似乎您应该在开发NS中创建新的myservice SA,而不是修改默认 namespace 中的现有SA。在开发NS中创建新的myservice,然后在默认NS中删除一个。该错误甚至在开发NS中也导致不存在的myservice。
关于service - 如何编辑Kubernetes ServiceAccount的命名空间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51087230/