下列 AWS CLI 組態範例顯示使用執行 Amazon DocumentDB 5.0.0 的 Amazon DocumentDB 佈建叢集的遷移程序,這不需要引擎版本升級,即可開始使用 DocumentDB 無伺服器。叢集名為 sample
,開頭為三個名為 sample
、 sample2
和 的佈建執行個體sample3
。在此範例中,這三個執行個體將被三個無伺服器執行個體取代。叢集名為 sample-cluster
,開頭為兩個名為 sample-provisioned-instance-1
和 的佈建執行個體sample-provisioned-instance-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-2
會新增名為 sample-serverless-instance-1
和 的新無伺服器執行個體:
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