AWS Elastic Beanstalk 환경을 삭제하려고 하면 환경의 이벤트 스트림에 다음과 같은 오류 메시지가 표시됩니다. "이름이xxxxxxxxx인 RDS 데이터베이스를 삭제하지 못했습니다. 이유: DescribeDBInstance를 실행하는 동안 DBInstance xxxxxxxxx을(를) 찾을 수 없습니다.” 다음으로 또 다른 오류 메시지가 표시됩니다. "스택 삭제 실패: 다음 리소스를 삭제하지 못했습니다. [AWSEBRDSDatabase]."
이러한 오류를 해결하고 Elastic Beanstalk 환경을 삭제하려면 어떻게 해야 합니까?
간략한 설명
Elastic Beanstalk 환경의 일부로 생성된 Amazon Relational Database Service(Amazon RDS) 데이터베이스를 삭제하면 이 오류가 발생합니다. 해당 데이터베이스의 수명 주기는 Elastic Beanstalk 환경에 연결됩니다. Amazon RDS 콘솔에서 해당 데이터베이스를 삭제하면(대역 외 삭제라고 함) Elastic Beanstalk가 데이터베이스 리소스와 동기화되지 않아 삭제할 수 없습니다.
해결 방법
1. AWS CloudFormation 콘솔을 엽니다.
2. 탐색 창에서 [스택]을 선택합니다.
3. [스택 이름] 열에서 삭제하려는 Elastic Beanstalk 환경의 스택을 선택합니다.
참고: 스택의 [상태] 열에 DELETE_FAILED가 표시되어야 합니다.
팁: AWS CloudFormation 콘솔의 [설명] 열에 있는 환경 ID가 Elastic Beanstalk 환경의 환경 ID와 일치하는지 확인하여 스택을 식별할 수 있습니다.
4. [삭제]를 선택합니다.
5. 팝업 창의 [유지하려는 리소스–선택] 섹션에서 AWSEBRDSDatabase 확인란을 선택한 다음 [스택 삭제]를 선택합니다.
참고: AWSEBRDSDatabase는 스택을 삭제할 때 유지하거나 건너뛸 리소스의 이름입니다. 이 데이터베이스 리소스를 건너뛰면 스택이 성공적으로 삭제될 수 있습니다.
팁: AWS 명령줄 인터페이스(AWS CLI)를 사용하여 다음 명령으로 스택을 삭제할 수도 있습니다.
aws cloudformation delete-stack --stack-name YourStackName --retain-resources AWSEBRDSDatabase
6. 스택이 DELETE_COMPLETE 상태로 변경된 후 Elastic Beanstalk 환경을 종료합니다.