Información acerca del escalamiento de la capacidad de las instancias

En esta página, se describe cómo se comporta tu instancia de Memorystore para Valkey durante el escalamiento.

Puedes escalar la capacidad de tu instancia de las siguientes maneras:

  • Puedes cambiar la cantidad de fragmentos de tu instancia. Esto se conoce como escalamiento horizontal. Puedes escalar una instancia horizontalmente de una de las siguientes maneras:

    • Escalar horizontalmente: Aumenta la capacidad de tu instancia, lo que le brinda más memoria y potencia de procesamiento para controlar un mayor volumen de datos o tráfico. La capacidad de tu instancia se determina según la cantidad de fragmentos que contiene.

      Si escalas horizontalmente tu instancia, tu aplicación podrá controlar una mayor demanda sin que se degrade el rendimiento. Para escalar horizontalmente una instancia, agrega fragmentos a la instancia.

    • Ajuste a la baja: Reduce la capacidad de tu instancia, lo que disminuye la potencia de procesamiento y la cantidad de memoria disponible para almacenar datos. Esto ocurre cuando las demandas de datos de tu aplicación disminuyen y necesitas reducir el uso de recursos para ahorrar costos. Para reducir la escala de una instancia, disminuye la cantidad de fragmentos en ella.

  • Puedes cambiar el tipo de nodo de tu instancia. Esto se conoce como escalamiento vertical. Puedes escalar una instancia de forma vertical de una de las siguientes maneras:

    • Escalar verticalmente: Aumenta la capacidad de tu instancia. La capacidad de tu instancia está determinada por el tipo de nodo de la instancia. Para aumentar la escala de una instancia, cambia el tipo de nodo a uno más grande. Por ejemplo, puedes escalar tu instancia de un tipo de nodo standard-small a un tipo de nodo highmem-medium.
    • Reducir la escala: Reduce la capacidad de tu instancia. Para reducir la escala de una instancia, cambia el tipo de nodo a uno más pequeño. Por ejemplo, reduce la escala de tu instancia de un tipo de nodo highmem-medium a un tipo de nodo standard-small.

Impacto del escalamiento

Durante una operación de ajuste de escala, no se ve afectada la disponibilidad de tu instancia. Sin embargo, cuando cambias la cantidad de fragmentos en tu instancia, Memorystore para Valkey reequilibra el espacio de claves de la instancia. Esto podría causar un aumento de la latencia durante la operación de ajuste de escala.

Además, el impacto de escalar tu instancia verticalmente cambiando el tipo de nodo es similar al que se produce con una operación de mantenimiento.

Situaciones de falla

Si encuentras un error durante la operación de ajuste de escala, es probable que se deba a una de las siguientes situaciones:

  • Quieres actualizar el recuento de fragmentos de tu instancia, pero no tienes suficiente memoria libre para el tipo de nodo shared-core-nano de tu instancia.

    Para solucionar este problema, puedes escalar verticalmente tu instancia o liberar memoria de los nodos de tu instancia. Para liberar memoria, haz lo siguiente:

    1. Conéctate a una instancia de Memorystore para Valkey.
    2. Para obtener detalles sobre la instancia, incluidos la dirección IP y el número de puerto, usa el comando gcloud memorystore instances describe.
    3. Anota la dirección IP y el número de puerto de la instancia.
    4. Para obtener información sobre los nodos de la instancia, usa el siguiente comando:

      valkey-cli -h IP_ADDRESS -p PORT_NUMBER cluster nodes
      

      Reemplaza IP_ADDRESS y PORT_NUMBER por los valores que anotaste en el paso anterior.

    5. Anota la dirección IP y el número de puerto de un nodo que no tenga suficiente espacio libre. El ID de este nodo coincide con un ID que aparece en el error.

    6. Para conectarte a este nodo, usa el siguiente comando:

      valkey-cli -h IP_ADDRESS -p PORT_NUMBER
      

      Reemplaza IP_ADDRESS y PORT_NUMBER por los valores que anotaste en el paso anterior.

    7. En el símbolo del sistema, ingresa el comando info memory.

      En el resultado, aparecen valores para los parámetros used_memory y maxmemory. used_memory indica cuánta memoria usa el nodo y maxmemory indica cuánta memoria está disponible para el nodo.

    8. Divide el valor del parámetro used_memory por el valor del parámetro maxmemory y verifica que el cociente sea superior al 98%.

    9. Para liberar espacio para el nodo, borra algunas de sus claves.

    10. Vuelve a ingresar el comando info memory. En el resultado, el valor del parámetro used_memory es menor.

    11. Divide el valor del parámetro used_memory por el valor del parámetro maxmemory y verifica que el cociente ahora sea inferior al 98%. Si no es así, borra más llaves.

    12. Para cualquier otro nodo que no tenga suficiente espacio libre, repite los pasos del 4 al 11 de este procedimiento.

  • Redujiste la cantidad de fragmentos a una cantidad menor que no tiene la capacidad de contener todas las claves que Memorystore for Valkey almacena en la instancia original. Para resolver este problema, escala a un recuento de fragmentos más grande que pueda contener todas las claves almacenadas. Para obtener más información sobre cómo aumentar la cantidad de fragmentos de tu instancia, consulta Cómo escalar la cantidad de fragmentos.

  • Redujiste la escala a un tipo de nodo más pequeño que no tiene la capacidad de contener todos los datos que Memorystore para Valkey almacena en el tipo de nodo original. Si esto ocurre, Memorystore para Valkey te proporciona un tipo de nodo recomendado para reducir la escala verticalmente.

  • Actualizaste el tipo de nodo de tu instancia y sobrescribes la configuración predeterminada del tipo de nodo original o esta configuración ya se sobrescribió. Sin embargo, el nuevo tipo de nodo escalado no admite los valores de la configuración predeterminada o la configuración no es válida para el tipo de nodo. Si esto ocurre, Memorystore para Valkey devuelve un error. Para resolver este problema, modifica la configuración de forma manual para que sea válida para el nuevo tipo de nodo.

  • Escalaste tu instancia durante un período de alta presión de escritura (por ejemplo, durante las pruebas de carga). Para resolver este problema, ajusta la escala durante los períodos de poco tráfico de instancias.

Prácticas recomendadas

Para ayudarte a escalar la capacidad de tu instancia y aumentar la velocidad y la confiabilidad de su escalamiento, hazlo durante los períodos de tráfico bajo, siempre que puedas. Si deseas obtener información para supervisar el tráfico de las instancias, consulta Supervisa instancias.