인스턴스 종료 보호 변경하기

인스턴스 종료 보호 변경하기

Amazon EC2 API로 인스턴스가 실수로 종료되는 것을 방지하려면 — TerminateInstances를 직접 호출하든 Amazon EC2 콘솔 같은 다른 인터페이스를 통하든 — 인스턴스에 termination protection(종료 보호)을 활성화하세요. 이 절에서 종료 보호를 설정·해제하는 방법을 살펴볼게요.

출처: 문서

본문

Amazon EC2 API로 인스턴스가 실수로 종료되는 것을 방지하려면 — TerminateInstances를 직접 호출하든 Amazon EC2 콘솔 같은 다른 인터페이스를 통하든 — 인스턴스에 termination protection(종료 보호)을 활성화하세요. DisableApiTermination 속성이 인스턴스를 종료할 수 있는지 여부를 제어해요. 기본적으로 인스턴스의 종료 보호는 비활성화되어 있어요. DisableApiTermination 속성 값은 인스턴스를 시작할 때나, 인스턴스가 실행 중이거나 중지된 동안 설정할 수 있어요.

DisableApiTermination 속성은 InstanceInitiatedShutdownBehavior 속성이 terminate로 설정된 경우, 인스턴스에서 종료를 시작해(예: 시스템 종료용 운영 체제 명령 사용) 인스턴스를 종료하는 것을 막지는 않아요. 자세한 내용은 Change instance initiated shutdown behavior를 참고하세요.

고려 사항
  • 종료 보호를 활성화해도 인스턴스를 종료하는 예약 이벤트가 있을 때 AWS가 인스턴스를 종료하는 것을 막지는 않아요.
  • 종료 보호를 활성화해도 인스턴스가 비정상이거나 축소(scale-in) 이벤트 중일 때 Amazon EC2 Auto Scaling이 인스턴스를 종료하는 것은 막지 않아요. 인스턴스 scale-in 보호로 스케일링 시 Auto Scaling 그룹이 특정 인스턴스를 종료할 수 있는지 제어할 수 있어요. ReplaceUnhealthy 스케일링 프로세스 일시 중단으로 Auto Scaling 그룹이 비정상 인스턴스를 종료할 수 있는지 제어할 수 있어요.
  • Spot Instances에는 종료 보호를 활성화할 수 없어요.

Console(콘솔) —

시작 시 인스턴스에 종료 보호를 활성화하려면
  • Amazon EC2 콘솔을 https://console.aws.amazon.com/ec2/에서 엽니다.
  • 대시보드에서 Launch instance를 선택합니다.
  • Advanced details를 펼칩니다. Termination protection에서 Enable을 선택합니다.
  • 인스턴스 세부 정보 지정을 마칠 때 Launch instance를 선택합니다.
인스턴스의 종료 보호를 변경하려면
  • Amazon EC2 콘솔을 https://console.aws.amazon.com/ec2/에서 엽니다.
  • 탐색 창에서 Instances를 선택합니다.
  • 인스턴스를 선택합니다.
  • Actions, Instance settings, Change termination protection을 선택합니다.
  • Termination protection에서 Enable을 선택하거나 해제합니다.
  • Save를 선택합니다.

AWS CLI —

인스턴스에 종료 보호를 활성화하려면

modify-instance-attribute 명령을 사용합니다.

aws ec2 modify-instance-attribute \
--instance-id i-1234567890abcdef0 \
--disable-api-termination
인스턴스에 종료 보호를 비활성화하려면

modify-instance-attribute 명령을 사용합니다.

aws ec2 modify-instance-attribute \
--instance-id i-1234567890abcdef0 \
--no-disable-api-termination

PowerShell —

인스턴스에 종료 보호를 활성화하려면

Edit-EC2InstanceAttribute cmdlet을 사용합니다.

Edit-EC2InstanceAttribute `
-InstanceId i-1234567890abcdef0 `
-DisableApiTermination $true
인스턴스에 종료 보호를 비활성화하려면

Edit-EC2InstanceAttribute cmdlet을 사용합니다.

Edit-EC2InstanceAttribute `
-InstanceId i-1234567890abcdef0 `
-DisableApiTermination $false

종료 보호가 있는 여러 인스턴스 종료하기

같은 요청에서 여러 가용 영역에 걸쳐 여러 인스턴스를 종료할 때, 지정된 인스턴스 중 하나 이상에 종료 보호가 활성화되어 있으면 요청이 다음 결과와 함께 실패해요.

  • 보호된 인스턴스와 같은 가용 영역에 있는 지정된 인스턴스는 종료되지 않아요.
  • 다른 가용 영역에 있고, 다른 지정된 인스턴스 중 보호된 것이 없는 인스턴스는 성공적으로 종료돼요.
예시

두 가용 영역에 다음과 같은 네 개의 인스턴스가 있다고 가정해 봅시다.

인스턴스 가용 영역 종료 보호
Instance 1 AZ A 비활성화
Instance 2 (AZ A) 비활성화
Instance 3 AZ B 활성화
Instance 4 (AZ B) 비활성화

이 모든 인스턴스를 같은 요청에서 종료하려고 하면, 요청이 다음 결과와 함께 실패로 보고돼요.

  • Instance 1과 Instance 2는 어느 쪽도 종료 보호가 활성화되어 있지 않으므로 성공적으로 종료돼요.
  • Instance 3이 종료 보호로 활성화되어 있으므로 Instance 3과 Instance 4는 종료에 실패해요.

더 알아보기