Amazon ECS Linux 컨테이너 인스턴스 시작 - Amazon Elastic Container Service

Amazon ECS Linux 컨테이너 인스턴스 시작

Amazon EC2 콘솔을 사용하여 Amazon ECS 컨테이너 인스턴스를 생성할 수 있습니다.

Amazon EC2 콘솔, AWS CLI 및 SDK을 비롯한 다양한 방법으로 인스턴스를 시작할 수 있습니다. 인스턴스를 시작하는 다른 방법에 대한 자세한 정보는 Amazon EC2 사용 설명서의 인스턴스 시작을 참조하세요.

시작 마법사에 대한 자세한 내용은 Amazon EC2 사용 설명서의 새 인스턴스 시작 마법사를 사용하여 인스턴스 시작을 참조하세요.

시작하기 전에 Amazon ECS 사용 설정의 단계를 완료해야 합니다.

새 Amazon EC2 마법사를 사용하여 인스턴스를 시작할 수 있습니다. 인스턴스 시작 마법사는 인스턴스를 시작하는 데 필요한 시작 파라미터를 지정합니다.

절차

시작하기 전에 Amazon ECS 사용 설정의 단계를 완료해야 합니다.

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 화면 상단의 탐색 모음에는 현재 AWS 리전이 표시됩니다(예: 미국 동부(오하이오)). 인스턴스를 시작할 리전을 선택합니다.

  3. Amazon EC2 콘솔 대시보드에서 인스턴스 시작을 선택합니다.

이름 및 태그

인스턴스 이름은 태그이며, 여기서 키는 이름이고 값은 사용자가 지정하는 이름입니다. 인스턴스, 볼륨 및 Elastic Graphics에 태그를 지정할 수 있습니다. 스팟 인스턴스의 경우 스팟 인스턴스 요청만 태깅할 수 있습니다.

인스턴스 이름과 추가 태그를 지정하는 것은 선택 사항입니다.

  • 이름(Name)에 인스턴스를 설명하는 이름을 입력합니다. 이름을 지정하지 않으면 인스턴스를 시작할 때 자동으로 생성되는 ID로 인스턴스를 식별할 수 있습니다.

  • 태그를 추가하려면 추가 태그 추가(Add additional tags)를 선택합니다. 태그 추가(Add tag)를 선택한 다음 키와 값을 입력하고 태그를 지정할 리소스 유형을 선택합니다. 추가할 각 추가 태그에 대해 태그 추가(Add tag)를 다시 선택합니다.

애플리케이션 및 OS 이미지(Amazon Machine Image)

Amazon Machine Image(AMI)에는 인스턴스를 생성하는 데 필요한 정보가 포함되어 있습니다. 예를 들어 AMI에는 웹 서버 역할을 수행하는 데 필요한 소프트웨어가 포함될 수 있습니다(예: Apache, 사용자의 웹 사이트).

검색창을 사용하여 AWS에서 공개한 적절한 Amazon ECS 최적화 AMI를 찾습니다.

  1. 다음 용어 중 하나를 검색창에 입력합니다.

  2. Enter를 누릅니다.

  3. Amazon Machine Image(AMI) 선택 페이지에서 AWSMarketplace AMIs 탭을 선택합니다.

  4. 왼쪽의 결과 구체화(Refine results) 창에서 Amazon Web Services게시자(Publisher)로 선택합니다.

  5. 사용하려는 AMI 행에서 선택(Select)을 선택합니다.

    또는, AMI를 선택하지 않고 시작 인스턴스 마법사로 돌아가려면 취소(Cancel)(오른쪽 상단)를 선택합니다. 기본 AMI가 선택됩니다. AMI가 Linux 인스턴스에 나와 있는 요구 사항과 일치하는지 확인하세요.

인스턴스 타입

인스턴스 유형은 인스턴스의 하드웨어 구성과 크기를 정의합니다. 대형 인스턴스는 CPU와 메모리가 더 높습니다. 자세한 정보는 인스턴스 유형을 참조하세요.

  • 인스턴스 유형(Instance type)에서 인스턴스에 대한 인스턴스 유형을 선택합니다.

    여기서 선택하는 인스턴스 유형은 실행할 작업에 사용 가능한 리소스를 결정합니다.

키 페어(로그인)

키 페어 이름(Key pair name)에서 기존 키 페어를 선택하거나 새로운 키 페어 생성(Create new key pair)을 선택하여 새로 생성합니다.

중요

키 페어 없이 진행(Proceed without key pair)(권장하지 않음) 옵션을 선택할 경우 사용자가 다른 방법으로 로그인할 수 있도록 구성된 AMI를 선택해야만 인스턴스에 연결할 수 있습니다.

네트워크 설정

필요에 따라 네트워크 설정을 구성합니다.

  • 네트워킹 플랫폼(Networking platform): Virtual Private Cloud (VPC)를 선택한 다음 네트워킹 인터페이스(Network interfaces) 섹션에서 서브넷을 지정합니다.

  • VPC: 보안 그룹을 생성할 기존 VPC를 선택합니다.

  • 서브넷(Subnet): 가용 영역, 로컬 영역, Wavelength Zone 또는 Outposts와 연결된 서브넷에서 인스턴스를 시작할 수 있습니다.

    가용 영역에서 인스턴스를 시작하려면 인스턴스를 시작할 서브넷을 선택합니다. 새 서브넷을 생성하려면 새 서브넷 생성을 선택하여 Amazon VPC 콘솔로 이동합니다. 마친 후에 인스턴스 시작 마법사로 돌아와 새로 고침 아이콘을 선택하면 해당 서브넷이 목록에 로딩됩니다.

    로컬 영역에서 인스턴스를 시작하려면 로컬 영역에 생성된 서브넷을 선택합니다.

    Outposts에서 인스턴스를 시작하려면 Outposts와 연결된 VPC의 서브넷을 선택합니다.

  • 퍼블릭 IP 자동 할당(Auto-assign Public IP): 인터넷에서 인스턴스에 액세스할 수 있어야 한다면 퍼블릭 IP 자동 할당(Auto-assign Public IP) 필드가 사용 설정(Enable)으로 설정되어 있는지 확인합니다. 이렇게 설정이 되어 있지 않으면 이 필드를 비활성화(Disable)로 설정합니다.

    참고

    컨테이너 인스턴스는 Amazon ECS 서비스 엔드포인트와 통신하기 위한 액세스 권한이 필요합니다. 액세스 권한은 인터페이스 VPC 엔드포인트를 통하거나 퍼블릭 IP 주소가 있는 컨테이너 인스턴스를 통해 부여할 수 있습니다.

    인터페이스 VPC 엔드포인트에 대한 자세한 정보는 Amazon ECS 및 인터페이스 VPC 엔드포인트(AWS PrivateLink) 섹션을 참조하세요.

    인터페이스 VPC 엔드포인트가 구성되어 있지 않고 컨테이너 인스턴스 컴퓨팅 리소스에 퍼블릭 IP 주소가 없는 경우, NAT(Network Address Translation)를 사용하여 이 액세스 권한을 제공해야 합니다. 자세한 정보는 Amazon VPC 사용 설명서NAT 게이트웨이 및 이 가이드의 Amazon ECS Linux 컨테이너 인스턴스에 HTTP 프록시 사용 섹션을 참조하세요.

  • 방화벽(보안 그룹)(Firewall (security groups)): 보안 그룹을 사용하여 컨테이너 인스턴스의 방화벽 규칙을 정의합니다. 이 규칙은 컨테이너 인스턴스에 전달되는 수신 네트워크 트래픽을 지정합니다. 다른 모든 트래픽은 무시됩니다.

    • 기존 보안 그룹을 선택하려면 기존 보안 그룹 선택(Select an existing security group)을 선택하고 Amazon ECS 사용 설정에서 생성한 보안 그룹을 선택합니다.

스토리지 구성

선택한 AMI에는 루트 볼륨을 포함한 하나 이상의 스토리지 볼륨이 있습니다. 인스턴스에 연결할 추가 볼륨을 지정할 수 있습니다.

간단(Simple) 보기를 사용할 수 있습니다.

  • 스토리지 유형(Storage type): 컨테이너 인스턴스의 스토리지를 구성합니다.

    Amazon ECS 최적화 Amazon Linux 2 AMI를 사용하는 경우, 운영 체제와 Docker 간에 공유하는 단일 30GiB 볼륨이 인스턴스에 구성됩니다.

    Amazon ECS 최적화 AMI를 사용하는 경우, 인스턴스에는 2개의 볼륨이 구성되어 있습니다. Root 볼륨은 운영 체제가 사용하고, 두 번째 Amazon EBS 볼륨(/dev/xvdcz에 연결)은 Docker가 사용합니다.

    애플리케이션 요구에 맞춰 인스턴스의 볼륨 크기를 선택적으로 늘리거나 줄일 수 있습니다.

고급 세부 정보

고급 세부 정보에서 필드를 볼 수 있도록 섹션을 확장하고 인스턴스를 위한 추가 파라미터를 지정합니다.

  • 구매 옵션(Purchasing option): 스팟 인스턴스를 요청하려면 스팟 인스턴스 요청(Request Spot Instances)을 선택합니다. 스팟 인스턴스와 관련된 다른 필드도 설정해야 합니다. 자세한 정보는 스팟 인스턴스 요청을 참조하세요.

    참고

    스팟 인스턴스를 사용하는 경우 Not available 메시지가 표시되면 다른 인스턴스 유형을 선택해야 할 수 있습니다.

    .

  • IAM 인스턴스 프로파일(IAM instance profile): 컨테이너 인스턴스 IAM 역할을 선택합니다. 이는 일반적으로 ecsInstanceRole로 이름이 지정됩니다.

    중요

    적절한 IAM 권한을 사용하여 컨테이너 인스턴스를 시작하지 않으면 Amazon ECS 에이전트가 클러스터에 연결할 수 없습니다. 자세한 정보는 Amazon ECS 컨테이너 인스턴스 IAM 역할을 참조하세요.

  • (선택사항) 사용자 데이터(User data): 사용자 데이터(예: Amazon ECS 컨테이너 에이전트 구성의 에이전트 환경 변수)로 Amazon ECS 컨테이너 인스턴스를 구성합니다. Amazon EC2 사용자 데이터 스크립트는 인스턴스가 처음 시작될 때 한 번만 실행됩니다. 다음은 사용자 데이터의 일반적인 용례입니다.

    • 기본적으로 컨테이너 인스턴스는 기본 클러스터로 시작됩니다. 기본이 아닌 클러스터로 시작하려면 고급 세부 정보(Advanced Details) 목록을 선택합니다. 그런 다음 사용자 데이터(User data) 필드에 다음 스크립트를 붙여 넣고 your_cluster_name을 클러스터 이름으로 대체합니다.

      #!/bin/bash echo ECS_CLUSTER=your_cluster_name >> /etc/ecs/ecs.config
    • Amazon S3에 ecs.config 파일이 있고 컨테이너 인스턴스 역할에 대한 Amazon S3 읽기 전용 액세스가 활성화된 경우, 고급 세부 정보(Advanced Details) 목록을 선택합니다. 그런 다음 사용자 데이터(User data) 필드에 다음 스크립트를 붙여 넣고 your_bucket_name을 AWS CLI를 설치할 버킷 이름으로 대체하고 시작 시 구성 파일을 작성합니다.

      참고

      이 구성에 대한 자세한 정보는 Amazon S3에 Amazon ECS 컨테이너 인스턴스 구성 저장 섹션을 참조하세요.

      #!/bin/bash yum install -y aws-cli aws s3 cp s3://your_bucket_name/ecs.config /etc/ecs/ecs.config
    • ECS_CONTAINER_INSTANCE_TAGS 구성 파라미터를 사용하여 컨테이너 인스턴스의 태그를 지정합니다. 이렇게 하면 오로지 Amazon ECS과 연결된 태그가 생성되며, 이러한 태그는 Amazon EC2 API를 사용하여 볼 수 없습니다.

      중요

      Amazon EC2 Auto Scaling 그룹을 사용하여 컨테이너 인스턴스를 시작한 경우 ECS_CONTAINER_INSTANCE_TAGS 에이전트 구성 파라미터를 사용하여 태그를 추가해야 합니다. 이는 Auto Scaling을 사용하여 시작된 Amazon EC2 인스턴스에 태그가 추가되는 방식 때문입니다.

      #!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=your_cluster_name ECS_CONTAINER_INSTANCE_TAGS={"tag_key": "tag_value"} EOF
    • 컨테이너 인스턴스의 태그를 지정한 다음, ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM 구성 파라미터를 사용하여 Amazon EC2에서 Amazon ECS로 태그를 전파합니다.

      컨테이너 인스턴스와 연결된 태그를 전파하고 your_cluster_name이라고 하는 클러스터에 컨테이너 인스턴스를 등록하는 사용자 데이터 스크립트의 예는 다음과 같습니다.

      #!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=your_cluster_name ECS_CONTAINER_INSTANCE_PROPAGATE_TAGS_FROM=ec2_instance EOF

    자세한 내용은 데이터 전달을 위한 Amazon ECS Linux 컨테이너 인스턴스 부트스트래핑 단원을 참조하십시오.