애플리케이션을 Amazon ECS 태스크로 실행

애플리케이션을 Amazon ECS 태스크로 실행

AWS Management Console을 사용해 일회성 프로세스의 태스크를 만들 수 있어요.

출처: 문서

본문

standalone 태스크 생성 (AWS Management Console)

  1. 콘솔을 https://console.aws.amazon.com/ecs/v2 에서 엽니다.
  2. Amazon ECS 콘솔에서는 클러스터 상세 페이지 또는 태스크 정의 개정 목록에서 standalone 태스크를 만들 수 있어요. 선택한 리소스 페이지에 따라 다음 단계를 사용해 standalone 태스크를 만드세요.
시작할 위치 단계
클러스터 상세 페이지 1. Clusters 페이지에서 서비스를 만들 클러스터를 선택합니다. 2. Tasks 탭에서 Run task를 선택합니다.
태스크 정의 개정 페이지 1. Task definitions 페이지에서 태스크 정의 패밀리를 선택해 해당 패밀리의 개정을 표시합니다. 2. 사용하려는 개정을 선택합니다. 3. Deploy 메뉴에서 Run task를 선택합니다.
  1. Existing cluster에서 클러스터를 선택합니다. 새 클러스터에서 태스크를 실행하려면 Create cluster를 선택합니다.
  2. 태스크가 클러스터 인프라에 걸쳐 어떻게 분산되는지 선택합니다. Compute configuration 아래에서 옵션을 선택합니다. 용량 공급자 전략을 사용하려면 클러스터 수준에서 용량 공급자를 구성해야 해요. 클러스터를 용량 공급자를 사용하도록 구성하지 않았다면 launch type을 대신 사용하세요. Amazon ECS Managed Instances에서 워크로드를 실행하려면 Capacity provider strategy 옵션을 사용해야 해요.
분산 방법 단계
용량 공급자 전략 1. Compute options 섹션에서 Capacity provider strategy를 선택합니다. 2. 전략을 선택합니다. 클러스터의 기본 용량 공급자 전략을 사용하려면 Use cluster default를 선택합니다. 클러스터에 기본 용량 공급자 전략이 없거나 사용자 지정 전략을 사용하려면 Use custom을 선택하고, Add capacity provider strategy에서 Base, Capacity provider, Weight를 지정해 사용자 지정 용량 공급자 전략을 정의합니다. 참고: 전략에서 용량 공급자를 사용하려면 용량 공급자가 클러스터와 연결되어 있어야 해요.
Launch type 1. Compute options 섹션에서 Launch type을 선택합니다. 2. Launch type에서 실행 유형을 선택합니다. 3. (선택 사항) Fargate를 사용할 때 Platform version에서 사용할 플랫폼 버전을 지정합니다. 플랫폼 버전을 지정하지 않으면 LATEST 플랫폼 버전이 사용됩니다.
  1. Deployment configuration 아래에서 다음을 수행합니다.
    • Task definition에 태스크 정의를 입력합니다. 중요: 콘솔은 선택한 태스크 정의 패밀리와 개정이 정의된 컴퓨팅 구성과 호환되는지 확인하기 위해 선택을 검증해요.
    • Desired tasks에 실행할 태스크 수를 입력합니다.
    • Task group에 태스크 그룹 이름을 입력합니다.
  2. 태스크 정의가 awsvpc 네트워크 모드를 사용한다면 Networking을 펼치고 다음 단계를 사용해 사용자 지정 구성을 지정합니다.
    • VPC에서 사용할 VPC를 선택합니다.
    • Subnets에서 태스크 스케줄러가 태스크를 배치할 때 고려하는 VPC의 서브넷 하나 이상을 선택합니다.
    • Security group에서 기존 보안 그룹을 선택하거나 새로 만들 수 있습니다. 기존 보안 그룹을 사용하려면 보안 그룹을 선택하고 다음 단계로 이동합니다. 새 보안 그룹을 만들려면 Create a new security group을 선택합니다. 보안 그룹 이름, 설명을 지정한 다음 보안 그룹에 인바운드 규칙을 하나 이상 추가해야 합니다.
    • Public IP에서 태스크의 탄력적 네트워크 인터페이스(ENI)에 퍼블릭 IP 주소를 자동 할당할지 선택합니다. AWS Fargate 태스크는 퍼블릭 서브넷에서 실행될 때 퍼블릭 IP 주소를 할당받아 인터넷으로 가는 경로를 가질 수 있어요. EC2 태스크는 이 필드로 퍼블릭 IP를 할당받을 수 없어요. 자세한 내용은 Amazon ECS task networking options for Fargate와 Allocate a network interface for an Amazon ECS task를 참고하세요.
  3. 태스크가 배포 시 구성과 호환되는 데이터 볼륨을 사용한다면 Volume을 펼쳐 볼륨을 구성할 수 있습니다. 볼륨 이름과 볼륨 유형은 태스크 정의 개정을 만들 때 구성되며, standalone 태스크를 실행할 때는 변경할 수 없어요. 볼륨 이름과 유형을 업데이트하려면 새 태스크 정의 개정을 만들고 새 개정을 사용해 태스크를 실행해야 해요.
이 볼륨 유형을 구성하려면 이렇게 하세요
Amazon EBS EBS volume type에서 태스크에 연결할 EBS 볼륨 유형을 선택합니다. **Size (GiB)**에 볼륨 크기를 기비바이트(GiB) 단위의 유효한 값으로 입력합니다. 최소 1 GiB, 최대 16,384 GiB 볼륨 크기를 지정할 수 있어요. 이 값은 스냅샷 ID를 제공하지 않는 한 필수예요. IOPS에 볼륨이 제공해야 하는 최대 입출력 작업 수(IOPS)를 입력합니다. 이 값은 io1, io2, gp3 볼륨 유형에서만 구성할 수 있어요. **Throughput (MiB/s)**에 볼륨이 제공해야 하는 처리량을 초당 메비바이트(MiBps 또는 MiB/s) 단위로 입력합니다. 이 값은 gp3 볼륨 유형에서만 구성할 수 있어요. Snapshot ID에서 기존 Amazon EBS 볼륨 스냅샷을 선택하거나, 스냅샷에서 볼륨을 만들려면 스냅샷의 ARN을 입력할 수 있어요. 스냅샷 ID를 선택하거나 입력하지 않음으로써 새 빈 볼륨을 만들 수도 있어요. Snapshot ID를 지정했다면 **Volume initialization rate (MiB/s)**를 지정할 수 있어요. 볼륨 생성 시 Snapshot ID로 지정된 스냅샷에서 데이터가 로드되는 속도를 결정하는 MiB/s 값을 100에서 300 사이로 입력합니다. Termination policy에서 태스크가 종료된 후 태스크에 연결되도록 구성된 볼륨을 보존하려면 체크박스 선택을 해제합니다. 기본적으로 태스크에 연결된 EBS 볼륨은 태스크가 종료될 때 삭제돼요. File system type에서 볼륨의 데이터 저장 및 검색에 사용할 파일 시스템 유형을 선택합니다. 운영 체제 기본값 또는 특정 파일 시스템 유형을 선택할 수 있어요. Linux의 기본값은 XFS예요. 스냅샷에서 생성된 볼륨의 경우 스냅샷이 생성될 때 볼륨이 사용하던 것과 동일한 파일 시스템 유형을 지정해야 해요. 파일 시스템 유형이 일치하지 않으면 태스크가 시작에 실패해요. Infrastructure role에서 Amazon ECS가 태스크용 Amazon EBS 볼륨을 관리할 수 있게 하는 필요한 권한이 있는 IAM 역할을 선택합니다. 역할에 AmazonECSInfrastructureRolePolicyForVolumes 관리형 정책을 연결하거나, 정책을 가이드로 삼아 특정 요구 사항에 맞는 권한을 가진 자체 정책을 만들고 연결할 수 있어요. 필요한 권한에 대한 자세한 내용은 Amazon ECS infrastructure IAM role을 참고하세요. Encryption에서 Amazon EBS 기본 설정으로 암호화하려면 Default를 선택합니다. 계정이 Encryption by default를 구성했다면 볼륨은 설정에 지정된 AWS Key Management Service(AWS KMS) 키로 암호화돼요. Default를 선택했는데 Amazon EBS 기본 암호화가 켜져 있지 않다면 볼륨은 암호화되지 않아요. Custom을 선택하면 볼륨 암호화를 위해 원하는 AWS KMS 키를 지정할 수 있어요. None을 선택하면 기본 암호화가 구성되어 있거나 암호화된 스냅샷에서 볼륨을 만들지 않는 한 볼륨은 암호화되지 않아요. Encryption에서 Custom을 선택했다면 사용할 AWS KMS 키를 지정해야 해요. KMS key에서 AWS KMS 키를 선택하거나 키 ARN을 입력합니다. 대칭형 고객 관리형 키로 볼륨을 암호화하려면 AWS KMS 키 정책에 올바른 권한이 정의되어 있는지 확인하세요. 자세한 내용은 Data encryption for Amazon EBS volumes를 참고하세요.
태그 (선택 사항) Tags 아래에서 태스크 정의의 태그를 전파하거나 자체 태그를 제공해 Amazon EBS 볼륨에 태그를 추가할 수 있습니다. 태스크 정의의 태그를 전파하려면 Propagate tags from에서 Task definition을 선택합니다. Do not propagate를 선택하거나 값을 선택하지 않으면 태그가 전파되지 않아요. 자체 태그를 제공하려면 Add tag를 선택한 다음 추가하는 각 태그의 키와 값을 제공합니다.