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 | Sí |
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
yFLUSHDB
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
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.
Seleccione Configurar para configurar la replicación geográfica activa.
Cree un nuevo grupo de replicación para una primera instancia de caché. O bien, seleccione uno existente de la lista.
Seleccione Configurar para finalizar.
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.
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.
Desvinculación forzada si se produce una interrupción de la región
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.
Vaya a Azure Portal y seleccione una de las cachés del grupo de replicación que todavía esté disponible.
Seleccione Replicación geográfica activa en el menú "Recurso" de la izquierda para ver la configuración en el panel de trabajo.
Active la casilla a fin de seleccionar la caché para la que necesita forzar la desvinculación.
Seleccione Force unlink (Forzar desvinculación) y, a continuación, Aceptar para confirmar.
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.
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.