Amazon Aurora 클러스터를 삭제할 때 발생하는 오류 문제를 해결하려면 어떻게 해야 하나요?

3분 분량
0

Amazon Aurora 클러스터를 삭제하고 싶습니다. 그런데 오류 메시지가 나타납니다.         - 또는 - Amazon Relational Database Service(RDS) 콘솔에서 삭제 옵션을 사용할 수가 없습니다(회색으로 표시됨). 이 문제를 해결하고 클러스터를 삭제하려면 어떻게 해야 하나요?

간략한 설명

Amazon RDS 콘솔이나 AWS Command Line Interface(AWS CLI)를 사용해 Amazon Aurora 클러스터를 삭제할 수 있습니다. 자세한 내용은 DB 인스턴스 삭제를 참고하세요.

AWS CLI를 사용해 Aurora 클러스터를 삭제하려면 먼저 클러스터 내의 모든 DB 인스턴스를 삭제하세요. 클러스터 내의 모든 DB 인스턴스를 삭제한 후 delete-db-cluster 명령을 사용해 클러스터를 삭제할 수 있습니다. Amazon RDS 콘솔을 사용해 클러스터의 DB 인스턴스를 하나도 남김없이 삭제하면 빈 클러스터가 자동으로 삭제됩니다

해결 방법

참고: AWS CLI 명령을 실행할 때 오류가 발생하면 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.

클러스터를 삭제하기 전에 먼저 다음 사항을 고려하세요.

  • 클러스터에 DB 인스턴스가 하나뿐인 경우 Amazon RDS 콘솔을 사용해 해당 DB 인스턴스를 삭제한 후 해당 DB 인스턴스와 클러스터를 모두 삭제하세요.
  • 클러스터에 쓰기 인스턴스 하나와 하나 이상의 읽기 인스턴스/읽기 복제본이 있는 경우, 읽기 인스턴스를 삭제해도 쓰기 인스턴스와 클러스터는 영향을 받지 않습니다. 쓰기 인스턴스를 삭제하면 읽기 인스턴스가 자동으로 쓰기 인스턴스로 승격됩니다. 이 장애 조치 작업으로 인해 가동 중지가 발생합니다.

Amazon RDS 콘솔을 사용해 인스턴스가 없는 Aurora 클러스터를 삭제

Amazon RDS 콘솔에서 다음 단계를 따르세요.

  1. Amazon RDS 콘솔을 엽니다.
  2. 탐색 창에서 데이터베이스를 선택하고 클러스터를 선택합니다.
  3. 작업을 선택하고 클러스터 삭제를 선택합니다.
    참고: 클러스터 삭제가 회색 처리되어 있거나 보이지 않는 경우, 클러스터 내에 삭제해야 하는 인스턴스가 있을 수 있습니다. 이 경우 클러스터에 있는 모든 인스턴스를 삭제하세요. Amazon RDS 콘솔을 사용해 클러스터에 있는 인스턴스를 모두 삭제하면 클러스터가 자동으로 삭제됩니다.

다음과 같은 오류가 발생하면 아래 단계를 따르세요.

"This database has deletion protection option enabled, to be able to delete the last Aurora DB instance, modify the Aurora cluster and disable deletion protection"

  1. Amazon RDS 콘솔을 엽니다.
  2. 탐색 창에서 데이터베이스를 선택하고 클러스터를 선택합니다.
  3. 작업을 선택하고 클러스터 수정을 선택합니다.
  4. 삭제 보호 비활성화를 선택하고 계속을 선택합니다.
  5. 즉시 적용을 선택합니다.

AWS CLI를 사용해 Aurora 클러스터 삭제

참고: 다음 단계는 Aurora MySQL과 Aurora PostgreSQL 모두에 적용할 수 있습니다.

1.    Aurora 클러스터 삭제

다음 명령을 실행합니다.

aws rds delete-db-cluster --db-cluster-identifier sample-cluster --final-db-snapshot-identifier mydbinstancefinal

이 명령은 클러스터를 삭제하고 최종 DB 클러스터 스냅샷을 찍습니다. 최종 스냅샷을 찍고 싶지 않으면 이 명령을 실행할 때 ---skip-final-snapshot 옵션을 사용하세요. 이 명령을 실행할 때 다음과 같은 오류가 나타날 수 있습니다.

"An error occurred (InvalidDBClusterStateFault) when calling the DeleteDBCluster operation: Cluster cannot be deleted, it still contains DB instances in non-deleting state"

이는 클러스터에 인스턴스가 있어서 클러스터를 삭제할 수 없음을 나타냅니다. 클러스터를 삭제하기 전에 클러스터와 관련된 모든 인스턴스를 삭제해야 합니다.

2.    클러스터에서 인스턴스 삭제

다음 명령을 실행합니다.

aws rds delete-db-instance --db-instance-identifier sample-instance

클러스터에서 인스턴스를 삭제할 때 다음 오류 메시지 중 하나가 나타날 수 있습니다.

  • "InvalidParameterCombination: An error occurred (InvalidParameterCombination) when calling the DeleteDBInstance operation: FinalDBSnapshotIdentifier cannot be specified when deleting a cluster instance"

    클러스터에서 인스턴스를 삭제하는 명령을 실행할 때 --final-db-snapshot-identifier 옵션을 사용하면 이 오류가 발생합니다. 이 오류는 클러스터에서 인스턴스를 삭제할 때 최종 스냅샷을 찍을 수 없다는 뜻입니다. --final-db-snapshot-identifier 옵션을 제거하거나 --skip-final-snapshot 옵션을 사용한 후 다음 명령을 다시 실행하세요.

  • "InvalidDBClusterStateFault: Cannot delete the last instance of the read replica DB cluster. Promote the DB cluster to a standalone DB cluster in order to delete it”

    이 오류는 삭제하려는 Aurora 클러스터가 복제본으로 작동하고 있으나 클러스터의 최종 인스턴스를 삭제하려면 클러스터를 독립 실행형으로 승격해야 한다는 의미입니다.

3.    복제본 클러스터 승격

다음 명령을 실행해 복제본 클러스터를 승격할 수 있습니다.

aws rds promote-read-replica-db-cluster --db-cluster-identifier rds-mysql-aurora-replica-cluster

관련 정보

RDS 리소스를 삭제하거나 종료하려면 어떻게 해야 하나요?

Amazon Aurora DB 클러스터 관리

Aurora DB 클러스터의 DB 인스턴스 삭제