Доступ к Kubernetes в IBM Cloud
У меня был друг, предоставивший мне доступ к его кластеру кубов (размещенному в IBM Cloud).
Я могу войти через консоль IBM Cloud
Однако, когда я пытаюсь получить к ним доступ через узлы kubectl: kubectl get
приводит к сообщению об ошибке:
Ошибка сервера (Запрещено): узлы запрещены: Пользователь " https://iam.ng.bluemix.net/kubernetes" не может перечислить узлы в области действия кластера.
Почему доступ (RBAC) будет отличаться между консолью и CLI?
2 ответа
Я руководитель службы разработки IBM Kubernetes Service. Сначала вам нужно сгенерировать RBAC в кластере. Вы можете сделать это двумя способами.
- Перейдите на вкладку доступа в пользовательском интерфейсе и щелкните загрузить конфигурацию кластера.
- Или используйте cli и запустите
ibmcloud ks cluster-config xxxx
где xxxx - это идентификатор кластера.
Если имя пользователя в User "https://iam.ng.bluemix.net/kubernetes#"
имеет заглавные буквы, я бы предложил открыть тикет с IBM. В некоторых случаях внутренние пользователи имеют заглавные буквы в имени пользователя, что вызывает проблемы с аутентификацией.
Тем временем вы все еще должны иметь возможность использовать CLI.
Как указано в code, у вас может не быть достаточных привилегий, настроенных для вашего пользователя в RBAC. Возможно, у вас есть опечатка в конфигурации привязки роли кластера для этого пользователя.
В этом случае вы прошли этап аутентификации, но на этапе авторизации вы были заблокированы при попытке выполнить команду "get".