AWS CLI로 ACK 캐퍼빌리티 생성

AWS CLI로 ACK 캐퍼빌리티 생성

AWS CLI를 사용해 Amazon EKS 클러스터에 ACK 캐퍼빌리티를 생성하는 방법을 설명합니다. 이 절차는 IAM 역할을 만들고 캐퍼빌리티가 활성 상태인지 확인하는 과정을 안내합니다.

출처: 문서

본문

사전 요구 사항

  • AWS CLI - 버전 2.12.3 이상. 버전을 확인하려면 aws --version을 실행하세요. 자세한 내용은 AWS Command Line Interface 사용자 가이드의 설치를 참고하세요.
  • kubectl - Kubernetes 클러스터 작업용 명령줄 도구. 자세한 내용은 Set up kubectl and eksctl을 참고하세요.

1단계: IAM 캐퍼빌리티 역할 생성

신뢰 정책 파일을 만듭니다.

cat > ack-trust-policy.json

중요

제안되는 AdministratorAccess 정책은 넓은 권한을 부여하며 시작을 간소화하기 위한 것입니다. 프로덕션에서는 이 정책을 ACK로 관리할 특정 AWS 서비스에 필요한 권한만 부여하는 커스텀 정책으로 교체하세요. 최소 권한 정책 생성에 대한 안내는 ACK 권한 구성과 EKS 캐퍼빌리티 보안 고려 사항을 참고하세요.

2단계: ACK 캐퍼빌리티 생성

클러스터에 ACK 캐퍼빌리티 리소스를 생성합니다. region-code를 클러스터가 있는 AWS 리전으로, my-cluster를 클러스터 이름으로 바꾸세요.

aws eks create-capability \
  --region region-code \
  --cluster-name my-cluster \
  --capability-name my-ack \
  --type ACK \
  --role-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):role/ACKCapabilityRole \
  --delete-propagation-policy RETAIN

명령은 즉시 반환되지만, EKS가 필요한 캐퍼빌리티 인프라와 구성 요소를 만드는 동안 캐퍼빌리티가 활성 상태가 되기까지 시간이 걸립니다. EKS는 생성 과정에서 이 캐퍼빌리티와 관련된 Kubernetes 커스텀 리소스 정의를 클러스터에 설치합니다.

참고

클러스터가 존재하지 않거나 권한이 없다는 오류가 발생하면 다음을 확인하세요.

  • 클러스터 이름이 올바른지
  • AWS CLI가 올바른 리전으로 구성되었는지
  • 필요한 IAM 권한이 있는지

3단계: 캐퍼빌리티 활성 확인

캐퍼빌리티가 활성화될 때까지 기다립니다. region-code를 클러스터가 있는 AWS 리전으로, my-cluster를 클러스터 이름으로 바꾸세요.

aws eks describe-capability \
  --region region-code \
  --cluster-name my-cluster \
  --capability-name my-ack \
  --query 'capability.status' \
  --output text

상태가 ACTIVE로 표시되면 캐퍼빌리티가 준비된 것입니다. 상태가 ACTIVE가 될 때까지 다음 단계로 진행하지 마세요.

전체 캐퍼빌리티 상세 정보도 확인할 수 있습니다.

aws eks describe-capability \
  --region region-code \
  --cluster-name my-cluster \
  --capability-name my-ack

4단계: 커스텀 리소스 사용 가능 확인

캐퍼빌리티가 활성화된 후, 클러스터에서 ACK 커스텀 리소스를 사용할 수 있는지 확인합니다.

kubectl api-resources | grep services.k8s.aws

AWS 리소스용 API가 여러 개 나열된 것을 확인할 수 있어야 합니다.

참고

AWS Controllers for Kubernetes용 캐퍼빌리티는 다양한 AWS 리소스용 CRD를 여러 개 설치합니다.

다음 단계

  • ACK 개념 - ACK 개념을 이해하고 시작하기
  • ACK 권한 구성 - 다른 AWS 서비스용 IAM 권한 구성
  • 캐퍼빌리티 리소스 다루기 - ACK 캐퍼빌리티 리소스 관리

더 알아보기 (Learn more)