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 para 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 porque cada fragmento está diseñado para fallar de forma independiente. Por ejemplo, si el tráfico de varios clientes sobrecarga una ranura (bloque 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.
Parámetros de configuración recomendados
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 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 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
Forma de la instancia con 1 réplica por nodo
Forma de las instancias con 2 réplicas por nodo
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 manera explícita. El servicio también puede aprovisionar temporalmente réplicas adicionales durante el mantenimiento interno para evitar cualquier tiempo de inactividad.
Las conmutaciones por error automáticas 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 tardar unos minutos en que el servicio reemplace 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 del cliente 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 en la capacidad hasta que el nodo con fallas se reemplace automáticamente.
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.