У меня есть 2 учетных записи Gmail, каждая из которых связана с 2 отдельными учетными записями GCP. Чтобы переключать учетные записи из командной строки, я использовал обе эти команды в течение последних 2 недель или около того:
$ 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 все еще пытается получить доступ к GKE с учетной записью электронной почты из контекста A (не контекста B).
Есть мысли?