Alta disponibilidad y réplicas

En esta página, se explica cómo la arquitectura del clúster de Memorystore para Valkey admite y proporciona 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 para Valkey se compila en una arquitectura de alta disponibilidad en la que tus clientes acceden directamente a las VMs administradas de Memorystore para Valkey. Para ello, se conectan a direcciones de red 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, ya que cada fragmento está diseñado para fallar de forma independiente. Por ejemplo, si el tráfico de varios clientes sobrecarga un espacio (fragmento del espacio de claves), la falla del fragmento limita el impacto al fragmento responsable de entregar el espacio.

  • 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 zona única si tu instancia no usa réplicas.

Para habilitar la alta disponibilidad de tu instancia, debes aprovisionar al menos 1 nodo de réplica para cada fragmento. Puedes hacerlo cuando creas la instancia o puedes ajustar 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 el cliente según las instrucciones que se indican en Prácticas recomendadas para clientes. El uso de las prácticas recomendadas permite que tu cliente controle automáticamente y de forma fluida el rol (conmutación por error automática) y los cambios en la asignación de ranuras (reemplazo de nodos, escalamiento de consumidores) para 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 los fragmentos se distribuyen en varias zonas para protegerte contra una interrupción zonal. Memorystore para 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 le permita al cliente leer de las 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 forma uniforme en tres zonas.

Forma de la instancia con 2 réplicas por nodo

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

Conmutación por error automática

Los resguardos automáticos dentro de un fragmento pueden ocurrir debido a mantenimiento o a 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 forma 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 del resguardo automático durante el mantenimiento, consulta Comportamiento del resguardo automático durante el mantenimiento.

Duración de la conmutación por error y la reparación de nodos

Las conmutaciones por error automáticas pueden tardar decenas de segundos en eventos no planificados, como una falla del proceso del 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 tardar unos minutos en que el servicio reemplace el nodo con errores. Esto se aplica a todos los nodos principales y de réplica. En el caso de las instancias que no tienen alta disponibilidad (no se aprovisionaron réplicas), la reparación de un nodo principal con errores también lleva tiempo, en el orden de minutos.

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

Es probable que las conexiones del cliente se restablezcan según la naturaleza de la falla. Después de la recuperación automática, se deben volver a intentar las conexiones con retirada exponencial para evitar sobrecargar 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 debido a una falla inesperada, es posible que se pierdan las escrituras confirmadas 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.