스팟 인스턴스 알림을 수신하도록 Amazon ECS Linux 컨테이너 인스턴스 구성 - Amazon Elastic Container Service

스팟 인스턴스 알림을 수신하도록 Amazon ECS Linux 컨테이너 인스턴스 구성

스팟 가격이 요청의 최고가를 초과하거나 용량이 더 이상 제공되지 않는 경우 Amazon EC2는 스팟 인스턴스를 종료, 중지 또는 최대 절전 모드로 전환합니다. Amazon EC2는 종료 및 중지 작업에 대해 스팟 인스턴스 2분 중단 알림을 제공합니다. 최대 절전 모드 작업에 대한 2분 알림을 제공하지 않습니다. 인스턴스에서 Amazon ECS 스팟 인스턴스 드레이닝이 활성화된 경우 Amazon ECS는 스팟 인스턴스 중단 알림을 수신하고 인스턴스를 DRAINING 상태로 둡니다.

중요

Amazon ECS는 Auto Scaling 용량 재분배에 의해 인스턴스가 제거될 때 Amazon EC2로부터 알림을 받지 않습니다. 자세한 정보는 Amazon EC2 Auto Scaling 용량 재분배를 참조하세요.

컨테이너 인스턴스를 DRAINING으로 설정할 경우 Amazon ECS는 새 작업이 컨테이너 인스턴스에서 배치를 위해 예약되지 않도록 합니다. 드레이닝 컨테이너 인스턴스에서 PENDING 상태인 서비스 작업이 즉시 중지됩니다. 클러스터에 사용 가능한 컨테이너 인스턴스가 있는 경우 거기서 대체 서비스 작업이 시작됩니다.

스팟 인스턴스 드레이닝은 기본적으로 꺼져 있습니다.

인스턴스를 시작할 때 스팟 인스턴스 드레인을 켤 수 있습니다. 사용자 데이터 필드에 다음 스크립트를 추가합니다. MyCluster를 컨테이너 인스턴스를 등록할 클러스터의 이름으로 바꿉니다.

#!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config ECS_CLUSTER=MyCluster ECS_ENABLE_SPOT_INSTANCE_DRAINING=true EOF

자세한 내용은 Amazon ECS Linux 컨테이너 인스턴스 시작 단원을 참조하십시오.

기존 컨테이너 인스턴스에 스팟 인스턴스 드레이닝 사용 설정
  1. SSH를 통해 스팟 인스턴스에 연결합니다.

  2. /etc/ecs/ecs.config 파일을 편집하고 다음을 추가합니다.

    ECS_ENABLE_SPOT_INSTANCE_DRAINING=true
  3. ecs 서비스를 다시 시작합니다.

    • Amazon ECS 최적화 Amazon Linux 2 AMI의 경우:

      sudo systemctl restart ecs
  4. (선택 사항) 에이전트 내부 검사 API 태스크를 쿼리하여 에이전트가 실행 중인지 확인하고 새 컨테이너 인스턴스에 대한 일부 정보를 볼 수 있습니다. 자세한 내용은 Amazon ECS 컨테이너 내부 검사 단원을 참조하십시오.

    curl http://localhost:51678/v1/metadata