Realiza un ajuste de escala automático en grupos de instancias

Los grupos de instancias administrados (MIG) ofrecen capacidades de ajuste de escala automático que te permiten agregar o borrar instancias de máquina virtual (VM) de forma automática de un MIG en función de los aumentos o las disminuciones en la carga. El ajuste de escala automático permite que tus apps manejen de forma más fácil los aumentos de tráfico y reduzcan los costos cuando la necesidad de recursos es menor. Debes definir la política de ajuste de escala automático y el escalador automático realizará el ajuste de escala según la carga medida.

El ajuste de escala automático agrega más VM a tu MIG cuando aumenta la carga (escalamiento horizontal, a veces denominado escalamiento vertical) y las borra cuando se necesitan menos VM (reducción de escala).

Especificaciones

  • El ajuste de escala automático solo funciona con grupos de instancias administrados zonales y regionales. Los grupos de instancias no administrados no son compatibles.
  • El ajuste de escala automático no funciona con los MIG regionales si la redistribución proactiva de instancias está inhabilitada.
  • El ajuste de escala automático no funciona con MIG con estado.
  • No puedes crear instancias con nombres específicos mientras está activado el ajuste de escala automático. Sin embargo, puedes activar el escalador automático después de crear instancias de VM con nombres específicos.
  • No puedes usar el ajuste de escala automático si tu MIG tiene una configuración con estado.
  • No uses el ajuste de escala automático de Compute Engine con MIG que sean propiedad de Google Kubernetes Engine. Para los grupos de Google Kubernetes Engine, usa el ajuste de escala automático de clúster en su lugar.

    Si no estás seguro de si tu grupo es parte de un clúster de GKE, busca el prefijo gke en el nombre del MIG. Por ejemplo, gke-test-1-3-default-pool-eadji9ah

  • Un escalador automático puede tomar decisiones de escalamiento en función de varias métricas, pero solo puede manejar una política por tipo de métrica, excepto en el caso de las métricas de Cloud Monitoring. Un escalador automático puede manejar hasta cinco políticas basadas en las métricas de Monitoring. El escalador automático calcula la cantidad recomendada de máquinas virtuales para cada política y, luego, escala según la política que proporciona la mayor cantidad de máquinas virtuales en el grupo.

  • El ajuste de escala automático funciona sin depender de la reparación automática. Si configuras la reparación automática para tu grupo y una instancia no pasa la verificación de estado, el reparador automático intenta recrear la instancia. Volver a crear una instancia puede hacer que la cantidad de instancias del grupo caiga por debajo del umbral del ajuste de escala automático (minNumReplicas) que especificas.

  • Si realizas un ajuste de escala automático en un MIG regional, puedes agregar una instancia y, luego, borrarla inmediatamente de una de las zonas. Esto sucede cuando el uso en la zona activa un escalamiento horizontal, pero el uso general en el MIG regional no requiere la instancia adicional, o bien la instancia adicional se requiere en otra zona.

Información básica

Estos son los conceptos y servicios fundamentales que se incluyen en el ajuste de escala automático.

Grupos de instancias administrados

El ajuste de escala automático es una función de los grupos de instancias administrados (MIG). Un grupo de instancias administrado es un conjunto de instancias de máquina virtual (VM) que se crea a partir de una plantilla de instancias común. Un escalador automático agrega o borra instancias de un grupo de instancias administrado. Si bien Compute Engine cuenta con grupos de instancias administrados y no administrados, solo los administrados pueden usarse con un escalador automático.

Para comprender la diferencia entre un grupo de instancias administrado y uno no administrado, consulta Grupos de instancias.

Política de ajuste de escala automático y uso objetivo

Para crear un escalador automático, especifica la política de ajuste de escala automático y un nivel de uso objetivo que el escalador automático usa para determinar cuándo escalar el grupo. Puedes optar por escalar con las siguientes políticas:

  • Uso de CPU promedio
  • Capacidad de entrega de balanceo de cargas de HTTP, que puede basarse en el uso o las solicitudes por segundo
  • Métricas de Cloud Monitoring

El escalador automático recopila de manera continua información del uso en función de la política, compara el uso real con el uso objetivo deseado y usa esta información para determinar si el grupo necesita quitar (reducción de escala) o agregar (escalamiento horizontal) instancias.

El nivel de uso objetivo es el nivel en el que deseas mantener las instancias de máquina virtual (VM). Por ejemplo, si escalas según el uso de CPU, puedes configurar tu nivel de uso objetivo en un 75%, y el escalador automático mantendrá el uso de CPU del grupo especificado de instancias en un 75% o aproximado. El nivel de uso de cada métrica se interpreta de manera diferente según la política de ajuste de escala automático.

Para ver un breve resumen de cada política, consulta las políticas. Para ver el debate detallado de cada política, consulta los temas siguientes:

Período de inactividad

Mientras una instancia se inicializa, es posible que la información sobre su uso no refleje las circunstancias normales, por lo que esa información puede no ser confiable para las decisiones del escalador automático y se recomienda omitir estos datos. Especifica un período de inactividad para permitir que las instancias terminen de inicializarse antes de que el escalador automático comience a recopilar la información de uso de ellas. Según la configuración predeterminada, el período de inactividad es de 60 segundos.

El tiempo de inicialización real varía debido a una gran cantidad de factores. Recomendamos que pruebes el tiempo que demora tu aplicación en inicializarse. Para ello, crea una instancia y una hora de proceso de inicio desde que esta se vuelve RUNNING hasta que la aplicación esté lista.

Si estableces un valor de período de inactividad mucho mayor que el tiempo que demora una instancia en inicializarse, es posible que el escalador automático ignore datos de uso legítimos y podría subestimar el tamaño requerido de tu grupo, lo que generaría un retraso del escalamiento horizontal.

Período de estabilización

Para la reducción, el escalador automático calcula el tamaño objetivo recomendado del grupo en función de la carga máxima durante los últimos 10 minutos. Estos últimos 10 minutos se denominan período de estabilización.

El escalador automático usa el período de estabilización a fin de garantizar que el tamaño recomendado de tu grupo de instancias administrado sea suficiente para manejar la carga máxima observada durante los 10 minutos anteriores.

Este período de estabilización de 10 minutos puede aparecer como un retraso en la reducción de escala, pero en realidad es una función integrada del ajuste de escala automático. La demora garantiza que el tamaño más pequeño del grupo es suficiente para soportar la carga máxima de los últimos 10 minutos.

Modo de ajuste de escala automático

Si necesitas investigar o configurar tu grupo sin interferencia de las operaciones del escalador automático, puedes desactivar o restringir las actividades de ajuste de escala automático de manera temporal. La configuración del escalador automático persiste mientras está apagado o restringido, y todas las actividades de ajuste de escala automático se reanudan cuando lo vuelves a activar o levantas la restricción.

Controles de reducción de escala

Si tus cargas de trabajo tardan muchos minutos en inicializarse (por ejemplo, debido a tareas de instalación prolongadas), puedes reducir el riesgo de latencia en la respuesta causada por eventos de reducción de escala abruptos mediante la configuración de controles de reducción de escala. Específicamente, si es previsible que haya incrementos en la carga poco después de las disminuciones, puedes limitar la tasa de reducción de escala para impedir que el ajuste de escala automático reduzca el tamaño del MIG en más instancias de VM de lo que puede tolerar tu carga de trabajo.

No es necesario que configures los controles de reducción de escala si tu aplicación se inicializa lo suficientemente rápido como para manejar los incrementos en la carga cuando se realiza el escalamiento horizontal.

Para configurar los controles de reducción de escala, configura las siguientes propiedades en tu política de ajuste de escala automático.

  • Reducción máxima permitida. La cantidad de instancias de VM que tu carga de trabajo puede perder (en relación con su tamaño máximo) dentro del margen de tiempo anterior especificado. Usa este parámetro para limitar la reducción de escala de tu grupo, de modo que no pierdas capacidad de respuesta ante un incremento de carga probable hasta que entren en funcionamiento más instancias. Cuanto más pequeña sea la reducción máxima permitida que configures, más tardará la reducción de escala de tu grupo.

  • Margen de tiempo anterior. El período pasado durante el cual el escalador automático supervisa el tamaño máximo que necesitó tu carga de trabajo. Cuando el escalador automático cambie el tamaño del grupo, la cantidad de instancias se mantendrá siempre por encima del tamaño máximo observado en este período menos la reducción máxima permitida. Puedes usar este parámetro para definir cuánto tiempo debe esperar el escalador automático antes de quitar instancias conforme a los requisitos de la reducción máxima permitida. Con un margen de tiempo final más prolongado, el escalador automático considera máximas más históricas, lo que hace que la reducción del escalamiento sea más conservadora y estable.

Para obtener más información consulta Configuración de controles de reducción de escala y la sección Información sobre las decisiones de los escaladores automáticos.

El tamaño de grupo recomendado es la cantidad recomendada de VM del escalador automático que el grupo de instancias administrado debe mantener, según la carga máxima observada durante los últimos 10 minutos. Estos últimos 10 minutos se denominan período de estabilización. El tamaño objetivo recomendado se vuelve a calcular constantemente. Si configuras una política de ajuste de escala automático con controles de reducción de escala, recommendedSize estará restringido por tus controles de reducción de escala.

Próximos pasos

  1. Si no tienes un MIG existente, puedes crear un grupo de instancias administrado.
  2. Crea un escalador automático que se ajuste según los siguientes factores:

  3. Administra tu escalador automático, por ejemplo, para obtener información sobre él, configurar controles de reducción de escala o restringirlo de manera temporal.