次の AWS CLI 設定例は、Amazon DocumentDB 5.0.0 を実行している Amazon DocumentDB プロビジョニング済みクラスターを使用した移行プロセスを示しています。このクラスターでは、DocumentDB サーバーレスの使用を開始するためにエンジンバージョンのアップグレードは必要ありません。クラスターは sample という名前で、sample、sample2、および sample3 という名前の 3 つのプロビジョニングされたインスタンスで始まります。この例では、これら 3 つのインスタンスは 3 つのサーバーレスインスタンスに置き換えられます。このクラスターは sample-cluster という名前で、sample-provisioned-instance-1 および sample-provisioned-instance-2 という名前の 2 つのプロビジョニング済みインスタンス、ライターインスタンスとリーダーインスタンスから始まります。
次の例では、各 ユーザー入力プレースホルダー を独自の情報または設定パラメータに置き換えます。
aws docdb describe-db-clusters オペレーションを使用して、クラスターのステータスを確認します。次のコードは、クラスター sample-cluster のステータスを検索し、結果をテーブルに出力します。
aws docdb describe-db-clusters \
--db-cluster-identifier sample-cluster \
--query 'DBClusters[*].DBClusterMembers' \
--output table
--------------------------------------------------------------------------------------------------------
| DescribeDBClusters |
+--------------------------------+---------------------------------+------------------+----------------+
| DBClusterParameterGroupStatus | DBInstanceIdentifier | IsClusterWriter | PromotionTier |
+--------------------------------+---------------------------------+------------------+----------------+
| in-sync | sample-provisioned-instance-2 | False | 1 |
| in-sync | sample-provisioned-instance-1 | True | 1 |
+--------------------------------+---------------------------------+------------------+----------------+
クラスターのスケーリング設定を追加します。
aws docdb modify-db-cluster \
--db-cluster-identifier sample-cluster \
--serverless-v2-scaling-configuration MinCapacity=0.5,MaxCapacity=16
サーバーレスインスタンスを追加します。この例では、sample-serverless-instance-1 および sample-serverless-instance-2 という名前の新しいサーバーレスインスタンスが追加されています。
aws docdb create-db-instance \
--db-cluster-identifier sample-cluster \
--db-instance-identifier sample-serverless-instance-1 \
--db-instance-class db.serverless \
--engine docdb
aws docdb create-db-instance \
--db-cluster-identifier sample-cluster \
--db-instance-identifier sample-serverless-instance-2 \
--db-instance-class db.serverless \
--engine docdb
次を入力して、サーバーレスインスタンスが使用可能になるまで待機してから次に進みます。
aws docdb wait db-instance-available \
--db-instance-identifier sample-serverless-instance-1
aws docdb wait db-instance-available \
--db-instance-identifier sample-serverless-instance-2
フェイルオーバーを実行して、新しい sample-serverless-instance-1 インスタンスをクラスターのライターにします。
aws docdb failover-db-cluster \
--db-cluster-identifier sample-cluster \
--target-db-instance-identifier sample-serverless-instance-1
フェイルオーバーが完了するまでに数秒かかり、その後 sample-serverless-instance-1 がクラスターのライターになります。これを次の入力で検証します。
aws docdb describe-db-clusters \
--db-cluster-identifier sample-cluster \
--query 'DBClusters[*].DBClusterMembers' \
--output table
--------------------------------------------------------------------------------------------------------
| DescribeDBClusters |
+--------------------------------+---------------------------------+------------------+----------------+
| DBClusterParameterGroupStatus | DBInstanceIdentifier | IsClusterWriter | PromotionTier |
+--------------------------------+---------------------------------+------------------+----------------+
| in-sync | sample-provisioned-instance-2 | False | 1 |
| in-sync | sample-provisioned-instance-1 | False | 1 |
| in-sync | sample-serverless-instance-2 | False | 1 |
| in-sync | sample-serverless-instance-1 | True | 1 |
+--------------------------------+---------------------------------+------------------+----------------+
最後に、元のプロビジョニングされたインスタンスを削除します。
aws docdb delete-db-instance \
--db-instance-identifier sample-provisioned-instance-1
aws docdb delete-db-instance \
--db-instance-identifier sample-provisioned-instance-2