용량 소비자를 위한 Interruptible Capacity Reservations

용량 소비자를 위한 Interruptible Capacity Reservations

용량 소비자(capacity consumer)는 공유된 interruptible Capacity Reservations에 인스턴스를 시작하는 계정이에요. 이때 소유자가 용량을 회수하면 인스턴스가 종료될 수 있다는 점을 이해해야 합니다. 이 절에서는 용량 소비자가 interruptible Capacity Reservation에 인스턴스를 시작하는 방법과, 소유자가 용량을 회수할 때 어떤 일이 일어나는지 설명합니다.

출처: 문서

본문

이 문서는 다음 주제를 다룹니다.

  • View an interruptible Capacity Reservation (interruptible 용량 예약 보기)
  • Launch instances into interruptible reservations (interruptible 예약에 인스턴스 시작)
  • Interruption experience (중단 경험)

interruptible Capacity Reservation 보기

콘솔

  1. Amazon EC2 콘솔(https://console.aws.amazon.com/ec2/)을 엽니다.
  2. Capacity Reservations를 선택합니다.
  3. Interruptible 열에서 Yes로 표시된 예약을 찾습니다.
  4. 인스턴스 시작에 사용할 예약 ID를 기록해 둡니다.

AWS CLI

describe-capacity-reservations 명령을 사용합니다:

aws ec2 describe-capacity-reservations \
--filters Name=state,Values=active

응답에서 Interruptible이 true로 설정된 예약을 찾습니다. interruptible 예약만 필터링하려면 다음 명령을 사용합니다:

aws ec2 describe-capacity-reservations \
--capacity-reservation-ids cr-example123 \
--query 'CapacityReservations[?Interruptible==`true`]'

참고 — Interruptible Capacity Reservations는 기본적으로 대상 지정(targeted) 예약이므로, 인스턴스를 시작할 때 명시적으로 대상으로 지정해야 해요. open 예약과 달리 interruptible 예약은 일치하는 인스턴스를 자동으로 커버하지 않습니다. 시작할 때 예약 ID를 반드시 명시해야 해요.

interruptible 예약에 인스턴스 시작하기

계정 내 interruptible Capacity Reservations에 Amazon EC2 인스턴스를 시작하는 절차입니다.

참고 — interruptible Capacity Reservations는 중단될 수 있는(interruptible) 애플리케이션에만 사용할 것을 권장합니다.

콘솔

  1. Amazon EC2 콘솔(https://console.aws.amazon.com/ec2/)을 엽니다.
  2. Amazon EC2 대시보드에서 Launch instance를 선택합니다.
  3. 인스턴스 설정을 구성합니다.
  4. Advanced details의 Capacity Reservation에서 Launch interruptible instances in your active reservation을 선택합니다.
  5. interruptible 예약 ID와 새 인스턴스 구매 옵션을 선택합니다.
  6. Launch instance를 선택합니다.

AWS CLI

aws ec2 run-instances \
--instance-type m5.large \
--count 2 \
--image-id ami-12345678 \
--instance-market-options '{
    "MarketType": "interruptible-capacity-reservation"
}' \
--capacity-reservation-specification '{
    "CapacityReservationTarget": {
        "CapacityReservationId": "cr-abcdef1234567890"
    }   
}'

Auto Scaling 그룹으로 인스턴스 시작

Auto Scaling 그룹과 시작 템플릿(launch templates)을 사용해서도 interruptible 예약에 인스턴스를 시작할 수 있어요. 시작 템플릿을 interruptible 마켓 유형과 예약 ID로 구성한 뒤, 그 템플릿을 사용해 Auto Scaling Group을 만드세요. 자세한 내용은 "EC2 Auto Scaling과 함께하는 Interruptible Capacity Reservations"를 참고해요.

중단 경험(Interruption experience)

소유자가 용량을 회수하면 인스턴스 종료 2분 전에 중단 알림을 받아요. 이 경고는 EventBridge 이벤트로 전달되며, 그 사이에 다음을 할 수 있어요.

  • 작업을 저장하거나 애플리케이션 체크포인트를 만들기
  • 프로세스 종료
  • 인스턴스 종료 준비

EventBridge 이벤트에는 어떤 인스턴스가 종료되는지와 정확한 종료 시각에 대한 세부 정보가 포함됩니다. 자세한 내용은 "Instance interruption warning"을 참고하세요.

더 알아보기 (Learn more)