Grupos de instancias administrados regionales

Puedes usar un grupo de instancias administrado (MIG) regional para aumentar la resiliencia de tu carga de trabajo basada en MIG. Un MIG regional distribuye tus instancias de máquina virtual (VM) en varias zonas de una región, lo que te protege de casos extremos en los que fallan todas las instancias de una sola zona.

En esta página, se proporciona información conceptual sobre los MIG regionales:

Si deseas obtener más información para crear un MIG regional, consulta Crea y administra MIG regionales.

¿Por qué elegir grupos de instancias administrados regionales?

Google recomienda los MIG regionales en lugar de los MIG zonales por los siguientes motivos:

  • Puedes usar MIG regionales para administrar hasta 2,000 instancias, el doble que con los MIG zonales.
  • Puedes usar MIG regionales para distribuir la carga de tu aplicación en varias zonas, en lugar de limitar tu aplicación a una sola zona o administrar varios MIG zonales en diferentes zonas.

Usar varias zonas te protege contra fallas zonales y situaciones imprevistas en las que todo un grupo de instancias de una única zona funciona mal. Si eso sucede, la aplicación puede continuar entregando tráfico desde instancias que se ejecutan en otra zona de la misma región.

En el caso de una falla zonal, o si un grupo de instancias de una zona deja de responder, un MIG regional continúa admitiendo tus instancias de la siguiente manera:

  • Las instancias que forman parte del MIG regional en las zonas restantes continúan entregando tráfico. No se agregan instancias nuevas ni se redistribuyen (a menos que configures el ajuste de escala automático).

  • Una vez que la zona con errores se recupera, el MIG retoma la entrega de tráfico desde esa zona.

Cuando desees diseñar aplicaciones sólidas y escalables, usa MIG regionales.

Limitaciones

  • Con un MIG regional, puedes crear hasta 2,000 VM en una región, con un máximo de 1,000 VM por zona. Con un MIG zonal, puedes crear hasta 1,000 VM. Si necesitas más, comunícate con el equipo de asistencia.
  • Cuando actualizas un MIG, puedes especificar hasta 1,000 VM en una sola solicitud.
  • No puedes crear un MIG con varias subredes. Una vez creada, no puedes cambiar la red o subred en un MIG.
  • Si deseas un MIG con estado, revisa sus limitaciones.

  • Debes seleccionar qué zonas están asociadas a un MIG regional cuando creas el MIG regional. Después de elegir zonas específicas durante la creación, no puedes cambiarlas o actualizarlas más tarde. Sin embargo, puedes establecer la forma de distribución objetivo del MIG para especificar la forma en que el grupo distribuye sus instancias administradas en las zonas que seleccionaste.

  • Si configuras la forma de distribución objetivo del grupo en ANY o en BALANCED, revisa las limitaciones.

  • Si deseas usar el balanceo de cargas con un MIG regional, se aplican las siguientes limitaciones:

    • No puedes usar el modo de balanceo maxRate.
    • Si usas un esquema de balanceo de cargas de HTTP(S) con un MIG regional, debes elegir el modo de balanceo maxRatePerInstance o maxUtilization.
  • Si deseas realizar un ajuste de escala automático en un MIG regional, se aplican las siguientes limitaciones:

Opciones de configuración regional

Crear un MIG regional es similar a crear un MIG zonal, excepto que tienes opciones adicionales:

  • Puedes seleccionar en qué zonas dentro de una región se crearán las instancias.
  • Puedes elegir cómo distribuir las instancias entre las zonas seleccionadas.

Estas opciones se describen a continuación.

Selección de la zona

De forma predeterminada, un MIG regional distribuye sus instancias administradas de manera uniforme entre tres zonas. Por varias razones, te recomendamos seleccionar zonas específicas para la aplicación. Por ejemplo, si necesitas GPU para tus instancias, puedes seleccionar únicamente zonas que admitan GPU o puedes tener discos persistentes existentes o reservas que solo estén disponibles en determinadas zonas.

Si deseas seleccionar la cantidad de zonas o las zonas específicas en las que se ejecuta el grupo, debes hacerlo cuando crees el grupo por primera vez. Después de elegir zonas específicas durante la creación, no puedes cambiarlas o actualizarlas más tarde.

Si deseas que el MIG use de forma automática las zonas que admiten el hardware que especificas en la plantilla de instancias del MIG, puedes establecer la forma de distribución objetivo del MIG en BALANCED o ANY y seleccionar todas las zonas en una región. El MIG verifica de forma automática la disponibilidad de los recursos y programa las instancias solo en las zonas que tienen los recursos. Si deseas priorizar el uso de las reservas zonales, establece la forma en ANY. Para obtener más información, consulta Forma de distribución objetivo.

  • Para seleccionar más de tres zonas dentro de una región, debes especificar las zonas individuales de forma explícita. Por ejemplo, para seleccionar las cuatro zonas dentro de una región, debes proporcionar las cuatro zonas de forma explícita en tu solicitud. Si no lo haces, Compute Engine selecciona tres zonas de forma predeterminada.

  • Para seleccionar dos o menos zonas en una región, debes especificar las zonas individuales de forma explícita. Incluso si la región solo contiene dos zonas, debes especificar explícitamente las zonas en tu solicitud.

Para expandir su infraestructura de forma periódica, Google habilita hardware especializado en más zonas. Un MIG regional verifica la disponibilidad de hardware de forma periódica y comienza a programar instancias de forma automática en zonas que admiten las máquinas requeridas. Si por alguna razón no deseas ejecutar tus instancias en algunas zonas, no selecciones esas zonas cuando crees tu grupo.

Para aprender a crear un MIG regional y seleccionar zonas, consulta Crea un MIG regional.

Forma de distribución objetivo

De forma predeterminada, un MIG regional distribuye sus instancias administradas de manera uniforme entre las zonas seleccionadas. Sin embargo, si necesitas hardware que no está disponible en todas las zonas o si necesitas priorizar el uso de las reservas zonales, es posible que prefieras una distribución diferente.

Para configurar cómo tu MIG regional distribuye sus instancias entre las zonas seleccionadas dentro de una región, establece la forma de distribución objetivo del MIG. Las siguientes opciones están disponibles:

  • EVEN (configuración predeterminada): El grupo programa la creación y la eliminación de instancias de VM para lograr y mantener una cantidad par de instancias administradas en las zonas seleccionadas. La distribución es uniforme cuando la cantidad de instancias administradas no difiere en más de 1 entre dos zonas. Se recomienda para cargas de trabajo de entrega con alta disponibilidad.

  • BALANCED: El grupo prioriza la adquisición de recursos y programa las VM en zonas donde los recursos están disponibles, mientras distribuye las VM de la manera más uniforme posible en las zonas seleccionadas para minimizar el impacto de la falla zonal. Se recomienda para cargas de trabajo de entrega con alta disponibilidad o por lotes que no requieren ajuste de escala automático.

  • ANY: El grupo elige zonas para crear instancias de VM a fin de cumplir con la cantidad solicitada de VM dentro de las restricciones de recursos actuales y maximizar el uso de las reservas zonales no utilizadas. Se recomienda para cargas de trabajo por lotes que no requieren de alta disponibilidad.

Cuando creas el MIG, si estableces la forma en BALANCED o ANY, no necesitas verificar de forma manual qué zonas admiten el hardware que especificaste en la plantilla de instancias del grupo. Puedes seleccionar todas las zonas de una región y, con su forma configurada como BALANCED o ANY, el MIG regional verifica la disponibilidad de los recursos por ti y programa las instancias solo en las zonas que tienen los recursos.

Elige una opción según los requisitos de las cargas de trabajo y las capacidades de MIG que necesitas. Para obtener más información, consulta la tabla comparativa y los casos de uso.

A fin de obtener información sobre cómo configurar la forma objetivo para un MIG nuevo o existente, consulta Establece una política para distribuir instancias entre zonas.

Redistribución proactiva de instancias

De forma predeterminada, un MIG regional intenta mantener una distribución uniforme de las instancias en las zonas de la región para maximizar la disponibilidad de la aplicación en caso de que se produzca una falla a nivel de la zona.

Si borras o abandonas instancias de tu grupo y esto provoca una distribución desigual entre zonas, el grupo redistribuye las instancias de forma proactiva a fin de restablecer una distribución uniforme.

Para restablecer una distribución uniforme entre zonas, el grupo borra instancias en las zonas con más instancias y las agrega a las zonas con menos instancias. El grupo elige de forma automática qué instancias borrar.

La redistribución proactiva restablece una distribución uniforme entre zonas.
Ejemplo de redistribución proactiva

Por ejemplo, supongamos que tienes un MIG regional con 12 instancias distribuidas en 3 zonas: a, b y c. Si borras 3 instancias administradas en c, el grupo intenta un balanceo nuevo para que las instancias vuelvan a distribuirse de manera uniforme entre las zonas. En este caso, el grupo borra 2 instancias (una de a y otra de b) y crea 2 instancias en la zona c, de modo que cada zona tenga 3 instancias y se logre una distribución uniforme. No hay forma de seleccionar qué instancias se borran. El grupo pierde capacidad de forma temporal mientras se inician las instancias nuevas.

Para evitar la redistribución automática de las instancias, puedes inhabilitar la redistribución proactiva.

Inhabilitar la redistribución proactiva de instancias es útil cuando necesitas realizar las siguientes acciones:

  • Borrar o abandonar instancias del grupo sin que otras instancias en ejecución se vean afectadas. Por ejemplo, puedes borrar una instancia de trabajador por lotes después de que se completa el trabajo sin que otros trabajadores se vean afectados
  • Proteger las instancias con cargas de trabajo con estado de la eliminación automática no deseada debido a la redistribución proactiva
  • Configura la forma de distribución objetivo del MIG en BALANCED.
La inhabilitación de la redistribución proactiva puede afectar la capacidad durante una falla zonal.
Distribución desigual después de inhabilitar la redistribución proactiva

Si inhabilitas la redistribución proactiva de instancias, un MIG no agrega ni quita instancias de forma proactiva con el objetivo de lograr el balanceo, pero aún converge de manera oportunista hacia el balanceo durante las operaciones de cambio de tamaño y trata cada operación de cambio de tamaño como una oportunidad para balancear el grupo. Por ejemplo, cuando se reduce la escala, el grupo usa de forma automática el reescalamiento como una oportunidad para quitar instancias de las zonas más grandes. Cuando se escala horizontalmente, el grupo usa la oportunidad con el fin de agregar instancias a las zonas más pequeñas.

Diferencias de comportamiento con los MIG zonales

La diferencia principal entre un MIG zonal y uno regional es que el MIG regional puede usar más de una zona.

Debido a que las instancias administradas de un MIG regional se distribuyen entre zonas dentro de una región, las siguientes funciones del MIG se comportan un poco diferente.

Ajuste de escala automático de un MIG regional

Compute Engine ofrece el ajuste de escala automático para los MIG, lo que permite que tus grupos agreguen instancias (escalamiento horizontal) o quiten instancias (reducción de la escala) de forma automática según los aumentos o las disminuciones de la carga.

Si habilitas el ajuste de escala automático para un MIG regional, la función se comporta de la siguiente manera:

  • Se aplica una política de ajuste de escala automático al grupo en su totalidad. Por ejemplo, si habilitas el escalador automático a fin de alcanzar el 66% de uso de CPU, el escalador automático realiza un seguimiento de todas las instancias del grupo para mantener un promedio de uso del 66% en todas las instancias de todas las zonas.

  • El ajuste de escala automático intenta distribuir de forma uniforme las VM entre las zonas disponibles. En general, el escalador automático mantiene balanceado el tamaño de las zonas. Para ello, agrega VM a las zonas que tienen menos VM. Luego, la carga se redirecciona desde zonas con más VM, por ejemplo, a través de un balanceador de cargas. No recomendamos configurar un balanceador de cargas personalizado que prefiera una zona, ya que esto podría causar un comportamiento inesperado, como una distribución desigual de instancias entre zonas o instancias sin usar en otras zonas.

  • Si tu flujo de trabajo usa instancias de manera uniforme en 3 zonas y una zona experimenta una falla, o falla un grupo de instancias dentro de una zona, puede que se pierda 1/3 de la capacidad, pero 2/3 permanecen en las otras zonas. Recomendamos que aprovisiones en exceso tu MIG regional con ajuste de escala automático para evitar sobrecargar los servidores activos durante el tiempo que se pierda una zona.

  • Si los recursos (por ejemplo, las instancias interrumpibles) no están disponibles en una zona de forma temporal, el grupo continúa intentando crear esas instancias en esa zona. Una vez que los recursos vuelven a estar disponibles, el grupo adquiere la cantidad deseada de instancias en ejecución.

  • Si el balanceo de cargas está habilitado y los recursos no están disponibles en una zona, lo que causa un mayor uso de los recursos existentes en esa zona, se podrían crear nuevas instancias en zonas con tasas de uso más bajas, lo que puede dar como resultado una distribución desigual de forma temporal.

El escalador automático solo agrega instancias a una zona hasta 1/n del máximo especificado para el grupo, en el que n es la cantidad de zonas aprovisionadas. Por ejemplo, si usas el valor predeterminado de 3 zonas, y si 15 es la maxNumReplicas configurada para el ajuste de escala automático, el escalador automático solo puede agregar hasta 1/3 * 15 = 5 instancias por zona para el grupo. Si una zona falla, el escalador automático solo escala horizontalmente hasta 2/3 de la maxNumReplicas en las dos zonas restantes combinadas.

Aprovisiona tu configuración de escalador automático

De igual modo en que aconsejamos Aprovisiona en exceso un MIG regional, debes aprovisionar en exceso la configuración del escalador automático del MIG regional. Si suponemos que tu grupo usa 3 zonas, configura el ajuste de escala automático de la siguiente manera:

  • El objetivo de uso del ajuste de escala automático es 2/3 del objetivo de uso deseado.
  • A fin de adaptarse al objetivo de uso reducido, el escalador automático agrega más instancias, por lo que deberías aumentar la maxNumReplicas un 50% más que el número que habrías establecido sin tener en cuenta el aprovisionamiento en exceso.

Por ejemplo, si esperas que 20 instancias puedan manejar las cargas máximas y el objetivo de uso es del 80%, configura el escalador automático según los siguientes valores:

  • 2/3 * 0.8 = 0.53 o 53% para el uso de destino en lugar del 80%
  • 3/2 * 20 = 30 para un número máximo de instancias en lugar de 20

Esta configuración ayuda a garantizar que, en el caso de una falla de zona única, tu MIG no se quede sin capacidad porque las 2/3 de las instancias restantes pueden manejar la mayor carga de la zona sin conexión, (porque redujiste el uso de destino muy por debajo de su capacidad). El escalador automático también agrega instancias nuevas hasta la cantidad máxima de instancias que especificaste para mantener el objetivo de uso de 2/3.

Sin embargo, no debes confiar solo en el aprovisionamiento en exceso de tu MIG para manejar una carga mayor. Como práctica recomendada, Google recomienda que pruebes regularmente tus aplicaciones para asegurarte de que puedan soportar el incremento de utilización que puede provocar una interrupción de zona que quita 1/3 de las instancias.

Para obtener más información sobre el ajuste de escala automático, consulta Descripción general del ajuste de escala automático.

Actualiza un MIG regional

No puedes cambiar la distributionPolicy de un grupo después de crearlo. Esto incluye el cambio o la actualización de las zonas del grupo.

Si deseas lanzar una plantilla nueva en un MIG regional, consulta Actualiza un MIG regional.

Si deseas agregar o quitar instancias a un MIG, el proceso es similar para los MIG regionales y zonales. Consulta Trabaja con instancias administradas.

Si te interesa configurar discos o metadatos con estado en un MIG, consulta Configura MIG con estado.

Cómo aumentar la disponibilidad mediante el aprovisionamiento en exceso

Una variedad de eventos podría ocasionar que una o más instancias dejen de estar disponibles. Puedes mitigar este problema mediante varios servicios de Google Cloud:

Sin embargo, tus usuarios pueden experimentar problemas incluso si usas estos servicios si muchas de tus instancias no están disponibles de manera simultánea.

Google recomienda el aprovisionamiento en exceso de tu MIG a fin de estar preparado para el caso extremo de que una zona falle o un grupo completo de instancias deje de responder. En función de las necesidades de tu aplicación, el aprovisionamiento en exceso del grupo evita que el sistema falle por completo si una zona o un grupo de instancias deja de responder.

Google hace recomendaciones sobre el aprovisionamiento en exceso con la prioridad de mantener la aplicación disponible para tus usuarios. Estas recomendaciones incluyen aprovisionar y pagar más instancias de las que la aplicación podría necesitar en el día a día. Determina el aprovisionamiento en exceso según las necesidades de la aplicación y las limitaciones de costos.

Puedes configurar el tamaño del MIG cuando lo creas y puedes agregar o quitar instancias después de haberlo creado.

Como alternativa, puedes configurar un escalador automático para aprovisionar en exceso de forma automática cuando se agregan y quitan instancias del grupo en función de la carga.

Calcula el tamaño recomendado para el grupo

Recomendamos que aprovisiones suficientes instancias para que, en caso de que todas las instancias en una zona dejen de estar disponibles, las instancias restantes aún puedan cumplir con la cantidad mínima de instancias que necesitas.

Usa la siguiente tabla a fin de determinar el tamaño mínimo recomendado para el grupo:

Cantidad de zonas Instancias de VM adicionales Total de instancias de VM recomendadas
2 +100% 200%
3 +50% 150%
4 +33% 133%

Aprovisiona un MIG regional en tres zonas o más

Cuando creas un MIG regional en una región con al menos tres zonas, Google recomienda aprovisionar en exceso tu grupo en al menos un 50%. De forma predeterminada, un MIG regional crea instancias en tres zonas. Tener instancias en tres zonas ya te ayuda a preservar al menos 2/3 de tu capacidad de entrega; si falla una sola zona, las otras dos zonas de la región pueden continuar entregando tráfico sin interrupción. Si se aprovisiona en exceso al 150%, puedes asegurarte de que, si se pierde 1/3 de la capacidad, las zonas restantes admitirán el 100% del tráfico.

Por ejemplo, si necesitas 20 instancias en el MIG en tres zonas, recomendamos, como mínimo, un 50% adicional de instancias. En este caso, el 50% de 20 son 10 instancias más para un total de 30 instancias en el grupo. Si creas un MIG regional con un tamaño de 30, el grupo distribuye las VM en tres zonas, como se muestra a continuación:

Zona Cantidad de instancias de VM
example-zone-1 10
ejemplo-zona-2 10
ejemplo-zona-3 10

Si alguna de las zonas falla, aún tienes 20 instancias que entregan tráfico.

Aprovisiona un MIG regional en dos zonas

Para aprovisionar tus instancias en dos zonas en lugar de tres, Google recomienda duplicar la cantidad de instancias. Por ejemplo, si necesitas 20 instancias para el servicio, distribuidas en dos zonas, te recomendamos configurar un MIG regional con 40 instancias, de modo que cada zona tenga 20. Si falla una sola zona, todavía tienes 20 instancias que entregan tráfico.

Zona Cantidad de instancias de VM
example-zone-1 20
ejemplo-zona-2 20

Si la cantidad de instancias en tu grupo no se puede dividir con facilidad en dos zonas, Compute Engine divide el grupo de VM de manera uniforme y coloca las instancias restantes de forma aleatoria en una de las zonas.

Aprovisiona un MIG regional en una zona

Puedes crear un MIG regional con solo una zona. Esto es similar a crear un MIG zonal.

No se recomienda crear un MIG regional de una sola zona porque ofrece la garantía mínima para las aplicaciones con alta disponibilidad. Si la zona falla, todo tu MIG dejará de estar disponible, lo que podría interrumpir las operaciones de tus usuarios.

¿Qué sigue?