Alta disponibilidad y réplicas

En esta página, se explica cómo Memorystore for Valkey's Cluster admite y proporciona la arquitectura alta disponibilidad (HA). En esta página, también se explican las configuraciones recomendadas que contribuyen a mejorar el rendimiento y la estabilidad de las instancias.

Alta disponibilidad

Memorystore for Valkey se creó en una arquitectura con alta disponibilidad en la que tus clientes acceden directamente a Memorystore for Valkey VMs administradas. Para hacer esto, tus clientes se conectan a redes de fragmentos individuales como se describe en Conéctate a una instancia de Memorystore para Valkey.

La conexión directa a los fragmentos proporciona los siguientes beneficios:

  • La conexión directa evita cualquier punto único de fallo porque cada fragmento está diseñado para fallar de forma independiente. Por ejemplo, si el tráfico de varios clientes sobrecarga una ranura (fragmento de espacio de claves), la falla de fragmento limita el impacto al fragmento responsable de entregar la ranura.

  • La conexión directa evita los saltos intermedios, lo que minimiza el tiempo de ida y vuelta (latencia del cliente) entre tu cliente y la VM de Valkey.

Recomendamos crear instancias de varias zonas con alta disponibilidad en lugar de instancias de zona única debido a la mayor confiabilidad que proporcionan. Sin embargo, si decides aprovisionar una instancia sin réplicas, te recomendamos que elijas una instancia de zona única. Para obtener más información, consulta Elige una instancia de una sola zona si tu instancia no usa réplicas.

Para habilitar la alta disponibilidad en tu instancia, debes aprovisionar al menos 1 nodo de réplica por cada fragmento. Puedes hacerlo cuando creas la instancia o puedes escalar el recuento de réplicas a, al menos, 1 réplica por fragmento. Las réplicas proporcionan conmutación por error automática durante el mantenimiento planificado y las fallas inesperadas del fragmento.

Debes configurar tu cliente según la guía de Prácticas recomendadas para clientes. Si usas las prácticas recomendadas, tu cliente podrá manejar de forma automática y fluida la función (conmutaciones por error automáticas) y los cambios en la asignación de ranuras (reemplazo de nodos, escalamiento horizontal o vertical del consumidor) en tu instancia sin tiempo de inactividad.

Réplicas

Una instancia de Memorystore para Valkey con alta disponibilidad es un recurso regional. Esto significa que las VMs principales y de réplica de fragmentos se distribuyen en varias zonas para protegerse contra una interrupción zonal. Memorystore for Valkey admite instancias con 0, 1 o 2 réplicas por nodo.

Puedes usar réplicas para aumentar la capacidad de procesamiento de lectura a través de la escalamiento de las operaciones de lectura. Para ello, debes usar el comando READONLY para establecer una conexión que permite que tu cliente lea desde réplicas.

Forma de la instancia con 0 réplicas por nodo

Una instancia de Memorystore for Valkey sin réplicas que tiene nodos divididos de forma uniforme en tres zonas.

Forma de la instancia con 1 réplica por nodo

Una instancia de Memorystore para Valkey con una réplica por nodo y nodos divididos de manera uniforme en tres zonas

Forma de las instancias con 2 réplicas por nodo

Una instancia de Memorystore for Valkey con dos réplicas por nodo y nodos divididos de forma uniforme en tres zonas.

Conmutación por error automática

Las conmutaciones por error automáticas dentro de un fragmento pueden ocurrir debido al mantenimiento o una falla inesperada del nodo principal. Durante una conmutación por error, una réplica se asciende a la instancia principal. Puedes configurar réplicas de manera explícita. El servicio también puede aprovisionar réplicas adicionales de forma temporal durante el mantenimiento interno para evitar cualquier tiempo de inactividad.

Los resguardos automáticos evitan la pérdida de datos durante las actualizaciones de mantenimiento. Para obtener detalles sobre el comportamiento automático de la conmutación por error durante el mantenimiento, consulta Comportamiento automático de la conmutación por error durante el mantenimiento.

Duración de la reparación del nodo y la conmutación por error

Las conmutaciones por error automáticas pueden demorar decenas de segundos en eventos no planificados, como una falla en el proceso de un nodo principal o una falla de hardware. Durante este tiempo, el sistema detecta la falla y elige una réplica para que sea la nueva instancia principal.

La reparación de nodos puede demorar unos minutos reemplazar el nodo con errores. Esto se aplica a todos los nodos principales y de réplica. Para las instancias que no tienen alta disponibilidad (no hay réplicas aprovisionadas), la reparación de un nodo principal con errores también toma unos minutos.

Comportamiento del cliente durante una conmutación por error no planificada

Es probable que las conexiones con los clientes se restablezcan según la naturaleza de la falla. Después de la recuperación automática, se deben reintentar las conexiones con la retirada exponencial para evitar la sobrecarga de los nodos principales y de réplica.

Los clientes que usan réplicas para la capacidad de procesamiento de lectura deben prepararse para una degradación temporal de la capacidad hasta que se reemplace automáticamente el nodo con errores.

Escrituras perdidas

Durante una conmutación por error que resulta de una falla inesperada, pueden debido a la naturaleza asíncrona del protocolo de replicación de Valkey.

Las aplicaciones cliente pueden aprovechar el comando WAIT de Valkey para mejorar la seguridad de los datos en el mundo real.