Kubectl и несколько учетных записей AWS

#amazon-web-services #kubernetes #kubectl

Вопрос:

Я использую на AWS сервис EKS, и я использую kubectl для управления всей инфраструктурой kubernetes. У меня есть несколько профилей aws, и мне нужно переключаться между ними, когда это необходимо.

Как лучше всего переключиться с профиля aws на другой, чтобы вызвать одну и ту же команду kubectl, но в разных учетных записях aws?

Спасибо

Ответ №1:

В своем ~/.kube/config вы можете указать, какой профиль использовать.

Пример:

 users:
- name: arn:aws:eks:us-east-1:########:cluster/production
  user:
    exec:
      apiVersion: client.authentication.k8s.io/v1alpha1
      args:
      - --region
      - us-east-1
      env:
      - name: AWS_PROFILE
        value: <my-profile>
      command: aws

 

Если вам нужно изменить его, вы можете отредактировать файл.

Другой вариант, если вы хотите упростить изменение профилей, — это создать отдельные файлы конфигурации для каждого профиля. Затем, когда вы выполняете команду, вы можете установить KUBECONFIG значение: KUBECONFIG=~/.kube/config-alternate kubectl ... . Это также может быть изменено для удобства использования. Если и есть более простой способ, то я его не знаю.