Amazon ECS 인스턴스 역할 - AWS Batch

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon ECS 인스턴스 역할

AWS Batch 컴퓨팅 환경은 Amazon ECS 컨테이너 인스턴스로 채워집니다. Amazon ECS 컨테이너 에이전트를 로컬에서 실행합니다. Amazon ECS 컨테이너 에이전트는 사용자 대시 다양한 AWS API 작업을 자동으로 호출합니다. 그러므로 에이전트를 실행하는 컨테이너 인스턴스는 해당 에이전트의 소유자를 확인하기 위해 이 서비스에 대한 IAM 정책과 역할을 요구합니다. 컨테이너 인스턴스를 시작할 때 사용할 IAM 역할과 인스턴스 프로파일을 생성해야 합니다. 그렇지 않으면 컴퓨팅 환경을 생성하고 해당 환경에서 컨테이너 인스턴스를 시작할 수 없습니다. 이 요구 사항은 Amazon에서 제공한 &ECS; 최적화 AMI를 사용하거나 사용하지 않고 시작된 컨테이너 인스턴스에 적용됩니다. 자세한 내용을 알아보려면 Amazon Elastic Container Service 개발자 안내서Amazon ECS 컨테이너 인스턴스 IAM 역할을 참조하세요.

Amazon ECS 인스턴스 역할과 인스턴스 프로파일은 콘솔 처음 실행 환경에서 자동으로 생성됩니다. 하지만 다음 단계를 수행하여 계정에 이미 Amazon ECS 인스턴스 역할과 인스턴스 프로파일이 있는지 확인할 수 있습니다. 다음 단계는 관리형 IAM 정책을 연결하는 방법도 다룹니다.

IAM 콘솔에서 ecsInstanceRole(을)를 확인하는 방법
  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 역할을 선택합니다.

  3. 역할 목록에서 ecsInstanceRole(을)를 검색합니다. 역할이 존재하지 않을 경우, 아래 단계를 사용하여 역할을 생성합니다.

    1. 역할 생성을 선택합니다.

    2. 신뢰할 수 있는 엔터티 유형AWS 서비스(을)를 선택합니다.

    3. 일반 사용 사례에서 EC2를 선택합니다.

    4. 다음을 선택합니다.

    5. 권한 정책에 대해서는 AmazonEC2ContainerServiceforEC2Role을 검색하십시오.

    6. AmazonEC2ContainerServiceforEC2Role 옆에 있는 확인란을 선택한 후 다음을 선택합니다.

    7. 역할 이름ecsInstanceRole(을)를 입력하고 역할 생성을 선택합니다.

      참고

      AWS Management Console(을)를 사용하여 Amazon EC2 역할을 생성하는 경우, 콘솔이 인스턴스 프로파일을 생성하여 해당 역할과 동일한 이름을 생성합니다.

또는 AWS CLI(을)를 사용하여 ecsInstanceRole IAM 역할을 생성할 수 있습니다. 다음과 같은 신뢰 정책 및 AWS 관리형 정책을 사용하여 IAM 역할을 생성합니다.

IAM 역할과 인스턴스 프로파일을 생성하려면(AWS CLI)
  1. 다음 신뢰 정책을 생성하고 ecsInstanceRole-role-trust-policy.json(이)라는 텍스트 파일로 저장합니다.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com"}, "Action": "sts:AssumeRole" } ] }
  2. create-role 명령을 사용하여 ecsInstanceRole 역할을 생성합니다. assume-role-policy-document 파라미터에 신뢰 정책 파일 위치를 지정합니다.

    $ aws iam create-role \ --role-name ecsInstanceRole \ --assume-role-policy-document file://ecsInstanceRole-role-trust-policy.json

    다음은 응답의 예입니다.

    { "Role": { "Path": "/", "RoleName: "ecsInstanceRole", "RoleId": "AROAT46P5RDIY4EXAMPLE", "Arn": "arn:aws:iam::123456789012:role/ecsInstanceRole". "CreateDate": "2022-12-12T23:46:37.247Z", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service: "ec2.amazonaws.com" } "Action": "sts:AssumeRole", } ] } }
  3. create-instance-profile 명령을 사용하여 ecsInstanceRole(이이)라는 인스턴스 프로파일을 생성합니다.

    참고

    AWS CLI 및 AWS API에서 별도의 작업으로 역할 및 인스턴스 프로파일을 생성해야 합니다.

    $ aws iam create-instance-profile --instance-profile-name ecsInstanceRole

    다음은 응답의 예입니다.

    { "InstanceProfile": { "Path": "/", "InstanceProfileName": "ecsInstanceRole", "InstanceProfileId": "AIPAT46P5RDITREXAMPLE", "Arn": "arn:aws:iam::123456789012:instance-profile/ecsInstanceRole", "CreateDate": "2022-06-30T23:53:34.093Z", "Roles": [], } }
  4. add-role-to-instance-profile 명령을 사용하여 ecsInstanceRole 인스턴스 프로파일에 ecsInstanceRole 역할을 추가합니다.

    aws iam add-role-to-instance-profile \ --role-name ecsInstanceRole --instance-profile-name ecsInstanceRole
  5. attach-role-policy 명령을 사용하여 AmazonEC2ContainerServiceforEC2Role AWS 관리형 정책을 ecsInstanceRole 역할에 연결합니다.

    $ aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role \ --role-name ecsInstanceRole