스팟 인스턴스

스팟 인스턴스 (Spot Instances)

스팟 인스턴스는 On-Demand 가격보다 낮게 제공되는 유휴 EC2 용량을 사용하는 인스턴스예요. 쓰이지 않는 EC2 인스턴스를 큰 할인으로 요청할 수 있어서 Amazon EC2 비용을 크게 줄일 수 있어요.

출처: 문서

본문

스팟 인스턴스의 시간당 가격을 스팟 가격(Spot price) 이라고 해요. 각 가용 영역의 각 인스턴스 유형 스팟 가격은 Amazon EC2가 설정하며, 스팟 인스턴스의 장기 공급·수요에 따라 점진적으로 조정돼요. 스팟 인스턴스는 용량이 가능할 때마다 실행돼요.

애플리케이션 실행 시점에 유연할 수 있고, 애플리케이션이 중단될 수 있다면 스팟 인스턴스는 비용 효율적인 선택이에요. 데이터 분석, 배치 작업, 백그라운드 처리, 선택적 작업에 잘 맞아요.

개념 (Concepts)

  • 스팟 용량 풀(Spot capacity pool) – 같은 인스턴스 유형(예: m5.large)과 가용 영역을 가진 사용되지 않는 EC2 인스턴스 집합이에요.
  • 스팟 가격(Spot price) – 스팟 인스턴스의 현재 시간당 가격이에요.
  • 스팟 인스턴스 요청(Spot Instance request) – 스팟 인스턴스를 요청해요. 용량이 가능하면 Amazon EC2가 요청을 충족해요. 스팟 인스턴스 요청은 일회성(one-time) 또는 영구성(persistent) 이에요. Amazon EC2는 요청과 연결된 스팟 인스턴스가 중단된 후 영구 스팟 인스턴스 요청을 자동으로 다시 제출해요.
  • EC2 인스턴스 리밸런스 권장(EC2 instance rebalance recommendation) – Amazon EC2가 스팟 인스턴스가 중단 위험이 높아졌다는 알림 신호를 보내요. 이 신호를 통해 2분 스팟 인스턴스 중단 공지를 기다리지 않고 기존·새 스팟 인스턴스에 워크로드를 사전에 리밸런스할 수 있어요.
  • 스팟 인스턴스 중단(Spot Instance interruption) – Amazon EC2가 용량을 되찾아야 할 때 스팟 인스턴스를 종료, 중지, 최대 절전시켜요. Amazon EC2는 중단되기 2분 전에 알리는 스팟 인스턴스 중단 공지를 제공해요.

스팟 인스턴스와 On-Demand 인스턴스의 차이점

Spot Instances On-Demand Instances
시작 시간 스팟 인스턴스 요청이 활성 상태이고 용량이 가능할 때만 즉시 시작할 수 있어요. 수동 시작 요청을 하고 용량이 가능할 때만 즉시 시작할 수 있어요.
사용 가능한 용량 용량이 없으면 스팟 인스턴스 요청이 용량이 생길 때까지 시작 요청을 자동으로 계속해요. 시작 요청 시 용량이 없으면 용량 부족 오류(ICE)가 발생해요.
시간당 가격 장기 공급·수요에 따라 달라져요. On-Demand 인스턴스의 시간당 가격은 고정이에요.
리밸런스 권장 인스턴스가 중단 위험이 높아졌을 때 Amazon EC2가 실행 중인 스팟 인스턴스에 보내는 신호예요. On-Demand 인스턴스가 언제 중단(중지·최대 절전·종료)될지는 사용자가 결정해요.
인스턴스 중단 EBS 지원 스팟 인스턴스를 중지·시작할 수 있어요. 또한 용량이 더 이상 없으면 Amazon EC2가 개별 스팟 인스턴스를 중단할 수 있어요. On-Demand 인스턴스는 사용자가 중단 시점을 결정해요.

가격과 절약

스팟 인스턴스는 Amazon EC2가 설정하고 장기 공급·수요에 따라 점진적으로 조정하는 스팟 가격을 지불해요. 스팟 인스턴스는 사용자가 종료하거나, 용량이 더 이상 없거나, Amazon EC2 Auto Scaling 그룹이 축소(scale in) 중에 종료할 때까지 실행돼요.

사용자나 Amazon EC2가 실행 중인 스팟 인스턴스를 중단하면, 사용된 초 또는 전체 시간이 청구되거나 요금이 부과되지 않을 수 있어요. 이는 운영 체제와 누가 중단했는지에 따라 달라요. 자세한 내용은 "Billing for interrupted Spot Instances"를 참고하세요.

스팟 인스턴스는 Savings Plans에 포함되지 않아요. Savings Plans가 있어도 스팟 사용으로 이미 얻은 절약 위에 추가 절약을 주지 않고, Compute Savings Plans의 약정에도 스팟 지출이 적용되지 않아요.

가격 보기: 각 AWS 리전·인스턴스 유형별 현재(5분마다 갱신) 최저 스팟 가격은 "Amazon EC2 Spot Instances Pricing" 페이지에서 확인할 수 있어요. 지난 3개월 스팟 가격 내역은 EC2 콘솔이나 describe-spot-price-history 명령으로 확인해요. AWS는 계정마다 가용 영역을 코드에 독립적으로 매핑하므로, 같은 가용 영역 코드(예: us-west-2a)가 계정마다 다른 결과를 낼 수 있어요.

절약 보기: 단일 Spot Fleet 또는 모든 스팟 인스턴스에서 스팟 사용 절약을 볼 수 있어요. 지난 1시간 또는 3일 동안의 절약과 vCPU 시간당·메모리(GiB) 시간당 평균 비용을 볼 수 있어요. 절약은 추정치이며 사용량에 대한 청구 조정이 포함되지 않아 실제와 다를 수 있어요.

더 알아보기