기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon ECS 컨테이너 인스턴스 IAM 역할
Amazon EC2와 외부 인스턴스를 포함한 Amazon ECS 컨테이너 인스턴스는 Amazon ECS 컨테이너 에이전트를 실행하며, 에이전트가 사용자에게 속한다는 것을 서비스에 알리기 위해 IAM 역할이 필요합니다. 컨테이너 인스턴스를 시작해 클러스터에 등록하기 전에 사용할 컨테이너 인스턴스의 IAM 역할을 생성해야 합니다. 역할은 콘솔에 로그인하거나 AWS CLI 명령을 실행하는 데 사용되는 계정에 생성됩니다.
중요
클러스터에 외부 인스턴스를 등록하는 경우 사용하는 IAM 역할에도 Systems Manager 권한이 필요합니다. 자세한 정보는 ECS Anywhere IAM 역할을 참조하세요.
Amazon ECS는 전체 Amazon ECS 기능 세트를 사용하는 데 필요한 권한이 포함된 AmazonEC2ContainerServiceforEC2Role
관리형 IAM 정책을 제공합니다. 이 관리형 정책은 IAM 연결에 연결하고, 컨테이너 인스턴스와 연결할 수 있습니다. 또는 사용할 사용자 지정 정책을 생성할 때 관리형 정책을 가이드로 사용할 수 있습니다. 컨테이너 인스턴스 역할은 Amazon ECS 컨테이너 에이전트 및 Docker 대몬이 사용자를 대신하여 AWS API를 호출하는 데 필요한 권한을 제공합니다. 관리형 정책에 대한 자세한 정보는 아마존 EC2 EC2 역할 ContainerServicefor 섹션을 참조하세요.
IAM 콘솔에서 컨테이너 인스턴스(ecsInstanceRole
) 확인
수동으로 역할을 생성하고 컨테이너 인스턴스에 대한 관리형 IAM 정책을 연결하여 Amazon ECS에서 향후 기능 및 개선 사항이 도입되면 이에 대한 권한을 추가할 수 있습니다. 다음 절차를 사용하여 사용자의 계정에 이미 Amazon ECS 인스턴스 IAM 역할이 있는지 확인하고 필요하다면 관리형 IAM 정책을 연결할 수 있습니다.
중요
AmazonEC2 ContainerServicefor EC2Role 관리형 정책을 컨테이너 인스턴스 IAM 역할에 연결해야 합니다. 그렇지 않으면 를 사용하여 클러스터를 생성하는 중 오류가 발생합니다. AWS Management Console
https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
탐색 창에서 역할(Roles)을 선택합니다.
-
검색 상자에
ecsInstanceRole
을(를) 입력합니다. 역할이 있는 경우 해당 역할을 선택하여 연결된 정책을 확인합니다. -
권한 탭에서 Amazon ContainerServicefor EC2 EC2Role이 역할에 연결되어 있는지 확인합니다.
-
권한 추가(Add Permissions), 정책 연결(Attach policies)을 선택합니다.
-
연결할 수 있는 정책의 범위를 좁히려면 필터에 Amazon EC2 EC2Role을 입력합니다. ContainerServicefor
-
Amazon EC2 ContainerServicefor EC2 역할 정책 왼쪽에 있는 확인란을 선택한 다음 정책 연결을 선택합니다.
-
-
신뢰 관계(Trust relationships)를 선택합니다.
-
신뢰 관계에 다음 정책이 포함되어 있는지 확인합니다. 신뢰 관계가 아래 정책과 일치하는 경우, 취소(Cancel)를 선택합니다. 신뢰 관계가 일치하지 않는 경우 신뢰 정책 편집(Edit trust policy)을 선택하고 정책을 정책 문서(Policy Document) 창에 복사하고 정책 업데이트(Update policy)를 선택합니다.
{ "Version": "2008-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
컨테이너 인스턴스(ecsInstanceRole
) 역할 생성
중요
클러스터에 외부 인스턴스를 등록하는 경우 ECS Anywhere IAM 역할 섹션을 참조하세요.
수동으로 역할을 생성하고 컨테이너 인스턴스에 대한 관리형 IAM 정책을 연결하여 Amazon ECS에서 향후 기능 및 개선 사항이 도입되면 이에 대한 권한을 추가할 수 있습니다. 다음 절차를 사용하여 사용자의 계정에 이미 Amazon ECS 인스턴스 IAM 역할이 있는지 확인하고 필요하다면 관리형 IAM 정책을 연결할 수 있습니다.
컨테이너 인스턴스의 ecsInstanceRole
IAM 역할을 생성하려면
https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
탐색 창에서 역할(Roles)을 선택한 후 역할 생성(Create role)을 선택합니다.
-
AWS서비스 역할 유형을 선택한 다음 다른 서비스의 사용 사례에서 Elastic Container AWS Service를 선택합니다.
-
Elastic Container Service에 대한 EC2 역할 사용 사례를 선택하고 다음: 권한(Next: Permissions)을 선택합니다.
-
권한 정책 섹션에서 AmazonEC2 ContainerServicefor EC2Role 정책이 선택되어 있는지 확인한 후 다음을 선택합니다.
중요
Amazon EC2 ContainerServicefor EC2Role 관리형 정책을 컨테이너 인스턴스 IAM 역할에 연결해야 합니다. 그렇지 않으면 를 사용하여 클러스터를 생성할 때 오류가 발생합니다. AWS Management Console
-
역할 이름에 을 ecsInstanceRole입력하고 선택적으로 설명을 입력할 수 있습니다.
-
Add tags(태그 추가)(선택 사항)에서 정책과 연결할 사용자 지정 태그를 지정한 다음, Next: Review(다음: 검토)를 선택합니다.
-
역할 정보를 검토한 후 역할 생성을 선택하여 마칩니다.
ecsInstanceRole
역할 생성 방법(AWS CLI)
-
create-instance-profile명령을
ecsInstanceRole-profile
사용하여 이름을 지정한 인스턴스 프로필을 생성합니다.aws iam create-instance-profile --instance-profile-name ecsInstanceRole-profile
응답의 예
{ "InstanceProfile": { "InstanceProfileId": "AIPAJTLBPJLEGREXAMPLE", "Roles": [], "CreateDate": "2022-04-12T23:53:34.093Z", "InstanceProfileName": "ecsInstanceRole-profile", "Path": "/", "Arn": "arn:aws:iam::123456789012:instance-profile/ecsInstanceRole-profile" } }
-
ecsInstanceRole
인스턴스 프로파일에ecsInstanceRole-profile
역할을 추가합니다.aws iam add-role-to-instance-profile \ --instance-profile-name ecsInstanceRole-profile \ --role-name ecsInstanceRole
컨테이너 인스턴스(ecsInstanceRole
) 역할에 Amazon S3 읽기 전용 액세스 추가
Amazon S3에서 구성 정보를 프라이빗 버킷에 저장하고 컨테이너 인스턴스 IAM 역할에 읽기 전용 액세스를 부여하면 시작 시점에 컨테이너 인스턴스 구성을 안전하고 편리하게 허용할 수 있습니다. ecs.config
파일의 사본을 프라이빗 버킷에 저장했다가 인스턴스가 시작할 때 Amazon EC2 사용자 데이터를 사용하여 AWS CLI를 설치하고 구성 정보를 /etc/ecs/ecs.config
에 복사할 수 있습니다.
ecs.config
파일을 생성하여 Amazon S3에 저장하고 이 구성으로 인스턴스를 시작하는 자세한 방법은 Amazon S3에 컨테이너 인스턴스 구성 저장 섹션을 참조하세요.
컨테이너 인스턴스 역할에 Amazon S3 읽기 전용 액세스를 허용하는 방법
https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
탐색 창에서 정책(Policies)을 선택합니다.
-
필터 정책 검색 상자에 ReadOnlyAccessAmazonS3를 입력한 다음 정책을 선택합니다.
참고
이 정책으로 모든 Amazon S3 리소스에 대한 읽기 전용 액세스가 가능합니다. 보다 제한적인 버킷 정책의 예는 Amazon Simple Storage Service 사용 설명서의 버킷 정책 예제를 참조하세요.
-
연결을 선택합니다.
-
역할 필터링 검색 상자에 을 입력합니다. ecsInstanceRole
-
ecsInstanceRole역할 왼쪽에 있는 확인란을 선택한 다음 정책 연결을 선택합니다.
컨테이너 인스턴스 모니터링에 필요한 권한
컨테이너 인스턴스가 로그 데이터를 CloudWatch Logs로 전송할 수 있으려면 먼저 컨테이너 인스턴스가 Logs API를 사용할 수 있도록 허용하는 IAM 정책을 생성한 다음 해당 정책을 CloudWatch Logs에 연결해야 합니다. ecsInstanceRole
ECS-CloudWatchLogs
IAM; 정책을 생성하려면
https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
탐색 창에서 정책(Policies)을 선택합니다.
-
정책 생성(Create policy), JSON을 차례대로 선택합니다.
-
다음 정책을 입력합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:*:*:*" ] } ] }
-
정책 검토(Review policy)를 선택합니다.
-
정책 검토 페이지에서 이름(Name)에
ECS-CloudWatchLogs
를 입력한 다음 정책 생성(Create policy)을 선택합니다.
ECS-CloudWatchLogs
정책을 ecsInstanceRole
에 연결하려면
https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
탐색 창에서 역할(Roles)을 선택합니다.
-
ecsInstanceRole
을 선택합니다. 역할이 존재하지 않을 경우, Amazon ECS 컨테이너 인스턴스 IAM 역할의 절차를 따라 역할을 생성합니다. -
탐색 창에서 Policies(정책)을 선택합니다.
-
ECS-를 선택합니다. CloudWatchLogs
-
정책 작업(Policy Actions). 연결(Attach)을 선택합니다.
-
연결에 사용할 수 있는 정책의 범위를 좁히려면 필터(Filter)에 ecsInstance를 입력합니다.
-
ecsInstance 역할을 선택하고 정책 연결(Attach policy)을 선택합니다.