이 페이지 개선에 도움 주기
이 사용자 가이드에 기여하려면 모든 페이지의 오른쪽 창에 있는 GitHub에서 이 페이지 편집 링크를 선택합니다.
eksctl을 사용하여 kro 기능 생성
eksctl을 사용하여 Amazon EKS 클러스터에서 kro 기능을 생성합니다.
참고
다음 단계에서는 eksctl 버전 0.215.0 이상이 필요합니다. 버전을 확인하려면 eksctl version을 실행합니다.
1단계: IAM 기능 역할 생성
신뢰 정책 파일을 생성합니다.
cat > kro-trust-policy.json << 'EOF' { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "capabilities.eks.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession" ] } ] } EOF
IAM 역할을 생성합니다.
aws iam create-role \ --role-name KROCapabilityRole \ --assume-role-policy-document file://kro-trust-policy.json
참고
ACK 및 Argo CD와 달리 kro에는 신뢰 정책 이외의 추가 IAM 권한이 필요하지 않습니다. kro는 전적으로 클러스터 내에서 작동하며 AWS API 직접 호출을 수행하지 않습니다.
2단계: kro 기능 생성
eksctl을 사용하여 kro 기능을 생성합니다. region-code를 클러스터를 생성한 AWS 리전으로 바꾸고 my-cluster를 클러스터 이름으로 바꿉니다.
eksctl create capability \ --regionregion-code\ --clustermy-cluster\ --name my-kro \ --type KRO \ --role-arnarn:aws:iam::111122223333:role/KROCapabilityRole
명령은 즉시 반환되지만 기능이 활성 상태가 되려면 다소 시간이 걸립니다.
3단계: 기능이 활성 상태인지 확인
기능 상태를 확인합니다. region-code를 클러스터를 생성한 AWS 리전으로 바꾸고 my-cluster를 클러스터 이름으로 바꿉니다.
eksctl get capability \ --regionregion-code\ --clustermy-cluster\ --name my-kro
상태가 ACTIVE로 표시되면 기능이 준비된 것입니다.
4단계: Kubernetes 리소스를 관리할 권한 부여
기본적으로 kro는 ResourceGraphDefinitions 및 해당 인스턴스만 생성하고 관리할 수 있습니다. kro가 ResourceGraphDefinitions에 정의된 기본 Kubernetes 리소스를 생성하고 관리할 수 있도록 하려면 AmazonEKSClusterAdminPolicy 액세스 정책을 기능의 액세스 항목에 연결합니다.
기능 역할 ARN을 가져옵니다.
CAPABILITY_ROLE_ARN=$(aws eks describe-capability \ --regionregion-code\ --clustermy-cluster\ --name my-kro \ --query 'capability.roleArn' \ --output text)
클러스터 관리 정책을 연결합니다.
aws eks associate-access-policy \ --regionregion-code\ --clustermy-cluster\ --principal-arn $CAPABILITY_ROLE_ARN \ --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy \ --access-scope type=cluster
중요
AmazonEKSClusterAdminPolicy는 모든 Kubernetes 리소스를 생성하고 관리할 수 있는 광범위한 권한을 부여하며 시작을 간소화하기 위해 제공됩니다. 프로덕션 사용 시 ResourceGraphDefinitions에서 관리할 특정 리소스에 필요한 권한만 부여하는 보다 제한적인 RBAC 정책을 생성합니다. 최소 권한 구성에 대한 지침은 kro 권한 구성 및 EKS 기능에 대한 보안 고려 사항 섹션을 참조하세요.
5단계: 사용자 지정 리소스를 사용할 수 있는지 확인
기능이 활성 상태가 되면 클러스터에서 kro 사용자 지정 리소스를 사용할 수 있는지 확인합니다.
kubectl api-resources | grep kro.run
ResourceGraphDefinition 리소스 유형이 나열됩니다.