스팟 인스턴스 중단 시작하기

스팟 인스턴스 중단 시작하기 (Initiate a Spot Instance interruption)

Amazon EC2 콘솔에서 스팟 인스턴스 요청이나 스팟 플릿(Spot Fleet) 요청을 선택해 스팟 인스턴스 중단을 시작할 수 있어요. 그래서 스팟 인스턴스의 애플리케이션이 중단을 어떻게 처리하는지 테스트할 수 있어요. 스팟 인스턴스 중단을 시작하면 Amazon EC2가 2분 후에 스팟 인스턴스가 중단될 것이라고 알려주고, 2분이 지나면 인스턴스가 중단돼요.

출처: 문서

본문

스팟 인스턴스 중단을 수행하는 기반 서비스는 AWS Fault Injection Service(AWS FIS)예요. AWS FIS에 대한 정보는 AWS Fault Injection Service를 참고하세요.

참고 중단 동작(interruption behavior)은 terminate, stop, hibernate예요. 중단 동작을 hibernate로 설정하면, 스팟 인스턴스 중단을 시작할 때 최대 절전(hibernation) 프로세스가 즉시 시작돼요.

스팟 인스턴스 중단 시작은 Asia Pacific (Jakarta), Asia Pacific (Osaka), China (Beijing), China (Ningxia), Middle East (UAE)를 제외한 모든 AWS 리전에서 지원돼요.

스팟 인스턴스 중단 시작하기 (Initiate a Spot Instance interruption)

EC2 콘솔로 스팟 인스턴스 중단을 빠르게 시작할 수 있어요. 스팟 인스턴스 요청을 선택하면 스팟 인스턴스 하나의 중단을 시작할 수 있어요. 스팟 플릿 요청을 선택하면 여러 스팟 인스턴스의 중단을 한 번에 시작할 수 있어요.

스팟 인스턴스 중단을 테스트하는 더 고급 실험은 AWS FIS 콘솔로 직접 실험을 만들어 수행할 수 있어요.

EC2 콘솔로 스팟 인스턴스 요청에서 스팟 인스턴스 하나의 중단 시작하기

  1. Amazon EC2 콘솔(https://console.aws.amazon.com/ec2/)을 엽니다.
  2. 탐색 창에서 Spot Requests를 선택해요.
  3. 스팟 인스턴스 요청을 선택한 다음 Actions, Initiate interruption을 선택해요. 중단을 시작하려고 여러 스팟 인스턴스 요청을 선택할 수는 없어요.
  4. Initiate Spot Instance interruption 대화 상자의 Service access에서 기본 역할을 사용하거나 기존 역할을 선택해요. 기존 역할을 선택하려면 Use an existing service role을 선택하고, IAM role에서 사용할 역할을 선택해요.
  5. 스팟 인스턴스 중단을 시작할 준비가 되면 Initiate interruption을 선택해요.

EC2 콘솔로 스팟 플릿 요청에서 스팟 인스턴스 하나 이상의 중단 시작하기

  1. Amazon EC2 콘솔(https://console.aws.amazon.com/ec2/)을 엽니다.
  2. 탐색 창에서 Spot Requests를 선택해요.
  3. 스팟 플릿 요청을 선택한 다음 Actions, Initiate interruption을 선택해요. 중단을 시작하려고 여러 스팟 플릿 요청을 선택할 수는 없어요.
  4. Specify number of Spot Instances 대화 상자의 Number of instances to interrupt에 중단할 스팟 인스턴스 수를 입력하고 Confirm을 선택해요. 참고 이 숫자는 플릿의 스팟 인스턴스 수나 AWS FIS가 실험당 중단할 수 있는 스팟 인스턴스 수에 대한 쿼터를 초과할 수 없어요.
  5. Initiate Spot Instance interruption 대화 상자의 Service access에서 기본 역할을 사용하거나 기존 역할을 선택해요. 기존 역할을 선택하려면 Use an existing service role을 선택하고, IAM role에서 사용할 역할을 선택해요.
  6. 스팟 인스턴스 중단을 시작할 준비가 되면 Initiate interruption을 선택해요.

AWS FIS 콘솔로 스팟 인스턴스 중단을 테스트하는 더 고급 실험 만들기

  1. Amazon EC2 콘솔(https://console.aws.amazon.com/ec2/)을 엽니다.
  2. 탐색 창에서 Spot Requests를 선택해요.
  3. Actions, Create advanced experiments을 선택해요. AWS FIS 콘솔이 열려요. 자세한 내용은 AWS Fault Injection Service User Guide의 Tutorial: Test Spot Instance interruptions using AWS FIS를 참고하세요.

스팟 인스턴스 중단 확인 (Verify the Spot Instance interruption)

중단을 시작한 후 다음이 발생해요.

  • 스팟 인스턴스가 인스턴스 리밸런싱 권장(rebalance recommendation)을 받아요.
  • AWS FIS가 인스턴스를 중단하기 2분 전에 스팟 인스턴스 중단 알림(interruption notice)이 발행돼요.
  • 2분 후 스팟 인스턴스가 중단돼요.
  • AWS FIS가 중지한 스팟 인스턴스는 다시 시작할 때까지 중지된 상태로 유지돼요.

중단을 시작한 후 인스턴스가 중단되었는지 확인하기

  1. Amazon EC2 콘솔(https://console.aws.amazon.com/ec2/)을 엽니다.
  2. 탐색 창에서 Spot Requests와 Instances를 별도의 브라우저 탭이나 창으로 열어요.
  3. Spot Requests에서 스팟 인스턴스 요청이나 스팟 플릿 요청을 선택해요. 초기 상태는 fulfilled예요. 인스턴스가 중단된 후 상태는 중단 동작에 따라 다음과 같이 바뀌어요.
    • terminate – 상태가 instance-terminated-by-experiment로 바뀌어요.
    • stop – 상태가 marked-for-stop-by-experiment로 바뀌고 그다음 instance-stopped-by-experiment로 바뀌어요.
  4. Instances에서 스팟 인스턴스를 선택해요. 초기 상태는 Running이에요. 스팟 인스턴스 중단 알림을 받은 지 2분 후에 상태는 중단 동작에 따라 다음과 같이 바뀌어요.
    • stop – 상태가 Stopping으로 바뀌고 그다음 Stopped로 바뀌어요.
    • terminate – 상태가 Shutting-down으로 바뀌고 그다음 Terminated로 바뀌어요.

쿼터 (Quotas)

AWS 계정에는 AWS FIS가 실험당 중단할 수 있는 스팟 인스턴스 수에 대한 다음 기본 쿼터가 있어요.

Name Default Adjustable Description
Target SpotInstances for aws:ec2:send-spot-instance-interruptions Each supported Region: 5 Yes The maximum number of Spot Instances that aws:ec2:send-spot-instance-interruptions can target when you identify targets using tags, per experiment.

쿼터 증가를 요청할 수 있어요. 자세한 내용은 Service Quotas User Guide의 쿼터 증가 요청을 참고하세요.

AWS FIS의 모든 쿼터를 보려면 Service Quotas 콘솔을 열고 탐색 창에서 AWS services를 선택한 다음 AWS Fault Injection Service를 선택해요. AWS Fault Injection Service의 모든 쿼터는 AWS Fault Injection Service User Guide에서도 볼 수 있어요.

더 알아보기 (Learn more)