Кластер Google Cloud Kubernetes не может подключиться к узлам или удалить?

Я использую облачную службу Kubernetes Google, она работала, пока случайно не удалил учетную запись службы учетной записи службы Kubernetes. Я создал учетную запись службы kubernetes. Я не могу подключиться к узлам, удалить или удалить свой кластер. Кажется, это проблема с разрешением. Также нельзя удалить компьютерные движки. Когда я удаляю кластер Kubernetes после ошибки

(1) Google Compute Engine: требуется разрешение compute.firewalls.delete для проектов / projectid / global / firewalls / gke-kubeworld-383ec9cd-vms.

(2) Google Compute Engine: требуется разрешение 'compute.firewalls.delete' для 'projects / projectid / global / firewalls / gke-kubeworld-383ec9cd-ssh'

(3) Google Compute Engine: требуется разрешение 'compute.firewalls.delete' для 'projects / projectid / global / firewalls / gke-kubeworld-383ec9cd-all'.

(4) Google Compute Engine: требуется разрешение «compute.instanceGroupManagers.delete» для «projects / projectid / zone / us-central1-a / instanceGroupManagers / gke-kubeworld-default-pool-90dd280e-grp».

(5.1) Google Compute Engine: требуется разрешение "compute.routes.list" для "projects / projectid"

(5.2) Google Compute Engine: требуется разрешение «compute.projects.get» для «projects / projectid».

как настроить или предоставить доступ, чтобы разрешить эти разрешения.


person Fahad Abid    schedule 14.05.2018    source источник


Ответы (2)


Эти ошибки также зависят от общей ситуации в проекте. Учетная запись службы Compute Engine управляет множеством служб, поэтому при ее удалении ошибки бывают разных видов.

Когда я удаляю SA, я всегда делаю то же самое, что и первый шаг. Вместо того, чтобы создавать сервисный аккаунт вручную, я включаю API, которому требуется Compute Engine API, например Dataproc API. Это должно воссоздать сервисную учетную запись Compute Engine, и в этом случае, если это актуально, также повторно создать сервисную учетную запись Kubernetes Engine.

После повторного создания этих учетных записей у вас должны быть другие ошибки, так как теперь SA существует, но, вероятно, токен / учетные данные, которые ожидает кластер, являются старыми, но теперь вы передаете новый токен.

Можете ли вы подтвердить, что при этом вы получаете те же ошибки или другие? Я отредактирую сообщение, как только получу эту информацию.

person suren    schedule 14.05.2018

Ваша служебная учетная запись потеряла роли после того, как вы ее создали заново.

Сначала используйте gcloud auth login и войдите в учетную запись GCE.

После создания новой учетной записи службы ей необходимо назначить роль.

В этом случае роль "role / compute.admin" отсутствует, и ее необходимо переназначить. Я предполагаю, что вы знаете имя созданной вами учетной записи службы.

Это может помочь:

gcloud projects add-iam-policy-binding  project-id \
    --member serviceAccount:[email protected] \
    --role  roles/compute.admin

Это описано в документации по ролям AIM.

EDITED: я обнаружил, что это еще один способ исправить это:

gcloud service-management enable container.googleapis.com
person d0bry    schedule 14.05.2018
comment
Вы имеете в виду gcloud services enable container.googleapis.com? - person Jumpei Ogawa; 01.06.2018