Spot Fleet 요청 취소(삭제)하기

Spot Fleet 요청 취소(삭제)하기 (Cancel (delete) a Spot Fleet request)

중요: Spot Fleet은 투자 계획이 없는 레거시 API를 사용해요. EC2 Fleet이나 Auto Scaling 그룹을 사용할 것을 권장해요. 자세한 내용은 "Which is the best fleet method to use?"를 참고하세요.

출처: 문서

본문

Spot Fleet이 더 이상 필요 없으면 Spot Fleet 요청을 취소해 요청을 삭제할 수 있어요. 플릿 요청을 취소하면 플릿과 연결된 모든 Spot 요청도 취소되어 새 Spot 인스턴스가 시작되지 않아요.

Spot Fleet 요청을 취소할 때는 그 인스턴스(On-Demand와 Spot 모두)를 종료할지도 지정해야 해요.

경고: 인스턴스 종료는 영구적이고 되돌릴 수 없어요. 종료 후에는 연결할 수 없고 복구할 수도 없어요. 종료 시 삭제되도록 구성된 연결된 EBS 볼륨과 인스턴스 스토어 볼륨의 모든 데이터는 영구적으로 손실돼요. 종료 후 유지하려는 데이터는 종료 전에 영구 스토리지에 백업하세요.

플릿 요청 취소 시 인스턴스 종료를 지정하면 요청이 cancelled_terminating 상태로 들어가요. 그렇지 않으면 cancelled_running 상태로 들어가고, 인스턴스는 중단되거나 수동으로 종료할 때까지 계속 실행돼요.

제한 사항

단일 요청에서 최대 100개까지 플릿을 취소할 수 있어요. 지정된 수를 초과하면 어떤 플릿도 취소되지 않아요.

콘솔:

  1. Amazon EC2 콘솔(https://console.aws.amazon.com/ec2/)을 엽니다.
  2. 탐색 창에서 Spot Requests를 선택해요.
  3. Spot Fleet 요청을 선택해요.
  4. Actions, Cancel request를 선택해요.
  5. Cancel Spot request 대화 상자에서 다음을 수행해요.
    • Spot Fleet 요청을 취소하면서 연결된 인스턴스도 동시에 종료하려면 Terminate instances 체크박스를 선택한 채 두세요. 인스턴스 종료 없이 취소하려면 체크박스를 해제하세요.
    • Confirm을 선택해요.

AWS CLI — 취소 및 인스턴스 종료 — cancel-spot-fleet-requests 명령에 --terminate-instances 옵션을 사용해요.

aws ec2 cancel-spot-fleet-requests \
    --spot-fleet-request-ids sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \
    --terminate-instances

다음은 예시 출력이에요.

{
    "SuccessfulFleetRequests": [
        {
            "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE",
            "CurrentSpotFleetRequestState": "cancelled_terminating",
            "PreviousSpotFleetRequestState": "active"
        }
    ],
    "UnsuccessfulFleetRequests": []
}

인스턴스 종료 없이 취소 — --no-terminate-instances 옵션을 사용해요.

aws ec2 cancel-spot-fleet-requests \
    --spot-fleet-request-ids sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE \
    --no-terminate-instances

PowerShell — Stop-EC2SpotFleetRequest cmdlet에 -TerminateInstance 파라미터를 사용해요.

Stop-EC2SpotFleetRequest `
    -SpotFleetRequestId "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" `
    -TerminateInstance $true

더 알아보기