Cambio de la prioridad de conmutación por error de la región

Completado

El comando az cosmosdb update se usa para cambiar las características de una cuenta de Azure Cosmos DB. Estas características incluyen el cambio de las regiones, la modificación de las prioridades de conmutación por error y la habilitación de las escrituras en varias regiones.

Supongamos que tenemos una cuenta de Azure Cosmos DB que creamos en la región Este de EE. UU. con este comando. Usaremos esta cuenta como supuesto en el siguiente conjunto de ejemplos.

az cosmosdb create \
    --name '<account-name>' \
    --resource-group '<resource-group>' \
    --locations regionName='eastus'

Adición de regiones de cuenta

Suponiendo que la cuenta de Azure Cosmos DB solo contiene datos en una única región (Este de EE. UU.), podemos agregar más regiones mediante el comando az cosmosdb update. Al agregar nuevas regiones, es importante configurar las prioridades de conmutación por error de cada región mediante la sintaxis única de este comando. En este ejemplo, configuramos la región Este de EE. UU. como la primera prioridad, replicamos los datos en la región Oeste de EE. UU. y la establecimos como la segunda prioridad y, finalmente, replicamos los datos en la región Centro de EE. UU. y la establecimos como la tercera prioridad para la conmutación por error.

az cosmosdb update \
    --name '<account-name>' \
    --resource-group '<resource-group>' \
    --locations regionName='eastus' failoverPriority=0 isZoneRedundant=False \
    --locations regionName='westus2' failoverPriority=1 isZoneRedundant=False \
    --locations regionName='centralus' failoverPriority=2 isZoneRedundant=False

Nota:

Si lleva a cabo cualquier operación que conlleve una región de la cuenta, no puede hacer ningún otro cambio en la cuenta y debe esperar a que se complete la operación.

Habilitar la conmutación automática por error

Aunque tenemos datos replicados en varias regiones, todavía es necesario habilitar los mecanismos de conmutación automática por error en Azure Cosmos DB. El argumento --enable-automatic-failover toma un valor booleano para habilitar o deshabilitar esta característica. En este ejemplo se habilita la característica con las prioridades establecidas en ejemplos anteriores.

az cosmosdb update \
    --name '<account-name>' \
    --resource-group '<resource-group>' \
    --enable-automatic-failover 'true'

Cambio de las prioridades de conmutación por error

A partir de ahora, la cuenta de Azure Cosmos DB está configurada para la conmutación automática por error con las siguientes prioridades:

Región Prioridad de conmutación por error
Este de EE. UU. 0
Oeste de EE. UU. 2 1
Centro de EE. UU. 2

Para cambiar los valores de prioridad, use el comando az cosmosdb failover-priority-change con el argumento failover-policies. El argumento failover-policies tiene una sintaxis <nombre_de_región>=<valor> única. En este ejemplo, las regiones Oeste de EE. UU. 2 y Centro de EE. UU. cambiarán de prioridades.

az cosmosdb failover-priority-change \
    --name '<account-name>' \
    --resource-group '<resource-group>' \
    --failover-policies 'eastus=0' 'centralus=1' 'westus2=2'

Nota:

Aunque no cambie las prioridades de cada región, debe incluir todas las regiones en el argumento failover-policies.

La cuenta de Azure Cosmos DB se configurará para la conmutación automática por error con estos nuevos valores de prioridad:

Región Prioridad de conmutación por error
Este de EE. UU. 0
Centro de EE. UU. 1
Oeste de EE. UU. 2 2

Habilitación de la escritura en varias regiones

El comando az cosmosdb update se puede usar con el argumento --enable-multiple-write-locations para habilitar o deshabilitar las escrituras en varias regiones mediante un valor booleano. En este ejemplo, las escrituras en varias regiones están habilitadas en la cuenta.

az cosmosdb update \
    --name '<account-name>' \
    --resource-group '<resource-group>' \
    --enable-multiple-write-locations 'true'

Eliminación de regiones de cuenta

A fin de quitar una región de una cuenta de Azure Cosmos DB, use el comando az cosmosdb update para especificar las ubicaciones que desea que permanezcan mediante el argumento --locations ejecutado una o varias veces. Cualquier ubicación que no esté incluida en la lista se quitará de la cuenta.

az cosmosdb update \
    --name '<account-name>' \
    --resource-group '<resource-group>' \
    --locations regionName='eastus' failoverPriority=0 isZoneRedundant=False \
    --locations regionName='westus2' failoverPriority=1 isZoneRedundant=False