Para los comandos de la CLI de Atlas que utilice para implementar y administrar clústeres de Atlas en la nube, puede configurar cómo el clúster gestiona el escalado de recursos mediante la opción --autoScalingMode. Puede usar esta opción para los siguientes comandos para especificar si los fragmentos del clúster se escalan juntos o de forma independiente:
atlas-deployments-setupatlas-deployments-deleteatlas-deployments-listatlas-deployments-pauseatlas-deployments-start
La opción --autoScalingMode admite los siguientes valores:
atlas setup --clusterName symmetricShardCluster --provider AWS --autoScalingMode clusterWideScaling --projectId 5e2211c17a3e5a48f5497de3 --tier M10
Para clústeres configurados con clusterWideScaling, la salida JSON se parece a lo siguiente:
{ "clusterType": "SHARDED", "name": "symmetricShardCluster", "diskSizeGB": 0, "replicationSpecs": [ { "id": "internalId", "numShards": 2, "regionConfigs": [ { "electableSpecs": { ... }, "readOnlySpecs": { ... }, ... } ], "zoneName": "string" } ], ... }
Para obtener más información sobre la salida, consulta el punto final obtener Clúster. Si omites la opción --autoScalingMode, el comando pasa por defecto al modo clusterWideScaling.
atlas setup --clusterName asymmetricShardCluster --provider AWS --autoScalingMode independentShardScaling --projectId 5e2211c17a3e5a48f5497de3 --tier M10
Para clústeres configurados con independentShardScaling, la salida JSON se parece a lo siguiente:
{ "clusterType": "SHARDED", "name": "asymmetricShardCluster", "replicationSpecs": [ { "id": "externalId", "regionConfigs": [ { "electableSpecs": { "diskSizeGB": 10, ... }, "readOnlySpecs": { "diskSizeGB": 10, ... }, } ], "zoneId": "string",// for GET/UPDATE "zoneName": "string" }, ... ] }
La salida JSON incluye el objeto replicationSpecs que describe las propiedades de un único fragmento. Los elementos replicationSpecs definen el número de fragmentos en lugar del campo numShards. El campo diskSizeGB se encuentra dentro del objeto replication_specs.regionConfig de cada fragmento. El campo zoneId, que identifica la zona del clúster global, se devuelve en la salida. Para obtener más información sobre la salida, consulte el punto final getCluster.
Para revertir un clúster segmentado que utiliza escalado independiente de particiones a un escalado general de clúster, realiza el siguiente procedimiento:
Recupera el esquema de escalado de particiones independientes.
Realice una solicitud al endpoint de la Atlas Administration API Retornar un clúster de un proyecto. La solicitud devuelve una entrada replicationSpecs por partición.
Selecciona el esquema de una plantilla.
De entre los replicationSpecs, seleccione uno con el que hacer coincidir las demás particiones para una escalabilidad simétrica. Tenga en cuenta las siguientes propiedades del regionConfigs de la partición elegida:
instanceSizepara cada rol de partición, comoelectableSpecs,readOnlySpecsoanalyticsSpecs.diskSizeGB,ebsVolumeType, ydiskIOPS, o campos de almacenamiento equivalentes para los distintos proveedores de clúster.
Para garantizar la continuidad del rendimiento, seleccione su partición de nivel más alto como plantilla.
Cree un arreglo replicationSpecs simétrico.
Utilizando tu esquema de plantilla seleccionado como base, compón una carga útil de solicitud de PATCH en la que los valores de instanceSize de cada partición para electableSpecs y readOnlySpecs sean idénticos.
{ "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": [ . . . ] }, . . . ] }
Debe preservar los valores id de las particiones existentes. Iguale la configuración de nivel, almacenamiento y disco para cada partición.
Aplique PATCH el.
Haz una solicitud al endpoint de la Atlas Administration API actualizar un clúster en un Proyecto usando la carga útil definida previamente. Esto inicia un cambio de tamaño gradual de todas las particiones del clúster.
Una vez que modifiques el tamaño de tus particiones para restaurar la simetría, puedes volver a usar la versión de recurso de la API 2024-10-23. Esta versión depende del modelo simétrico replicationSpecs.numShards.