@onami

Как вернуть доступ к kubectl, потерянный из-за некорректного aws configmap?

Предыстория проблемы: в консоли AWS увидел, что под моей админской (не root) по какой-то причине перестали отображаться ноды нашего кластера. Согласно справочной статье нужно было отредактировать configmap.

Я отредактировал configmap следующим образом:
apiVersion: v1
data:
  mapRoles:  <default options>
  mapUsers: |
    - userarn: arn:aws:iam::<root id>:root
    username: #здесь оставил значение пустым
      groups:
      - system:bootstrappers
      - system:nodes


Кончилось, что на все команды kubectl отвечает ошибкой такого рода: Error from server (Forbidden): configmaps "aws-auth" is forbidden: User "" cannot get resource "configmaps" in API group "" in the namespace "kube-system"

Насколько я понимаю, я "понизил" в правах root-пользователя, установив ему группу system:nodes, system:bootstrappers и теперь он не в группе system:masters

На стековерфлоу есть пара подобных вопросов: там пишут, что учетка, из под которой изначально создавали кластер, все равно имеет доступ к его управлению. Но я не понимаю, как всё-таки вернуть доступ. Я воспроизвел эту же ошибку в новом кластере, созданном для этой цели: даже если у меня root, всё равно kubectl не дает выполнять команды.

Обновление #1
Попробовал использовать токен serviceAccount, полученный из файла /var/run/secrets/kubernetes.io/serviceaccount/token в одном из контейнеров.

Команда get nodes заработала, однако отредактировать configmap я не могу

$ kubectl --token=<...> edit configmap aws-auth -n kube-system

Error from server (Forbidden): configmaps "aws-auth" is forbidden: User "system:serviceaccount:kube-system:aws-node" cannot get resource "configmaps" in API group "" in the namespace "kube-system"
  • Вопрос задан
  • 66 просмотров
Пригласить эксперта
Ответы на вопрос 1
@vitaly_il1
DevOps Consulting
учетка, из под которой изначально создавали кластер, все равно имеет доступ к его управлению.

Насколько помню, это действительно так.

даже если у меня root

Речь об учетке AWS
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы