기존 aws-auth ConfigMap 항목을 액세스 항목으로 마이그레이션 - Amazon EKS

이 페이지 개선에 도움 주기

이 사용자 가이드에 기여하려면 모든 페이지의 오른쪽 창에 있는 GitHub에서 이 페이지 편집 링크를 선택합니다.

기존 aws-auth ConfigMap 항목을 액세스 항목으로 마이그레이션

클러스터의 aws-auth ConfigMap에 항목을 추가한 경우 aws-auth ConfigMap의 기존 항목에 대한 액세스 항목을 생성하는 것이 좋습니다. 액세스 항목을 생성한 후 해당 항목을 ConfigMap에서 제거할 수 있습니다. 액세스 정책aws-auth ConfigMap의 항목에 연결할 수 없습니다. 액세스 정책을 IAM 보안 주체에 연결하려면 액세스 항목을 생성합니다.

중요
  • 클러스터가 API_AND_CONFIGMAP 인증 모드에 있고 aws-auth ConfigMap과 액세스 항목 모두에 동일한 IAM 역할에 대한 매핑이 있는 경우 역할은 인증을 위해 액세스 항목의 매핑을 사용합니다. 액세스 항목은 동일한 IAM 위탁자의 ConfigMap 항목보다 우선합니다.

  • 클러스터에 대한 관리형 노드 그룹이나 Fargate 프로필을 위해 Amazon EKS에서 생성한 기존 aws-auth ConfigMap 구성 맵 항목을 제거하기 전에 해당 특정 리소스에 대한 올바른 액세스 항목이 Amazon EKS 클러스터에 존재하는지 다시 확인하세요. 동등한 액세스 항목 없이 Amazon EKS가 ConfigMap에서 생성한 항목을 제거하면 클러스터가 제대로 작동하지 않습니다.

사전 조건

eksctl

  1. aws-auth ConfigMap에서 기존 항목을 봅니다. my-cluster를 해당 클러스터의 이름으로 바꿉니다.

    eksctl get iamidentitymapping --cluster my-cluster

    예제 출력은 다음과 같습니다.

    ARN                                                                                             USERNAME                                GROUPS                                                  ACCOUNT
    arn:aws:iam::111122223333:role/EKS-my-cluster-Admins                                            Admins                                  system:masters
    arn:aws:iam::111122223333:role/EKS-my-cluster-my-namespace-Viewers                              my-namespace-Viewers                    Viewers
    arn:aws:iam::111122223333:role/EKS-my-cluster-self-managed-ng-1                                 system:node:{{EC2PrivateDNSName}}       system:bootstrappers,system:nodes
    arn:aws:iam::111122223333:user/my-user                                                          my-user
    arn:aws:iam::111122223333:role/EKS-my-cluster-fargateprofile1                                   system:node:{{SessionName}}             system:bootstrappers,system:nodes,system:node-proxier
    arn:aws:iam::111122223333:role/EKS-my-cluster-managed-ng                                        system:node:{{EC2PrivateDNSName}}       system:bootstrappers,system:nodes
  2. 생성 후 이전 출력에서 반환된 모든 ConfigMap 항목에 대해 액세스 항목 생성합니다. 액세스 항목을 생성하는 경우 출력에서 반환된 ARN, USERNAME, GROUPSACCOUNT에 대해 동일한 값을 지정해야 합니다. 예제 출력에서는 Amazon EKS가 Fargate 프로필 및 관리형 노드 그룹에 대한 액세스 항목을 생성했기 때문에 마지막 두 항목을 제외한 모든 항목에 대한 액세스 항목을 생성합니다.

  3. 생성한 모든 액세스 항목에 대한 항목을 ConfigMap에서 삭제합니다. ConfigMap에서 항목을 삭제하지 않으면 IAM 보안 주체 ARN의 액세스 항목 설정이 ConfigMap 항목보다 우선합니다. 111122223333을 사용자 AWS 계정 ID로, EKS-my-cluster-my-namespace-ViewersConfigMap 항목의 역할 이름으로 바꿉니다. IAM 역할이 아닌 IAM 사용자에 대한 항목을 제거하는 경우 roleuser로, EKS-my-cluster-my-namespace-Viewers를 사용자 이름으로 바꿉니다.

    eksctl delete iamidentitymapping --arn arn:aws:iam::111122223333:role/EKS-my-cluster-my-namespace-Viewers --cluster my-cluster