AWS Elastic Beanstalk 環境を削除しようとすると、環境のイベントストリームに次のエラーメッセージが表示されます。 「Deleting RDS database named: xxxxxxxxx failed Reason: DBInstance xxxxxxxxx was not found during DescribeDBInstances.」 次に、別のエラーメッセージが表示されます。 「Stack deletion failed: The following resource(s) failed to delete: [AWSEBRDSDatabase].」
簡単な説明
このエラーは、Elastic Beanstalk 環境の一部として作成された Amazon Relational Database Service (Amazon RDS) データベースが削除されたときに発生します。データベースのライフサイクルは Elastic Beanstalk 環境に関連付けられています。Amazon RDS コンソールからデータベースを削除 (帯域外削除と呼びます) すると、Elastic Beanstalk がデータベースリソースと同期しなくなる可能性があります。つまり、Elastic Beanstalk 環境は削除できないということです。
**注:**Elastic Beanstalk によって作成されたリソースは、Elastic Beanstalk コンソール、Elastic Beanstalk コマンドラインインターフェイス (EB CLI)、または AWS コマンドラインインターフェイス (AWS CLI) を使用して管理するのがベストプラクティスです。
解決策
**注:**AWS CLI コマンドの実行中にエラーが発生した場合は、最新の AWS CLI バージョンを使用していることを確認してください。
-
AWS CloudFormation コンソールを開きます。
-
ナビゲーションペインで、[スタック] を選択します。
-
[スタック名] 列で、削除する Elastic Beanstalk 環境のスタックを選択します。
**注:**スタックの [ステータス] 列には [Delete_FAILED] と表示されます。AWS CloudFormation コンソールの [説明] 列にある環境 ID が、ご使用の Elastic Beanstalk 環境の環境 ID と一致していることを確認します。
-
[削除] を選択します。
-
ポップアップウィンドウで、[保持するリソース-オプション] セクションの [AWSEBRDSDatabase] チェックボックスを選択し、[スタックを削除] を選択します。
**注:**AWSebRDSDatabase は、スタックを削除するときに保持する、またはスキップしたいリソースの名前です。データベースリソースをスキップすると、スタックを正常に削除できます。AWS CLI を使用してスタックを削除するには、以下のコマンドを実行します。
aws cloudformation delete-stack --stack-name YourStackName --retain-resources AWSEBRDSDatabase --region us-east-1
-
スタックが DELETE_COMPLETE ステータスに変更されたら、Elastic Beanstalk 環境を終了します。
**重要:**AWS CLI で、スタック名と AWS リージョンの正しい値を入力します。
関連情報
トラブルシューティング