관리 메뉴

피터의 개발이야기

[EKS] EKS cluster에서 kubernetes 리소스 보기, 필수권한추가 본문

AWS

[EKS] EKS cluster에서 kubernetes 리소스 보기, 필수권한추가

기록하는 백앤드개발자 2022. 10. 31. 23:20
반응형

 

 ㅁ 개요

 ㅇ AWS Console의 컴퓨팅(Compute) 탭에서 리소스(Resources) 탭 및 노드(Nodes) 섹션을 보려면 AWS Management Console에 로그인되어 있는 사용자 또는 로그인 후 전환하는 역할에는 특정 최소 IAM 및 Kubernetes 권한이 있어야 한다.

 ㅇ EKS 클러스터가 kubernetes 객체에 엑세스 할 수 있도록 권한을 설정하는 과정을 정리하였다.

 

 

ㅁ EKS cluster 권한 문제

 ㅇ EKS cluster 화면 상단에 현재 사용자 또는 역할이 이 EKS cluster에 있는 Kubernetes 객체에 액세스할 수 없습니다.라는 문구와 함께 안내를 볼 수 있는데, 자세히 알아보기를 클릭한다.

 

 

 

 

 

 

ㅁ IAM 문제 해결

  ㅇ 현재 사용자 또는 역할이 이 EKS cluster에 있는 Kubernetes 객체에 액세스할 수 없습니다.(Your current user or role does not have access to Kubernetes objects on this EKS cluster)라는 콘솔 오류 메시지가 나타날 수 있습니다. AWS Management Console에 로그인하는 데 사용한 IAM 사용자(또는 로그인 후 전환한 역할)에게 필요한 권한이 있는지 확인합니다. 자세한 정보를 알아보려면 필수 권한 섹션을 참조하세요.

 

 

 ㅁ IAM 필수 권한 체크

AWS Management Console의 컴퓨팅(Compute) 탭에서 리소스(Resources) 탭 및 노드(Nodes) 섹션을 보려면 AWS Management Console에 로그인되어 있는 사용자에게는 아래처럼 eks:AccessKubernetesApi 그리고 특정 최소 IAM 및 Kubernetes 권한이 있어야 한다. 111122223333은 계정 ID로 바꿔야 한다.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "eks:ListFargateProfiles",
                "eks:DescribeNodegroup",
                "eks:ListNodegroups",
                "eks:ListUpdates",
                "eks:AccessKubernetesApi",
                "eks:ListAddons",
                "eks:DescribeCluster",
                "eks:DescribeAddonVersions",
                "eks:ListClusters",
                "eks:ListIdentityProviderConfigs",
                "iam:ListRoles"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "ssm:GetParameter",
            "Resource": "arn:aws:ssm:*:111122223333:parameter/*"
        }
    ]
}

 

 

 ㅇ 현재 사용하고 있는 아이디의 권한은 ReadOnlyAccess정책을 따르고 있었다.

 ㅇ "eks:Describe*",  "eks:List*", "iam:List*"은 있었지만 "eks:AccessKubernetesApi"이 빠져 있는 상태이다.

 ㅇ 빠져있는 권한을 추가하면 kubernetes 리소스를 확인 할 수 있다.

 

 

ㅁ AdministratorAccess 권한 

 ㅇ 가장 간단한 방법은 현재 사용하고 있는 권한에 AdministratorAccess 정책을 추가하는 것이다.

 ㅇ 권한 추가를 클릭한다.

 

  ㅇ 기존 정책 직업 연결을 클릭 후 AdministratorAccess 검색하여 정책을 추가하면 된다.

 

 

 

ㅁ kubernetes 리소스 확인

 ㅇ 보이지 않았던 kubernetes의 리소스 정보를 AWS Console에서도 확인 할 수 있다.

 

 

ㅁ 함께 보면 좋은 사이트

 

Kubernetes 리소스 보기 - Amazon EKS

역할 ARN에는 role/my-team/developers/my-console-viewer-role과 같은 경로가 포함될 수 없습니다. ARN 형식은 arn:aws:iam::111122223333:role/my-console-viewer-role이어야 합니다. 이 예에서는 my-team/developers/를 제거해야 합

docs.aws.amazon.com

 ㅇ Kubernetes 리소스 보기

 

 

ㅁ 뒷처리

 ㅇ 테스트를 위해 생성한 EKS는 삭제처리함.

반응형
Comments