Невозможно получить aws-iam-authenticator в config-map при применении через AWS CodeBuild - PullRequest
0 голосов
/ 14 мая 2019

Я создаю CICD-конвейер, использующий AWS CodeBuild для создания и развертывания приложения (службы) в кластере aws eks. Я правильно установил kubectl и aws-iam-authenticator, получение aws вместо aws-iam-authenticator в команде

kind: Config 
preferences: {} 
users: 
- name: arn:aws:eks:ap-south-1:*******:cluster/DevCluster 
user: 
exec: 
apiVersion: client.authentication.k8s.io/v1alpha1 
args: 
- eks 
- get-token 
- --cluster-name 
- DevCluster 

команда: aws

env: null

[Контейнер] 2019/05/14 04:32:09 Выполнение команды kubectl get svc ошибка: на сервере нет типа ресурса "svc"

Я не хочу редактировать configmap вручную, потому что он идет по конвейеру.

Ответы [ 2 ]

1 голос
/ 06 июня 2019

Как сказал @Priya Rani в комментариях, он нашел решение.

Нет проблем с файлом конфигурации. Все нормально.

1) Мне нужно сделать Cloudformation (cluster + nodeinstance) доверенную роль для связи с Codebuild путем редактирования доверенной роли.

2) Необходимо добавить раздел usedata для связи экземпляра узла с кластерами.

0 голосов
/ 14 мая 2019

Почему вы просто не загружаете правильный / выделенный файл конфигурации kube, устанавливая переменную KUBECONFIG env внутри вашего CICD-конвейера, например:

export KUBECONFIG=$KUBECONFIG:~/.kube/config-devel

, которая будет включать правильную команду для использования с aws-iam-authenticator :

#
#config-devel
#
...
kind: Config
preferences: {}
users:
- name: aws
  user:
    exec:
      apiVersion: client.authentication.k8s.io/v1alpha1
      command: aws-iam-authenticator
      args:
        - "token"
        - "-i"
        - "<cluster-name>"
...