Escalador automático administrado

En esta página, se describe cómo funciona el escalador automático administrado, se describen los costos y las limitaciones de seguridad cuando se usa el escalador automático administrado. También proporciona información para ayudarte a determinar cómo configurar el escalador automático administrado.

Cómo funciona el escalador automático administrado

Cuando habilitas el escalador automático administrado, Spanner ajusta el tamaño de tu instancia de forma automática por ti. La función del escalador automático administrado reacciona a los cambios en la carga de trabajo o las necesidades de almacenamiento de tu instancia a medida que la carga aumenta o disminuye. El ajuste de escala automático administrado aumenta la escala, lo que agrega capacidad de procesamiento a la instancia, o reduce la escala, lo que quita capacidad de procesamiento de la instancia.

Al configurar el escalador automático administrado, puede usar las unidades de procesamiento instancias pequeñas, o nodos para instancias grandes. En este documento, usamos el término capacidad de procesamiento para referirse a nodos o unidades de procesamiento.

El escalador automático administrado de Spanner determina la cantidad de procesamiento la capacidad de almacenamiento es obligatoria en función de los siguientes factores:

  • Objetivo de uso de CPU de alta prioridad
  • Objetivo de uso de almacenamiento
  • Límite mínimo
  • Límite máximo

Cada dimensión de escalamiento genera un tamaño de instancia recomendado, y Spanner usa automáticamente el más alto. Esto significa que, por ejemplo, si tu instancia necesita 10 nodos para cumplir con tu objetivo de uso de almacenamiento, pero 12 para cumplir con tu objetivo de uso de CPU, Spanner escala la instancia a 12 nodos.

A medida que cambia la capacidad de procesamiento, Spanner continuamente optimiza el almacenamiento. Rebalancea los datos en todos los servidores. para garantizar que el tráfico se distribuya de manera uniforme y ningún servidor individual esté sobrecargado. Consulta Limitaciones para obtener más información.

Si el escalador automático administrado escala una instancia hasta su límite máximo, pero la carga de trabajo sigue causando un uso de CPU más alto que el objetivo, las solicitudes de carga de trabajo pueden tener una latencia más alta o fallar. Si una instancia escala verticalmente hasta su objetivo de capacidad de procesamiento máxima pero la carga de trabajo necesita más almacenamiento que el límite, escribe pueden fallar. Para saber si se alcanzó el objetivo máximo, puedes ver los registros de eventos del sistema del escalador automático administrado en la consola de Google Cloud, en la página Estadísticas del sistema. Para obtener más información, consulta límites de almacenamiento.

Cuando Spanner reduce la escala de una instancia, quita la capacidad de procesamiento a una velocidad menor que cuando se escala, para reducir cualquier impacto en la latencia.

Costos

Los costos totales de Spanner pueden ser menores o mayores según cómo configuraste tu instancia de Spanner antes de habilitar del escalador automático administrado y los límites que estableces para él.

Por ejemplo, si solías configurar manualmente tu instancia de Spanner para que tenga suficiente capacidad de procesamiento para controlar las cargas de trabajo máximas en cualquier momento, tus costos con el escalador administrado podrían ser más bajos porque reduce la capacidad de procesamiento cuando la instancia está inactiva.

Si solías configurar manualmente tu instancia de Spanner para que tuviera capacidad de procesamiento suficiente para las cargas de trabajo promedio y degrada el rendimiento general Cuando aumenta el tráfico de la carga de trabajo, los costos del escalador automático administrado puede ser mayor porque el escalador automático administrado podría aumentar la capacidad de procesamiento cuando la instancia está ocupada. Sin embargo, esto les brinda a los usuarios un rendimiento más continuo.

Puedes limitar el costo máximo de tu instancia de Spanner configurando el límite máximo de nodos o unidades de procesamiento al nivel que desees invertir.

Limitaciones

Se aplican las siguientes limitaciones cuando habilitas o cambias el ajuste de escala automático en una instancia:

  • No puedes mover una instancia cuando la función de escalador automático administrado está habilitada. Primero debes inhabilitar el administrador escalador automático y mover la instancia. Después de trasladar la instancia, puedes volver a habilitar el escalador automático administrado.
  • Debes establecer el límite mínimo de la instancia con ajuste de escala automático en 1,000. unidades de procesamiento o más, o 1 nodo o más.
  • Cuando habilitas el ajuste de escala automático en una instancia existente, la capacidad de la instancia existente puede ser inferior al valor de límite mínimo que configuras en el escalador automático administrado. Sin embargo, la instancia se escala automáticamente hasta el valor mínimo configurado cuando la inicias. Por ejemplo, si tu instancia tiene un nodo, pero establece el valor mínimo en dos nodos, cuando inicias tu instancia, escala automáticamente hasta 2 nodos.

Parámetros del escalador automático administrado

Cuando creas o editas una instancia y eliges habilitar el ajustador de escala administrado, debes definir los valores que se muestran en la siguiente tabla.

Parámetro Descripción
Objetivo de uso de CPU de alta prioridad Un porcentaje de la capacidad de CPU de alta prioridad de la instancia. Este valor debe ser del 10% al 90%. Cuando el uso de CPU de una instancia supera el objetivo que estableciste, Spanner agrega capacidad de procesamiento a la instancia de inmediato. Cuando el uso de CPU es sustancialmente menor que de destino, Spanner quita la capacidad de procesamiento. Para obtener orientación, ver Determina el objetivo de uso de CPU.
Objetivo de uso de almacenamiento El porcentaje de almacenamiento en un nodo que puedes usar antes Spanner escala verticalmente. Este objetivo garantiza que siempre tengas suficiente capacidad de procesamiento para manejar las fluctuaciones en la cantidad de datos que almacenas. Este valor debe estar entre el 10% y el 99%. Para obtener orientación, consulta Determina el objetivo de uso de almacenamiento.
Límite mínimo La cantidad más baja de capacidad de procesamiento a la que Spanner reduce la instancia. El valor mínimo no puede ser inferior al 10% del valor que estableciste para el límite máximo. Por ejemplo, si el límite máximo es de 40 nodos, el límite mínimo debe ser de al menos 4 nodos. El requisito del 10% es un límite estricto. Para guía, consulta Determina el límite mínimo.
Límite máximo La mayor cantidad de capacidad de procesamiento que Spanner escala la instancia. En el caso de los nodos, este valor debe ser mayor que 1 nodo (o 1,000 unidades de procesamiento) y ser igual o mayor que la cantidad mínima de nodos o unidades de procesamiento. El valor no puede ser más de 10 veces la cantidad mínima de capacidad de procesamiento que elijas. Este requisito de 10 veces es un límite estricto. Para obtener orientación, consulta Determina el límite máximo.

Configura el escalador automático administrado

En esta sección, se describe cómo determinar qué números elegir para tus parámetros del escalador automático administrado. Después de establecer los valores iniciales, supervisar tu instancia y ajustar los números si es necesario.

Determina el objetivo de uso de CPU

El objetivo óptimo para tu instancia depende de los requisitos de capacidad de procesamiento y latencia de tu carga de trabajo. Para ver nuestras recomendaciones sobre el uso máximo de CPU, haz lo siguiente: para configuraciones de instancias regionales, birregionales y multirregionales, consulta Alertas de uso de CPU elevado.

En general, si observas una latencia inaceptablemente alta, debes reducir el objetivo de uso de CPU.

Determina el objetivo de uso del almacenamiento

Para el ajuste de escala automático, el objetivo de uso de almacenamiento se expresa como un porcentaje por nodo. En el caso de las instancias de 1 nodo (1,000 unidades de procesamiento) y más grandes, el tamaño del almacenamiento se limita a 4 TB por nodo.

Determinar el límite máximo

El valor que elijas como la cantidad máxima de capacidad de procesamiento es igual a la cantidad de capacidad de procesamiento que la instancia necesita para manejar el tráfico más pesado, incluso si no esperas alcanzar ese volumen la mayor parte del tiempo. Spanner nunca escala verticalmente a más capacidad de procesamiento de la que necesita. También puedes considerar este número como la mayor cantidad de procesamiento la capacidad por la que estás dispuesto a pagar. Consulta Parámetros del escalador automático para obtener detalles sobre los valores aceptados.

El límite máximo debe permitir el objetivo de uso de CPU y la el objetivo de uso de almacenamiento que estableces para el ajuste de escala automático.

  • Si cambias una instancia de asignación manual a ajuste de escala automático administrado, busca la mayor cantidad de capacidad de procesamiento que la instancia tuvo en el último mes o dos. El límite máximo del escalador automático administrado debe ser, al menos, tan alto.

  • Si quieres habilitar el escalador automático administrado para una instancia nueva, de otras instancias y úsalas como guía cuando establezcas los límite máximo.

  • Si tienes una carga de trabajo nueva y no sabes cómo va a crecer, puede estimar la capacidad de procesamiento que necesitas para cumplir con de uso de almacenamiento integrado y, luego, ajustar la cantidad.

También debes saber cuánta cuota queda en tu nodo porque el escalador automático administrado no puede configurar tu instancia para que tenga más capacidad de procesamiento que tu cuota. Para obtener más información, consulta Límites de nodos.

Después de que tu instancia esté en funcionamiento con el ajuste de escala automático habilitado, supervisa la instancia y asegúrate de que el valor que elegiste para el límite máximo sea al menos tan alto como el límite recomendado para el objetivo de CPU y el límite recomendado para el objetivo de almacenamiento.

Determina el límite mínimo

Estableces un límite mínimo para el escalador automático administrado para garantizar que tu instancia de Spanner pueda reducir la escala verticalmente al tamaño más pequeño y rentable. Spanner evita automáticamente que el nodo recuento de impresiones caiga por debajo del mínimo necesario para mantener la CPU y el almacenamiento objetivos de uso.

El valor mínimo más pequeño que permite el escalador automático administrado es de 1 nodo o 1,000 unidades de procesamiento. Cuando habilitas el ajuste de escala automático para una instancia menor capacidad que el valor mínimo configurado para el escalador automático administrado, el escala automáticamente hasta este mínimo cuando la inicias.

Después de iniciar la instancia que administró el ajuste de escala automático, debes realizar una prueba inicial para asegurarte de que funcione en el tamaño mínimo establecido. Deberías probar de forma periódica para garantizar que siga funcionando como se espera.

Para obtener más información sobre los valores aceptados, consulta Parámetros del escalador automático administrado en este documento.

En muchos casos, deberás establecer el valor mínimo en más de uno. Elige una cantidad mayor o aumenta el límite mínimo para las siguientes situaciones:

  • Tienes un evento de escala máxima próximo en el que esperas que el tráfico aumente de forma temporal y deseas asegurarte de tener la capacidad de procesamiento suficiente.
  • Tu aplicación envía tráfico con aumentos bruscos. Cuando agregas una nueva capacidad de procesamiento, Spanner se rebalancea automáticamente para usar los nuevos nodos o unidades de procesamiento. Debido a que este proceso puede tardar varios minutos, te recomendamos que adoptes un enfoque conservador y elijas un valor mínimo más alto. De esta manera, tu instancia se adapta sin problemas a los aumentos repentinos.
  • Aumentas la capacidad de procesamiento máxima. El mínimo siempre debe ser el diez por ciento o menos del objetivo de capacidad de procesamiento máximo. Por ejemplo, si estableces la cantidad máxima de nodos en 30, debes establecer la cantidad mínima de nodos en al menos 3.

Si aumentas el valor de la capacidad de procesamiento mínima en una instancia Spanner intenta de inmediato escalar la instancia al nuevo mínimo. Las restricciones estándar aplicar. Cuando se agota la cuota, falla la solicitud para cambiar la configuración del escalador administrado y no se actualiza.

Marcas y limitaciones de parámetros de Google Cloud CLI

Cuando usas Google Cloud CLI para configurar el escalador automático administrado, hay algunas las marcas obligatorias que debes establecer. Hay marcas opcionales que puedes usar para indicar si quieres usar nodos o unidades de procesamiento. Para obtener más información sobre cómo crear una instancia nueva con el escalador automático administrado o habilitar el ajuste de escala automático administrado en una instancia existente, consulta los siguientes recursos:

Las siguientes marcas son obligatorias cuando habilitas el escalador automático administrado en tu instancia:

  • autoscaling-high-priority-cpu-percent
  • autoscaling-storage-percent

Si decides usar nodos, también debes usar las siguientes marcas cuando habilites el escalador automático administrado:

  • autoscaling-min-nodes
  • autoscaling-max-nodes

Si decides usar unidades de procesamiento, también debes usar las siguientes marcas cuando habilites el escalador automático administrado:

  • autoscaling-min-processing-units
  • autoscaling-max-processing-units

Se aplican las siguientes limitaciones cuando se agrega el escalador automático administrado a una instancia existente con Google Cloud CLI:

  • No puedes usar la marca --nodes con las marcas --autoscaling-min-nodes o --autoscaling-max-nodes, ya que usar --nodes establece una cantidad específica de nodos en lugar de un rango de escalamiento. Del mismo modo, no puedes usar el la marca --processing-units con el autoscaling-min-processing-units o autoscaling-max-processing-units porque se usa --processing-units establece una cantidad específica de unidades de procesamiento en lugar que un rango de escalamiento.
  • No puedes mezclar las marcas de nodos y unidades de procesamiento. Para Por ejemplo, no puedes usar --autoscaling-max-nodes con autoscaling-min-processing-units

Ajusta tu configuración

Supervisa el uso de la capacidad de procesamiento y ajusta la configuración si es necesario, en especial después de habilitar el escalador automático administrado por primera vez. Recomendaciones desde la página Estadísticas del sistema Consola de Google Cloud

Control de acceso

Para configurar el escalador automático administrado, debes ser un principal en un rol que tenga permisos de creación y actualización para la instancia que estás configurando.

Supervisión

Spanner proporciona varias métricas para ayudarte a comprender qué tan bien funciona el escalador automático administrado a medida que aumenta o reduce la escala verticalmente para cumplir con los requisitos de carga de trabajo. Las métricas también pueden ayudarte a determinar si tu configuración son óptimos para cumplir con los requisitos de carga de trabajo y costos de tu empresa. Por ejemplo, si observas que la cantidad de nodos de una instancia suele estar cerca de la cantidad máxima de nodos, puedes considerar aumentar el máximo. Para obtener más información sobre la supervisión de tus recursos de Spanner, consulta Supervisa instancias con Cloud Monitoring.

Las siguientes métricas se muestran en grafos en la página Estadísticas del sistema de la consola de Google Cloud. También puedes ver estas métricas Cloud Monitoring.

  • spanner.googleapis.com/instance/autoscaling/min_node_count
  • spanner.googleapis.com/instance/autoscaling/max_node_count
  • spanner.googleapis.com/instance/autoscaling/min_processing_units
  • spanner.googleapis.com/instance/autoscaling/max_processing_units
  • spanner.googleapis.com/instance/autoscaling/high_priority_cpu_target_utilization
  • spanner.googleapis.com/instance/autoscaling/storage_target_utilization

Logging

Spanner crea un registro de auditoría de eventos del sistema cada vez que escala un instancia.

Puedes ver los registros de eventos del sistema del escalador automático administrado en la consola de Google Cloud, en la página Estadísticas del sistema.

También puedes ver los registros con el Explorador de registros:

  1. En la consola de Google Cloud, abre el Explorador de registros:

    Ir al Explorador de registros.

  2. Selecciona el proyecto de Google Cloud adecuado.

  3. En el campo Consulta, ingresa lo siguiente:

     protoPayload.methodName="AutoscaleInstance"
    

    Puedes agregar la siguiente consulta para filtrar aún más los registros:

    resource.type="spanner_instance"
    resource.labels.instance_id=INSTANCE_ID
    resource.labels.project_id=PROJECT_ID
    logName="projects/span-cloud-testing/logs/cloudaudit.googleapis.com%2Fsystem_event"
    protoPayload.methodName="AutoscaleInstance"
  4. Haz clic en Ejecutar consulta.

En el panel Resultados de la consulta, se muestran los registros de la última hora.

Para obtener más información sobre cómo ver los registros, consulta Cloud Logging. Puedes configurar alertas basadas en registros en la página Explorador de registros de Google Cloud o con la API de Cloud Monitoring.

¿Qué sigue?