Partekatu honen bidez:


Configuración de la replicación geográfica activa para las instancias de Azure Cache for Redis Enterprise

En este artículo, aprenderá a configurar una instancia de caché con replicación geográfica activa mediante Azure Portal.

La replicación geográfica activa agrupa hasta cinco instancias de Azure Cache for Redis Enterprise en una sola caché que abarca varias regiones de Azure. Ambas instancias actúan como las principales cachés locales. Una aplicación decide qué instancias se van a utilizar para las solicitudes de lectura y escritura.

Nota

La transferencia de datos entre regiones de Azure se cobrará según las tarifas de ancho de banda estándar.

Ámbito de disponibilidad

Nivel Básico y Estándar Premium Enterprise o Enterprise Flash
Disponible No No

El nivel Premium de Azure Cache for Redis ofrece una versión de replicación geográfica denominada replicación geográfica pasiva. La replicación geográfica pasiva proporciona una configuración activa-pasiva.

Requisitos previos de replicación geográfica activa

Hay algunas restricciones al usar la replicación geográfica activa:

  • Solo se admiten los módulos RediSearch y RedisJSON
  • En el nivel Enterprise Flash, solo se puede usar la directiva de expulsión sin expulsión. Todas las directivas de expulsión se admiten en el nivel Enterprise.
  • No se admite la persistencia de datos porque la replicación geográfica activa proporciona una experiencia superior.
  • No se puede agregar una caché existente (es decir, en ejecución) a un grupo de replicación geográfica. Solo puede agregar una memoria caché a un grupo de replicación geográfica al crear la memoria caché.
  • Todas las memorias caché de un grupo de replicación geográfica deben tener la misma configuración. Por ejemplo, todas las memorias caché deben tener la misma SKU, capacidad, directiva de expulsión, directiva de agrupación en clústeres, módulos y configuración de TLS.
  • No puedes usar FLUSHALL y FLUSHDB los comandos Redis al usar la replicación geográfica activa. La prohibición de los comandos impide la eliminación no deseada de datos. En lugar de eso, usa la operación de vaciado desde el portal.
  • La SKU E1 no admite la replicación geográfica activa.

Creación de un grupo de replicación geográfica activa o unión con él

  1. Al crear un nuevo recurso de Azure Cache for Redis, seleccione la pestaña Opciones avanzadas. Complete la primera parte del formulario, incluida la directiva de agrupación en clústeres. Para obtener más información sobre cómo elegir la directiva de agrupación en clústeres, vea Agrupación en clústeres en el nivel Enterprise.

  2. Seleccione Configurar para configurar la replicación geográfica activa.

    Captura de pantalla de las opciones avanzadas de la página de creación de una nueva caché de Redis.

  3. Cree un nuevo grupo de replicación para una primera instancia de caché. O bien, seleccione uno existente de la lista.

    Captura de pantalla en la que se muestran grupos de replicación.

  4. Seleccione Configurar para finalizar.

  5. Espere a que el área de trabajo se cree correctamente. Cuando haya finalizado, verá el conjunto configurado para la replicación geográfica activa. Repita los pasos anteriores para cada instancia de caché en el grupo de replicación geográfica.

    Captura de pantalla en la que se muestra que la replicación geográfica activa está configurada.

Eliminación de un grupo de replicación geográfica activa

Para quitar una instancia de caché de un grupo de replicación geográfica activa, solo tiene que eliminar la instancia. Las instancias restantes luego se reconfiguran automáticamente.

En caso de que una de las cachés del grupo de replicación no esté disponible debido a una interrupción de la región, puede quitar de manera forzada la caché no disponible del grupo de replicación.

Debe quitar la caché no disponible porque las cachés restantes del grupo de replicación comienzan a almacenar los metadatos que no se han compartido con la caché no disponible. Cuando esto sucede, es posible que las cachés disponibles en el grupo de replicación se queden sin memoria.

  1. Vaya a Azure Portal y seleccione una de las cachés del grupo de replicación que todavía esté disponible.

  2. Seleccione Replicación geográfica activa en el menú "Recurso" de la izquierda para ver la configuración en el panel de trabajo.

    Captura de pantalla de un grupo de replicación geográfica activa.

  3. Active la casilla a fin de seleccionar la caché para la que necesita forzar la desvinculación.

  4. Seleccione Force unlink (Forzar desvinculación) y, a continuación, Aceptar para confirmar.

    Captura de pantalla de la desvinculación en la replicación geográfica activa.

  5. Una vez restaurada la disponibilidad de la región afectada, debe eliminar la caché afectada y volver a crearla para agregarla de nuevo al grupo de replicación.

Configuración de la replicación geográfica activa mediante la CLI de Azure o PowerShell

Azure CLI

Usa la CLI de Azure para crear una nueva memoria caché y un grupo de replicación geográfica, o para agregar una memoria caché nueva a un grupo de replicación geográfica existente. Para obtener más información, consulte az redisenterprise create.

Creación de una nueva instancia de Enterprise en un grupo nuevo de replicación geográfica mediante la CLI de Azure

En este ejemplo se crea una nueva instancia de caché de Azure Cache for Redis Enterprise E10 denominada Cache1 en la región Este de EE. UU. A continuación, la caché se agrega a un nuevo grupo de replicación geográfica activa denominado replicationGroup:

az redisenterprise create --location "East US" --cluster-name "Cache1" --sku "Enterprise_E10" --resource-group "myResourceGroup" --group-nickname "replicationGroup" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"

Para configurar correctamente la replicación geográfica activa, se debe agregar el id. de la instancia de caché que se va a crear con el parámetro --linked-databases. El identificador tiene el formato:

/subscriptions/<your-subscription-ID>/resourceGroups/<your-resource-group-name>/providers/Microsoft.Cache/redisEnterprise/<your-cache-name>/databases/default

Creación de una nueva instancia de Enterprise en un grupo existente de replicación geográfica mediante la CLI de Azure

Este ejemplo crea una nueva instancia de caché Enterprise E10 llamada Cache2 en la región Oeste de EE. UU. A continuación, el script agrega la memoria caché al grupo de replicación geográfica activa replicationGroup creado en un procedimiento anterior. De este modo, se vincula en una configuración activa-activa con Cache1.

az redisenterprise create --location "West US" --cluster-name "Cache2" --sku "Enterprise_E10" --resource-group "myResourceGroup" --group-nickname "replicationGroup" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache2/databases/default"

Como antes, debe indicar Cache1 y Cache2 mediante el parámetro --linked-databases.

Azure PowerShell

Use Azure PowerShell para crear una nueva caché y un grupo de replicación geográfica, o para agregar una nueva caché a un grupo de replicación geográfica existente. Para obtener más información, consulte New-AzRedisEnterpriseCache.

Creación de una nueva instancia de Enterprise en un grupo nuevo de replicación geográfica mediante PowerShell

En este ejemplo se crea una nueva instancia de caché de Azure Cache for Redis Enterprise E10 denominada Cache1 en la región Este de EE. UU. A continuación, la caché se agrega a un nuevo grupo de replicación geográfica activa denominado replicationGroup:

New-AzRedisEnterpriseCache -Name "Cache1" -ResourceGroupName "myResourceGroup" -Location "East US" -Sku "Enterprise_E10" -GroupNickname "replicationGroup" -LinkedDatabase '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"}'

Para configurar correctamente la replicación geográfica activa, se debe agregar el id. de la instancia de caché que se va a crear con el parámetro -LinkedDatabase. El identificador tiene el formato:

/subscriptions/<your-subscription-ID>/resourceGroups/<your-resource-group-name>/providers/Microsoft.Cache/redisEnterprise/<your-cache-name>/databases/default

Creación de una nueva instancia de Enterprise en un grupo existente de replicación geográfica mediante PowerShell

Este ejemplo crea una nueva instancia de caché Enterprise E10 llamada Cache2 en la región Oeste de EE. UU. A continuación, el script agrega la memoria caché al grupo de replicación geográfica activa "replicationGroup" que se creó en el procedimiento anterior. vincula las dos memorias caché, Cache1 y Cache2, en una configuración activa-activa.

New-AzRedisEnterpriseCache -Name "Cache2" -ResourceGroupName "myResourceGroup" -Location "West US" -Sku "Enterprise_E10" -GroupNickname "replicationGroup" -LinkedDatabase '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"}', '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache2/databases/default"}'

Como antes, debe indicar Cache1 y Cache2 mediante el parámetro -LinkedDatabase.

Escalado de instancias en un grupo de replicación geográfica

Es posible escalar instancias configuradas para usar la replicación geográfica activa. Sin embargo, un grupo de replicación geográfica con una combinación de diferentes tamaños de caché puede presentar problemas. Para evitar que se produzcan estos problemas, todas las memorias caché de un grupo de replicación geográfica deben tener el mismo tamaño y capacidad.

Dado que es difícil escalar simultáneamente todas las instancias del grupo de replicación geográfica, Azure Cache for Redis tiene un mecanismo de bloqueo. Si escala una instancia de un grupo de replicación geográfica, la máquina virtual subyacente se escalará, pero la memoria disponible se limitará al tamaño original hasta que también se escale verticalmente las otras instancias. Y cualquier otra operación de escalado de las instancias restantes se bloquea hasta que coincidan con la misma configuración que la primera memoria caché que se va a escalar.

Ejemplo de escalado

Por ejemplo, puede tener tres instancias en el grupo de replicación geográfica, todas las instancias de Enterprise E10:

Nombre de la instancia Redis00 Redis01 Redis02
Tipo Enterprise E10 Enterprise E10 Enterprise E10

Supongamos que quiere escalar verticalmente cada instancia de este grupo de replicación geográfica a una instancia de Enterprise E20. Primero escalaría una de las memorias caché hasta un E20:

Nombre de la instancia Redis00 Redis01 Redis02
Tipo Enterprise E20 Enterprise E10 Enterprise E10

En este momento, las instancias de Redis01 y Redis02 solo pueden escalar verticalmente a una instancia de Enterprise E20. Todas las demás operaciones de escalado están bloqueadas.

Nota:

La instancia de Redis00 no está bloqueada para escalar aún más en este momento. Pero se bloqueará una vez Redis01 o Redis02 se escale para que sea Enterprise E20.

Una vez que cada instancia se haya escalado al mismo nivel y tamaño, se quitan todos los bloqueos de escalado:

Nombre de la instancia Redis00 Redis01 Redis02
Tipo Enterprise E20 Enterprise E20 Enterprise E20

Operación de vaciado

Debido a la posibilidad de pérdida involuntaria de datos, no puede usar FLUSHALL y FLUSHDB comandos Redis con ninguna instancia de caché que resida en un grupo de replicación geográfica. En su lugar, usa el botón Vaciar caché situado en la parte superior del panel de trabajo Replicación geográfica activa.

Captura de pantalla que muestra la replicación geográfica activa seleccionada en el menú Recurso y la característica Vaciar caché tiene un cuadro rojo alrededor de ella.

Vaciar cachés usando CLI de Azure o PowerShell

La CLI de Azure y PowerShell también se pueden usar para desencadenar una operación de vaciado. Para saber más sobre el uso de la CLI de Azure, consulte vaciado de base de datos az redisenterprise. Para saber más sobre el uso de PowerShell, consulte Invoke-AzRedisEnterpriseCacheDatabaseFlush.

Importante

Ten cuidado al usar la característica Vaciar cachés. Al seleccionar el botón se quitan todos los datos de la caché actual y de TODAS las cachés vinculadas del grupo de replicación geográfica.

Administra el acceso a la característica mediante el control de acceso basado en rol de Azure. Solo se debe conceder acceso a los usuarios autorizados para vaciar todas las memorias caché.

Pasos siguientes

Más información sobre las características de Azure Cache for Redis.