롤백 트리거를 사용하여 경보 위반 시 CloudFormation 스택을 롤백합니다.
롤백 트리거를 사용하면 스택 생성 및 업데이트 중에 AWS CloudFormation에서 애플리케이션의 상태를 모니터링할 수 있으며, 지정한 경보의 임곗값을 애플리케이션에서 위반하는 경우 해당 작업을 롤백할 수 있습니다. 생성한 각 롤백 트리거에 대해 CloudFormation이 모니터링해야 하는 CloudWatch 경보를 지정합니다. CloudFormation은 스택 생성 또는 업데이트 작업 도중, 그리고 모든 리소스가 배포된 이후 지정된 시간 동안 지정된 경보를 모니터링합니다. 스택 작업 도중 또는 모니터링 기간 동안 ALARM
상태로 전환되는 경보가 하나라도 있을 경우 CloudFormation이 전체 스택 작업을 롤백합니다.
모니터링 시간을 0~180분 사이로 설정할 수 있습니다. CloudFormation은 스택 생성 또는 업데이트 작업이 필요한 모든 리소스를 배포한 후 이 시간 동안 모든 롤백 트리거를 모니터링합니다. 스택 작업 도중 또는 이 모니터링 기간 동안 ALARM
상태로 전환되는 경보가 하나라도 있을 경우 CloudFormation이 전체 스택 작업을 롤백합니다. 그런 다음, 업데이트 작업을 위해, 아무 경보도 ALARM
상태로 전환하지 않고 모니터링 기간이 경과한 경우 CloudFormation이 평소와 같이 기존 리소스를 폐기합니다. 모니터링 시간은 설정하지만 롤백 트리거는 지정하지 않는 경우에도 CloudFormation은 업데이트를 작업을 위해 기존 리소스를 제거하기 전에 지정된 기간 동안 대기합니다. 이 모니터링 기간을 사용하여 원하는 수동 스택 검증을 수행하고 필요에 따라 수동으로 스택 생성 또는 업데이트를 취소할 수 있습니다. 모니터링 시간을 0분으로 설정할 경우에도 CloudFormation이 스택 생성 및 업데이트 작업 도중 롤백 트리거를 모니터링하고 경보가 하나라도 ALARM
상태로 전환되면 작업을 롤백합니다. 그런 다음, 경보 위반이 없을 경우 업데이트 작업을 위해 작업이 완료되는 즉시 기존 리소스를 폐기하기 시작합니다.
기본적으로, CloudFormation은 경보가 INSUFFICIENT_DATA
상태가 아니라 ALARM
상태로 전환되는 경우에만 스택 작업을 롤백합니다. 경보가 INSUFFICIENT_DATA
상태로 전환되는 경우에도 CloudFormation이 스택 작업을 롤백하도록 하려면 누락 데이터를 breaching
으로 처리하도록 CloudWatch 경보를 수정합니다. 자세한 설명은 Amazon CloudWatch 사용자 가이드의 CloudWatch 경보가 누락된 데이터를 처리하는 방법 구성을 참조하세요.
CloudFormation은 업데이트 작업 도중 스택을 롤백할 때 롤백 트리거를 모니터링하지 않습니다.
최대 5개의 롤백 트리거를 추가할 수 있습니다. 롤백 트리거를 추가하려면 CloudWatch 경보의 Amazon 리소스 이름(ARN)을 지정합니다. 현재 AWS::CloudWatch::Alarm
및 AWS::CloudWatch::CompositeAlarm
유형은 롤백 트리거로 사용할 수 있습니다. CloudWatch 경보에 대한 자세한 내용은 Amazon CloudWatch 사용 설명서의 Amazon CloudWatch 경보 사용을 참조하세요.
지정된 Cloudwatch 경보가 누락되는 경우 전체 스택 작업이 실패하고 롤백됩니다.
CloudWatch에 액세스하려면 자격 증명이 필요합니다. 이러한 자격 증명에는 리소스에 대한 CloudWatch 지표 데이터를 검색하는 것 같이 AWS 리소스에 액세스할 수 있는 권한이 있어야 합니다. 자세한 내용은 Amazon CloudWatch 사용 설명서의 CloudWatch에 대한 인증 및 액세스 제어를 참조하세요.
스택 생성 또는 업데이트 중에 롤백 트리거 추가
스택 생성 또는 업데이트 중에 롤백 트리거를 추가하는 방법
-
0
~180
분 사이의 모니터링 시간을 입력합니다. 기본값은0
입니다. -
롤백 트리거로 사용할 CloudWatch 경보 또는 복합 경보의 ARN을 지정하고 Add CloudWatch alarm ARN(CloudWatch 경보 ARN 추가)을 선택합니다.
예를 들어 다음은 CloudWatch 경보 또는 복합 경보
arn:aws:cloudwatch:
에 대한 ARN입니다.us-east-1
:123456789012:alarm:MyAlarmName
-
Next(다음)를 선택하고 스택 세부 정보를 검토합니다.
-
스택 생성 설정과 스택의 추정 비용을 검토한 후에는 [스택 생성(Create stack)]을 선택하여 스택을 시작합니다.
변경 세트에 롤백 트리거 추가
변경 세트에 롤백 트리거를 추가하려면 스택 템플릿을 선택하여 변경 세트를 생성하고 롤백 구성 섹션에서 CloudWatch 경보를 지정합니다.
-
변경 세트 생성 또는 업데이트 중 Configure stack options(스택 옵션 구성) 페이지의 Advanced options(고급 옵션)에서 Rollback configuration(롤백 구성) 섹션을 확장합니다.
-
0
~180
분 사이의 모니터링 시간을 입력합니다. 기본값은0
입니다. -
롤백 트리거로 사용할 CloudWatch 경보 또는 복합 경보의 ARN을 지정하고 Add CloudWatch alarm ARN(CloudWatch 경보 ARN 추가)을 선택합니다.
예를 들어 다음은 CloudWatch 경보 또는 복합 경보
arn:aws:cloudwatch:
에 대한 ARN입니다.us-east-1
:123456789012:alarm:MyAlarmName
-
Next(다음)를 선택하고 스택 세부 정보를 검토합니다.
-
스택 생성 설정과 스택의 추정 비용을 검토한 후에는 Create change set(변경 세트 생성)를 선택합니다.
-
Create change set(변경 세트 생성) 모듈을 검토하고 Create change set(변경 세트 생성)를 선택합니다.
-
(선택 사항) 변경 세트를 기반으로 새 스택 생성을 완료하려면 Execute(실행)를 선택하고 롤백 구성을 지정한 다음 Execute change set(변경 세트 실행)를 선택합니다.
스택에 대한 롤백 트리거 보기
스택에 대한 롤백 트리거를 보려면 Rollback configuration(롤백 구성) 섹션을 봅니다.
-
Stacks(스택) 페이지의 왼쪽 목록에서 보려는 스택을 선택합니다.
-
Stack info(스택 정보) 탭에서 Rollback configuration(롤백 구성) 섹션을 확장합니다.
결과: 롤백 트리거가 지정된 경우 Rollback configuration(롤백 구성) 섹션에 롤백 트리거가 표시됩니다.
변경 세트에 대한 롤백 트리거 보기
변경 세트에 대한 롤백 트리거를 보려면 Rollback configuration(롤백 구성) 섹션을 봅니다.
-
Stacks(스택) 페이지의 왼쪽 목록에서 보려는 스택을 선택합니다.
-
Change sets(변경 세트) 탭을 선택하고 보려는 변경 세트를 선택합니다.
-
Input(입력) 탭을 선택하고 Rollback configuration(롤백 구성) 섹션을 봅니다.
결과: 롤백 트리거가 지정된 경우 Rollback configuration(롤백 구성) 섹션에 롤백 트리거가 표시됩니다.