Amazon DocumentDB
開発者ガイド

Amazon DocumentDB クラスターの削除

Amazon DocumentDB クラスターは、AWS マネジメントコンソール または AWS CLI を使用して削除できます。

重要

クラスターを削除するには、クラスターが使用可能な状態である必要があります。停止しているクラスターを削除することはできません。クラスターが停止している場合は、まずクラスターを起動し、クラスターが使用可能になるまで待ってから、クラスターを削除します。詳細については、「Amazon DocumentDB クラスターの停止と開始」を参照してください。

削除保護

クラスターが誤って削除されることを防ぐために、削除保護を有効にできます。コンソールを使用してクラスターを作成する場合は、デフォルトで削除保護が有効になっています。ただし、AWS CLI を使用してクラスターを作成する場合、削除保護はデフォルトで無効になっています。

Amazon DocumentDB は、コンソールまたは AWS CLI を使用した削除オペレーションのどちらの実行でも、クラスターに対する削除保護を適用します。削除保護が有効になっている場合、クラスターを削除することはできません。削除に対する保護が有効化されているクラスターを削除するには、まずクラスターを変更して削除保護を無効化する必要があります。

クラスター上で削除保護を有効にしたコンソールを使用する場合、クラスターの最後のインスタンスを削除することはできません。これを削除するとクラスターも削除されるためです。AWS CLI を使用すると、削除保護されているクラスターの最後のインスタンスを削除できます。ただし、クラスター自体は削除されず、データを保持されます。クラスターに新しいインスタンスを作成して、このデータにアクセスできます。削除保護の有効化および無効化の詳細については、以下を参照してください。

AWS マネジメントコンソール の使用

AWS マネジメントコンソール を使用してクラスターを削除するには、削除保護を無効にする必要があります。

削除保護が有効になっているかどうかを確認するには

  1. AWS マネジメントコンソールにサインインして、https://console.aws.amazon.com/docdb で Amazon DocumentDB コンソールを開きます。

  2. クラスターの名前を選択して、[Cluster details (クラスターの詳細)] セクションの下部までスクロールします。[Deletion protection (削除保護)] を見つけます。削除保護が有効化されている場合は、クラスターを変更して削除保護を無効にします。クラスターの変更については、「Amazon DocumentDB クラスターの変更」を参照してください。

    
                        削除保護が有効な Amazon DocumentDB クラスターの詳細を示すスクリーンショット。

    [Deletion protection (削除保護)] が無効化されると、クラスターを削除する準備が完了します。

クラスターを削除するには

  1. ナビゲーションペインで [Clusters] を選択します。削除するクラスターを見つけ、クラスター名の左側にあるボタンを選択します。

    ヒント

    画面の左側にナビゲーションペインが表示されない場合は、ページの左上隅にあるメニューアイコン () を選択します。

  2. [Instances (インスタンス)] 列を確認して、クラスターにインスタンスがあるかどうかを判断します。

    
                        インスタンス列が強調表示されたクラスター識別子のリストを示すスクリーンショット。

    クラスターを削除する前に、そのすべてのインスタンスを削除する必要があります。詳細については、「Amazon DocumentDB インスタンスの削除」を参照してください。

  3. クラスターにインスタンスがあるかどうかに応じて、次のいずれかの手順を実行します。

    • クラスターにインスタンスがない場合は、[Actions (アクション)]、[Delete (削除)] の順に選択します。[Delete <cluster-name> (<cluster-name> を削除)] ダイアログボックスを完了したら、[Delete (削除)] を選択します。

    • クラスターに 1 つ以上のインスタンスがある場合は、次を行います。

      1. ナビゲーションペインで、[インスタンス] を選択します。

        ヒント

        画面の左側にナビゲーションペインが表示されない場合は、ページの左上隅にあるメニューアイコン () を選択します。

      2. 各クラスターごとのインスタンスを削除します。最後のインスタンスを削除すると、クラスターも削除されます。インスタンスを削除する詳細については、「Amazon DocumentDB インスタンスの削除」を参照してください。

クラスターが削除されるまでに数分かかります。クラスターのステータスをモニタリングするには、「Amazon DocumentDB でのクラスターのステータスのモニタリング」を参照してください。

AWS CLI の使用

インスタンスが関連付けられているクラスターを削除することはできません。削除する必要があるインスタンスを決定するには、次のコマンドを実行します。クラスターでグループ化されたすべてのインスタンスのリストを表示するには、--db-cluster-identifier パラメータを省略します。

AWS CLI を使用してクラスターを削除するには、まずクラスターのすべてのインスタンスを削除してから、必要に応じて削除保護を無効化し、最後にクラスターを削除します。インスタンスを削除する説明については、「Amazon DocumentDB インスタンスの削除」を参照して ださい。

最初に、クラスターのすべてのインスタンスを削除する

削除する必要があるインスタンスを決定するには、次のコマンドを実行します。クラスターでグループ化されたすべてのインスタンスのリストを表示するには、--db-cluster-identifier パラメータを省略します。

aws docdb describe-db-clusters \ --db-cluster-identifier sample-cluster \ --query 'DBClusters[*].[DBClusterIdentifier,DBClusterMembers[*].DBInstanceIdentifier]'

このオペレーションによる出力は、次のようになります (JSON 形式)。

[ [ "sample-cluster", [ "sample-instance", "sample-instance2" ] ] ]

削除するクラスターにインスタンスがある場合は、そのインスタンスを削除してから続行します。詳細については、「Amazon DocumentDB インスタンスの削除」を参照してください。

次のコードはインスタンス sample-instance を削除します。

aws docdb delete-db-instance \ --db-instance-identifier sample-instance

次に、削除保護が現在有効になっている場合にはこれを無効化します。

AWS CLI を使用してクラスターのすべてのインスタンスを削除しても、このクラスターは削除されません。クラスターも削除する必要があるときには、削除保護が無効化されている場合にのみこれを行うことができます。

クラスターに削除保護が有効化されているかどうかを判断するには、次のコマンドを実行します。すべてのクラスターの削除保護状態を表示するには、--db-cluster-identifier パラメータを省略します。

aws docdb describe-db-clusters \ --db-cluster-identifier sample-cluster \ --query 'DBClusters[*].[DBClusterIdentifier,DeletionProtection]'

このオペレーションによる出力は、次のようになります (JSON 形式)。

[ [ "sample-cluster", "enabled" ] ]

削除保護が有効になっている場合、クラスターを変更して削除保護を無効にします。クラスターで削除保護を無効にするには、次のコードを使用します。

aws docdb modify-db-cluster \ --db-cluster-identifier sample-cluster \ --no-deletion-protection \ --apply-immediately

最後に、クラスターを削除する

削除保護を無効にしたら、クラスターを削除する準備が整います。クラスターを削除するには、以下のパラメータを指定して delete-db-cluster オペレーションを使用します。

パラメータ:

  • --db-cluster-identifier — 必須。削除するクラスターの識別子。

  • --final-db-snapshot-identifier — 省略可能。最終スナップショットを作成する場合は、最終スナップショットの名前を指定した --final-db-snapshot-identifier パラメータを含める必要があります。最終スナップショットにおける名前の制約は、クラスターの場合と同じです。--final-db-snapshot-identifier または --skip-final-snapshot のどちらかを含める必要があります。

    • [1 ~ 63] バイト長の英字、数字、またはハイフンです。

    • 1 字目は文字である必要があります。

    • ハイフンを、文字列の最後に使用したり、2 つ続けて使用したりすることはできません。

    • リージョンごと、AWS アカウントごとの、すべてのクラスター (Amazon RDS、Amazon Neptune、Amazon DocumentDB) で一意であることが必要です。

  • --skip-final-snapshot — 省略可能。クラスターを削除する前に最終スナップショットを作成しない場合のみ、このパラメータを使用します。デフォルトでは、最終スナップショットを作成します。--final-db-snapshot-identifier または --skip-final-snapshot のどちらかを含める必要があります。

次のコードでは、AWS CLI を使用してクラスター sample-cluster を削除します。クラスターに関連付けられるインスタンスがある場合、あるいは削除保護が有効化されている場合、このオペレーションは失敗します。

複数 Linux、macOS、または Unix:

aws docdb delete-db-cluster \ --db-cluster-identifier sample-cluster \ --final-db-snapshot-identifier sample-cluster-final-snapshot

複数 Windows:

aws docdb delete-db-cluster ^ --db-cluster-identifier sample-cluster ^ --final-db-snapshot-identifier sample-cluster-final-snapshot

最終スナップショットを作成しないでクラスターを削除するには、以下のコマンドを使用します。

複数 Linux、macOS、または Unix:

aws docdb delete-db-cluster \ --db-cluster-identifier sample-cluster \ --skip-final-snapshot

複数 Windows:

aws docdb delete-db-cluster ^ --db-cluster-identifier sample-cluster ^ --skip-final-snapshot

delete-db-cluster オペレーションの出力は、削除するクラスターになります。

クラスターが削除されるまでに数分かかります。クラスターのステータスをモニタリングするには、「クラスターのステータスのモニタリング」を参照してください。