이 페이지에서는 AWS IAM 인스턴스 프로필의 정의, AWS용 GKE에서 중요한 이유, 인스턴스 프로필을 업데이트하는 방법을 설명합니다.
AWS IAM 인스턴스 프로필은 무엇인가요?
인스턴스 프로필은 AWS와 관련된 개념입니다. Amazon EC2 인스턴스가 다양한 AWS 리소스에 액세스하기 위해 사용하는 일련의 사용자 인증 정보입니다. 보다 구체적으로, 인스턴스 프로필은 EC2 인스턴스에 연결할 수 있는 IAM 역할에 대한 일종의 컨테이너입니다. 인스턴스 프로필은 EC2 인스턴스에 대한 권한을 부여하여 인스턴스가 정의된 권한 하에서 다양한 AWS 서비스와 상호작용할 수 있게 합니다. 자세한 내용은 인스턴스 프로필 사용을 참조하세요.
AWS용 GKE에서 인스턴스 프로필이 어떻게 사용되나요?
AWS용 GKE 클러스터에서 각 제어 영역과 각 노드 풀은 고유한 AWS 인스턴스 프로필과 연결됩니다. AWS용 GKE의 인스턴스 프로필은 두 가지 목적을 제공합니다.
- 인스턴스 프로필은 AWS용 GKE에 AWS 리소스 관리에 필요한 권한을 부여합니다. 예를 들어 워크로드 수요에 따라 EC2 인스턴스를 추가하거나 삭제하여 클러스터를 확장하는 데 필요한 권한을 클러스터 자동 확장 처리에 부여합니다.
- 인스턴스 프로필은 EC2 인스턴스에 Google Cloud 서비스에 대한 액세스 권한을 부여합니다.
예를 들어 AWS 머신에서 실행되는
kubelet
은containerd
에 이미지 가져오기 사용자 인증 정보를 제공하기 위해 특정 권한이 필요합니다. 이러한 사용자 인증 정보는 Google 비공개 Artifact Registry 또는 Container Registry에서 이미지를 액세스하고 가져오기 위해 필요합니다. AWS용 GKE에서 클러스터와 연결된 EC2 인스턴스 프로필은 Google의 머신 서비스 에이전트(예: 노드 풀 머신 서비스 에이전트 또는 제어 영역 머신 서비스 에이전트)를 가장하도록 구성됩니다. 이러한 가장을 통해 클러스터의 EC2 인스턴스가 Google Artifact Registry 또는 Container Registry에 자동으로 인증을 수행할 수 있습니다.
인스턴스 프로필 업데이트
인스턴스 프로필을 업데이트하면 특정 권한을 사용해서 AWS에서 새 인스턴스 프로필을 만들고 이를 AWS용 GKE 클러스터 또는 노드 풀에 연결합니다.
클러스터 또는 노드 풀의 인스턴스 프로필을 올바르게 업데이트하려면 다음 단계를 수행합니다.
- Amazon EC2 인스턴스에 대해 IAM 인스턴스 프로필을 만들고 필요한 IAM 역할을 인스턴스 프로필에 추가합니다. 자세한 내용은 인스턴스 프로필 사용을 참조하세요.
Google Cloud CLI에서 다음 명령어를 실행하여 AWS용 GKE 클러스터 또는 노드 풀에 새 인스턴스 프로필을 연결합니다.
클러스터에 프로필 연결
gcloud container aws clusters update CLUSTER_NAME \ --update-instance-profile \ --instance-profile-name NEW_INSTANCE_PROFILE_NAME \ ...
다음을 바꿉니다.
CLUSTER_NAME
: 클러스터 이름입니다.NEW_INSTANCE_PROFILE_NAME
: 사용자가 만든 새 AWS 인스턴스 프로필의 이름입니다.
노드 풀에 프로필 연결
gcloud container aws node-pools update NODE_POOL_NAME \ --update-instance-profile \ --instance-profile-name NEW_INSTANCE_PROFILE_NAME \ ...
다음을 바꿉니다.
NODE_POOL_NAME
: 노드 풀의 이름입니다.NEW_INSTANCE_PROFILE_NAME
: 사용자가 만든 새 AWS 인스턴스 프로필의 이름입니다.
이 명령어는 인스턴스 프로필 업데이트와 관련된 플래그만 표시하지만
update
명령어를 실행하기 위해 추가 플래그를 제공해야 합니다. 자세한 내용은 AWS 클러스터 매개변수 업데이트 또는 노드 풀 업데이트를 참조하세요.
잘못된 업데이트 방법
클러스터 오류를 일으키기 쉽기 때문에 인스턴스 프로필을 잘못 업데이트하는 방법을 이해하는 것이 중요합니다.
인스턴스 프로필을 업데이트하는 잘못된 방법은 AWS 관리 콘솔 또는 AWS CLI를 사용해서 기존 인스턴스 프로필을 직접 수정하는 것입니다. 이러한 변경사항은 AWS 리소스와 AWS용 GKE의 상호작용을 중단시킬 수 있습니다. AWS용 GKE는 인스턴스 프로필이 처음 클러스터 또는 노드 풀에 연결되었을 때와 동일하게 유지될 것으로 예상합니다. AWS용 GKE 관리 도구 외부에서 이를 변경하면 인스턴스 프로필에 있는 IAM 역할의 ID와 불일치가 발생할 수 있습니다. 이러한 불일치로 인해 클러스터 오류가 발생할 수 있습니다.
이전 섹션에 설명된 방식을 사용하면 AWS용 GKE와 AWS의 통합을 중단하지 않으면서 업데이트를 수행할 수 있습니다.