クラウド上の Atlas クラスターの配置と管理に使用する Atlas CLI コマンドの場合、--autoScalingMode オプションを使用してクラスターがリソーススケーリングを処理する方法を構成できます。このオプションを次のコマンドで使用して、クラスター シャードが一緒に増やすか、個別にスケーリングするかを指定できます。
atlas-deployments-setupatlas-deployments-deleteatlas-deployments-listatlas-deployments-pauseatlas-deployments-start
--autoScalingMode オプションには次の値があります。
atlas setup --clusterName symmetricShardCluster --provider AWS --autoScalingMode clusterWideScaling --projectId 5e2211c17a3e5a48f5497de3 --tier M10
clusterWideScaling で構成されたクラスターの場合、JSON出力は次のようになります。
{ "clusterType": "SHARDED", "name": "symmetricShardCluster", "diskSizeGB": 0, "replicationSpecs": [ { "id": "internalId", "numShards": 2, "regionConfigs": [ { "electableSpecs": { ... },the "readOnlySpecs": { ... }, ... } ], "zoneName": "string" } ], ... }
出力の詳細については、getCluster エンドポイントを参照してください。--autoScalingMode オプションを省略すると、コマンドはデフォルトで clusterWideScalingモードになります。
atlas setup --clusterName asymmetricShardCluster --provider AWS --autoScalingMode independentShardScaling --projectId 5e2211c17a3e5a48f5497de3 --tier M10
independentShardScaling で構成されたクラスターの場合、JSON出力は次のようになります。
{ "clusterType": "SHARDED", "name": "asymmetricShardCluster", "replicationSpecs": [ { "id": "externalId", "regionConfigs": [ { "electableSpecs": { "diskSizeGB": 10, ... }, "readOnlySpecs": { "diskSizeGB": 10, ... }, } ], "zoneId": "string",// for GET/UPDATE "zoneName": "string" }, ... ] }
JSON出力には、単一のシャードのプロパティを記述する replicationSpecsオブジェクトが含まれます。numShardsフィールドの代わりに、replicationSpecs 要素がシャードの数を定義します。diskSizeGBフィールドは各シャードの replication_specs.regionConfigオブジェクト内にあります。グローバルクラスターのゾーンを識別する zoneIdフィールドが出力に返されます。出力の詳細については、getCluster エンドポイントを参照してください。
独立シャード スケーリング を使用するシャーディングされたクラスターをクラスター全体のスケーリングに戻すには、次の手順を実行します。
独立したシャードの拡大スキーマを検索します。
Atlas Administration API 1 つのプロジェクトから 1 つのクラスターを返す エンドポイントにリクエストを送信します。このリクエストでは、シャードごとに 1 つの replicationSpecs エントリが返されます。
対称の replicationSpecs 配列を構成します。
選択したテンプレートスキーマを基に、electableSpecs と readOnlySpecs の各シャードの instanceSize 値が同一である PATCHリクエストのペイロードを作成します。
{ "replicationSpecs": [ { "id": "SHARD_ID_0", "regionConfigs": [ { "providerName": "AWS", "regionName": "US_EAST_1", "zoneName": "Zone1", "electableSpecs": { "instanceSize": "M60", "nodeCount": 3, "diskSizeGB": 2048, "ebsVolumeType": "PROVISIONED", "diskIOPS": 4000 }, "readOnlySpecs": { . . . }, "analyticsSpecs": { . . . } } ] }, { "id": "SHARD_ID_1", "regionConfigs": [ . . . ] }, . . . ] }
既存のシャードの id 値を保持する必要があります。すべてのシャードで階層、ストレージ、ディスク設定を一致させます。
PATCHを適用します。
以前に定義されたペイロードを使用して、Atlas Administration APIに1 つのプロジェクトの 1 つのクラスターを更新エンドポイントにリクエストを送信します。これにより、クラスター内のすべてのシャードのローリング サイズの変更が開始されます。
シャードのサイズを変更して対称性を復元したら、2024-10-23 APIリソースバージョンの使用に戻すことができます。このバージョンは対称 replicationSpecs.numShards modelに依存します。