AWS CloudFormation 스택을 삭제하고 싶은데 스택이 DELETE_FAILED 상태로 멈췄습니다.
간략한 설명
다음과 같은 이유 중 하나로 스택이 DELETE_FAILED 상태에서 멈췄을 수 있습니다.
- 스택 리소스에 삭제할 수 없는 종속 객체 또는 기타 종속성이 있습니다.
- 사용 중인 서비스 역할이 유효하지 않거나 AWS Identity and Access Management(IAM) 역할을 수임할 수 없습니다.
- 사용자 지정 리소스가 기본 응답 제한 시간 내에 안정화되지 않습니다.
해결 방법
참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
삭제할 수 없는 종속성이 있는 스택 삭제
종속성 문제는 대역 외 변경을 수행할 때 발생할 수 있습니다. 예를 들어 스택에 속한 보안 그룹이 스택에 속하지 않은 탄력적 네트워크 인터페이스에 연결된 경우 보안 그룹을 삭제할 수 없기 때문에 스택을 삭제할 수 없습니다. 스택을 삭제하되 종속성이 있는 리소스는 유지하려면 CloudFormation 콘솔을 사용하여 스택을 강제 삭제합니다. 또는 다음 AWS CLI 명령을 실행합니다.
DELETE_FAILED 상태에서 멈춘 스택을 삭제하고 삭제되지 않은 리소스를 유지하려면 다음 delete-stack 명령을 실행합니다.
aws cloudformation delete-stack --stack-name my-stack --retain-resources myresource1 myresource2
참고: my-stack을 스택 이름으로, myresource1과 myresource2를 삭제하지 않은 리소스의 ID로 바꿉니다.
CloudFormation은 스택을 삭제하되 사용자가 유지한 리소스는 삭제하지 않습니다. 스택 상태가 DELETE_COMPLETE로 변경됩니다.
참고: 유지된 리소스에 대한 요금이 청구되지 않도록 하려면 스택을 삭제한 후 유지된 리소스를 수동으로 삭제하십시오.
삭제할 수 없는 종속성이 있는 스택을 강제로 삭제하려면 다음 delete-stack 명령을 실행합니다.
aws cloudformation delete-stack --stack-name my-stack --deletion-mode FORCE_DELETE_STACK
참고: my-stack을 스택 이름으로 바꿉니다.
유효하지 않은 역할을 사용하는 스택 삭제
더 이상 존재하지 않는 서비스 역할을 사용하는 스택을 삭제하려고 하면 다음 오류가 발생합니다.
"An error occurred (ValidationError) when calling the DeleteStack operation: Role is invalid or cannot be assumed."
이 문제를 해결하려면 다음 단계를 완료하십시오.
- CloudFormation 콘솔을 엽니다.
- 삭제하려는 스택을 선택합니다.
- 스택 정보 탭에 있는 스택의 IAM 역할 이름을 기록해 둡니다.
- 이전 단계의 IAM 역할과 이름이 같은 IAM 역할을 생성합니다. 중요: IAM 역할을 생성할 때 스택의 리소스를 삭제할 수 있는 권한이 있는지 확인하십시오.
- CloudFormation 콘솔을 사용하여 스택을 삭제합니다.
삭제된 역할에 대한 권한이 기억 나지 않는 경우 동일한 권한을 가진 새 역할을 생성하여 스택을 삭제할 수는 없습니다. 새 역할을 가져온 다음 새 역할로 delete-stack 명령을 실행하여 스택을 삭제합니다.
aws cloudformation delete-stack --stack-name my-stack --role-arn new_role
참고: my-stack을 스택 이름으로, new_role을 새 역할의 Amazon 리소스 번호(ARN)로 바꾸십시오.
안정화되지 않은 사용자 지정 리소스의 스택 삭제
이 문제를 해결하려면 CloudFormation에서 DELETE_FAILED 상태 또는 DELETE_IN_PROGRESS 상태로 멈춘 Lambda 지원 사용자 지정 리소스를 삭제하려면 어떻게 해야 합니까?를 참조하십시오.
관련 정보
DeleteStack