我有两个Gmail账户,每个账户都关联着2个独立的GCP账户。为了在命令行中切换账户,我过去两周一直在使用以下两个命令:
$ gcloud config configurations activate ACCT_NAME
$ kubectl config set-context CONTEXT
注意:我也一直在使用'kubectx',它使切换上下文比使用'kubectl config set-context'更容易一些;基本上打字少了一点。 'kubectl config set-context'和'kubect'以前都可以使用(我想)。
直到今天早上似乎这种方法一直都很好用。 我试图从上下文A切换到上下文B,但现在我遇到了像这样的错误:
$ kubectl get pods -A
Error from server (Forbidden): pods is forbidden: User "<my_email_address>" cannot list resource "pods" in API group "" at the cluster scope: Required "container.pods.list" permission.
显示的电子邮件地址是上下文A的,而不是上下文B的。 我检查了以下命令以验证当前(或活动)上下文和电子邮件帐户是否正确:$ kubectl config current-context
$ gcloud config configurations list
目前的上下文,账户和相关电子邮件地址都是正确的。我不清楚为什么 kubectl 仍然尝试使用上下文 A 的电子邮件帐户访问 GKE(而不是上下文 B)。
您有什么想法吗?