Я настраиваю кластер AWS EKS, используя terraform из экземпляра EC2.В основном, настройка включает запуск конфигурации EC2 и автоматическое масштабирование для рабочих узлов.После создания кластера я могу настроить kubectl с помощью aws-iam-authenticator.Когда я сделал
kubectl get nodes
Он вернул
Ресурсы не найдены
, поскольку рабочие узлы не были объединены.Поэтому я попытался обновить aws-auth-cm.yaml
файл
apiVersion: v1
kind: ConfigMap
metadata:
name: aws-auth
namespace: kube-system
data:
mapRoles: |
- rolearn: <ARN of instance role (not instance profile)>
username: system:node:{{EC2PrivateDNSName}}
groups:
- system:bootstrappers
- system:nodes
с ролью IAM ARN рабочего узла.И сделал
kubectl apply -f aws-auth-cm.yaml
Возвращено
Создан ConfigMap / aws-auth
Затем я понял, что роль ARN, настроенная в aws-auth-cm.yaml
, являетсянеправильный.Поэтому я обновил тот же файл с точной ролью рабочего узла ARN.
Но на этот раз я получил 403, когда я снова сделал kubectl apply -f aws-auth-cm.yaml
.
Он вернул
Ошибка с сервера (запрещено): ошибка при получении текущей конфигурации: Resource: "/ v1, Resource = configmaps", GroupVersionKind: "/ v1, Kind = ConfigMap" Name: "aws-auth", Пространство имен: "kube-system"Object: & {map [" apiVersion ":" v1 "" data ": map [" mapRoles ":" - rolearn: arn: aws: iam :: XXXXXXXXX: роль / работник-роль-роли \ n имя пользователя: система:узел: {{EC2PrivateDNSName}} \ n группы: \ n - система: начальные загрузчики \ n - система: узлы \ n "]" kind ":" ConfigMap "" metadata ": map [" name ":" aws-auth ""пространство имен ":" kube-system "" annotations ": map [" kubectl.kubernetes.io/last-applied-configuration ":" "]]]} с сервера для:" / home / username / aws-auth-cm.yaml ": configmaps" aws-auth "запрещено: пользователь" system: node: ip-XXX-XX-XX-XX.ec2.internal "не может получить ресурс" configmaps "в группе API" "в пространстве имен" kube-system"
Я не могу перенастроитьConfigMap после этого шага.
Я получаю 403 для таких команд, как
kubectl apply
kubectl delete
kubectl edit
для configmaps.Любая помощь?