Acerca de los grupos regionales de instancias gestionadas


Un grupo de instancias gestionadas (MIG) que distribuye sus VMs en varias zonas de una región también se conoce como MIG regional. Un MIG confinado en una sola zona también se conoce como MIG zonal.

Puedes usar un MIG regional para aumentar la resiliencia de tu carga de trabajo basada en MIGs. Distribuir tu carga de trabajo en varias zonas de una región te ayuda a protegerte en casos extremos en los que fallan todas las instancias de una sola zona.

Este documento contiene información conceptual sobre los MIGs regionales:

Para saber cómo crear un MIG regional, consulta el artículo Crear un MIG en varias zonas.

¿Por qué elegir grupos de instancias gestionadas regionales?

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

  • Puedes usar MIGs regionales para gestionar hasta 2000 instancias, el doble que con los MIGs zonales. Si necesitas más, puedes aumentar el límite de tamaño de un MIG regional a 4000 instancias.
  • Puedes usar MIGs regionales para distribuir la carga de tu aplicación en varias zonas, en lugar de limitarla a una sola zona o gestionar varios MIGs zonales en diferentes zonas.

Usar varias zonas protege frente a fallos zonales y situaciones imprevistas en las que un grupo completo de instancias de una sola zona no funcione correctamente. Si esto ocurre, tu aplicación puede seguir enviando tráfico desde instancias que se ejecuten en otra zona de la misma región.

En caso de que se produzca un fallo en una zona o si un grupo de instancias de una zona deja de responder, un MIG regional seguirá admitiendo tus instancias de la siguiente manera:

  • El número de instancias que forman parte del MIG regional en las zonas restantes sigue sirviendo tráfico. No se añaden instancias nuevas ni se redistribuyen las que ya hay (a menos que configures el autoescalado).

  • Una vez que se haya recuperado la zona en la que se ha producido un error, la MIG volverá a servir tráfico desde esa zona.

Cuando diseñes aplicaciones sólidas y escalables, usa grupos regionales de instancias gestionados.

Opciones de configuración adicionales para los MIGs regionales

Crear un MIG regional es similar a crear un MIG de zona, con la diferencia de que tienes más opciones:

Estas opciones se describen en las siguientes secciones.

Selección de zonas

De forma predeterminada, un MIG regional distribuye sus instancias gestionadas de manera uniforme en tres zonas. Por varios motivos, puede que quieras seleccionar zonas específicas para tu aplicación. Por ejemplo, si necesitas GPUs para tus instancias, puedes seleccionar solo las zonas que admitan GPUs o tener discos persistentes o reservas que solo estén disponibles en determinadas zonas.

Si quieres elegir el número de zonas o las zonas específicas en las que se ejecuta el grupo, debes hacerlo cuando crees el grupo. Una vez que elijas zonas específicas durante la creación, no podrás cambiar ni actualizar las zonas más adelante.

Si quieres que tu MIG use automáticamente las zonas que admitan el hardware que especifiques en la configuración del MIG, puedes definir la forma de distribución de destino del MIG como BALANCED, ANY o ANY_SINGLE_ZONE y seleccionar todas las zonas de una región. El MIG comprueba automáticamente la disponibilidad de los recursos y programa las instancias solo en las zonas que tienen los recursos. Para obtener más información, consulta Forma de la distribución de destino.

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

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

Google amplía su infraestructura con regularidad poniendo hardware especializado a disposición de más zonas. Un MIG regional comprueba periódicamente la disponibilidad del hardware e inicia automáticamente la programación de instancias en las zonas que admiten las máquinas necesarias. Si por algún motivo no quieres ejecutar tus instancias en algunas zonas, no selecciones esas zonas al crear el grupo.

Para saber cómo crear un MIG regional y seleccionar zonas, consulta Crear un MIG regional.

Forma de distribución del destino

De forma predeterminada, un MIG regional distribuye sus instancias gestionadas de manera uniforme entre las zonas seleccionadas. Sin embargo, si necesitas hardware que no esté disponible en todas las zonas o si quieres priorizar el uso de reservas zonales, puede que prefieras otra distribución.

Para configurar cómo distribuye un MIG regional sus instancias en las zonas seleccionadas de una región, define la forma de distribución objetivo del MIG. Se encuentran disponibles las siguientes opciones:

  • EVEN (valor predeterminado): el grupo crea y elimina VMs para conseguir y mantener el mismo número de VMs en las zonas seleccionadas. En una distribución EVEN, el número de VMs no difiere en más de 1 entre dos zonas. Se recomienda para cargas de trabajo de publicación de alta disponibilidad.
  • EQUILIBRADO: el grupo prioriza la creación de VMs en zonas donde hay recursos disponibles, al tiempo que distribuye las VMs de la forma más uniforme posible entre las zonas seleccionadas para minimizar el impacto de los fallos zonales. Se recomienda para cargas de trabajo por lotes o de servicio de alta disponibilidad.
  • ANY: el grupo elige zonas para crear instancias de VM con el fin de cumplir el número de VMs solicitado dentro de las restricciones de recursos actuales y maximizar la utilización de las reservas zonales no utilizadas. Se recomienda para cargas de trabajo por lotes que no requieran alta disponibilidad.
  • CUALQUIER ZONA: el grupo crea todas las instancias de VM en una sola zona. La zona se elige en función de la compatibilidad del hardware, los recursos y la disponibilidad de cuotas actuales, así como de las reservas coincidentes. Se recomienda usarlo en combinación con una política de emplazamiento de instancias compacta para cargas de trabajo que requieran una comunicación exhaustiva entre máquinas virtuales.

Cuando creas un MIG, si le asignas la forma BALANCED, ANY o ANY_SINGLE_ZONE, no tienes que verificar manualmente qué zonas admiten el hardware que especificas en la configuración del MIG. Puedes seleccionar todas las zonas de una región y, si el valor de su forma es BALANCED, ANY o ANY_SINGLE_ZONE, tu MIG regional comprobará la disponibilidad de recursos y programará instancias solo en las zonas que tengan los recursos.

Elige una opción en función de los requisitos de tu carga de trabajo y de las funciones de MIG que necesites. Para obtener más información, consulta la tabla comparativa y los casos prácticos.

Para obtener información sobre cómo configurar la forma de destino de un MIG nuevo o ya creado, consulte el artículo Definir una política para distribuir instancias entre zonas.

Redistribución de instancias proactiva

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 tu aplicación en caso de que se produzca un fallo a nivel de zona.

Si eliminas o abandonas instancias de tu grupo, lo que provoca una distribución desigual entre las zonas, el grupo redistribuye las instancias de forma proactiva para restablecer una distribución uniforme.

Para restablecer una distribución uniforme entre las zonas, el grupo elimina instancias de las zonas con más instancias y añade instancias a las zonas con menos instancias. El grupo elige automáticamente qué instancias eliminar.

La redistribución proactiva restablece la distribución uniforme entre las 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 eliminas 3 instancias gestionadas en c, el grupo intentará restablecer el equilibrio para que las instancias se distribuyan de nuevo de forma uniforme entre las zonas. En este caso, el grupo elimina 2 instancias (una de a y otra de b) y crea 2 instancias en la zona c, de modo que cada zona tiene 3 instancias y se consigue una distribución uniforme. No hay forma de determinar selectivamente qué instancias se eliminan. El grupo pierde capacidad temporalmente mientras se inician las nuevas instancias.

Para evitar que tus instancias se redistribuyan automáticamente, puedes desactivar la redistribución proactiva de instancias.

Desactivar la redistribución proactiva de instancias es útil cuando necesitas hacer lo siguiente:

  • Eliminar o abandonar instancias del grupo sin que afecte a otras instancias en ejecución. Por ejemplo, puedes eliminar una instancia de trabajador por lotes después de completar un trabajo sin que afecte a otros trabajadores.
  • Protege las instancias con cargas de trabajo con reconocimiento del estado frente a la eliminación automática no deseada debido a la redistribución proactiva.
  • Define la forma de distribución del objetivo del MIG como BALANCED o ANY_SINGLE_ZONE.
Si inhabilitas la redistribución proactiva, la capacidad puede verse afectada durante un fallo de zona.
Distribución irregular después de inhabilitar la redistribución proactiva

Si desactivas la redistribución proactiva de instancias, un MIG no añadirá ni eliminará instancias de forma proactiva para lograr el equilibrio, pero seguirá convergiendo oportunistamente hacia el equilibrio durante las operaciones de cambio de tamaño, tratando cada operación de cambio de tamaño como una oportunidad para equilibrar el grupo. Por ejemplo, al reducir el tamaño, el grupo utiliza automáticamente el reescalado como una oportunidad para eliminar instancias de zonas más grandes. Al aumentar el tamaño, el grupo aprovecha la oportunidad para añadir instancias a zonas más pequeñas.

Diferencias de comportamiento con respecto a los MIGs zonales

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

Como las instancias gestionadas de un MIG regional se distribuyen por las zonas de una región, las siguientes funciones de los MIGs se comportan de forma ligeramente diferente.

Autoescalar un MIG regional

Compute Engine ofrece la función de autoescalado para los grupos de instancias administradas, lo que permite que tus grupos añadan VMs (escalar horizontalmente) o eliminen VMs (escalar verticalmente) automáticamente en función de los aumentos o las disminuciones de la carga.

Si habilitas el autoescalado en un MIG regional, la función se comporta de la siguiente manera:

  • El escalador automático distribuye las VMs entre las zonas de la forma más equitativa posible.

  • Si la forma de distribución del destino es BALANCED, el autoescalador conoce la disponibilidad de recursos en las zonas. La herramienta de ajuste automático de escala crea máquinas virtuales de forma proactiva solo en las zonas que tienen suficiente cuota y capacidad para las máquinas virtuales, tal como se especifica en la configuración del MIG.

Actualizar un MIG regional

No puedes cambiar ni actualizar las zonas de un MIG regional después de crear el grupo. Sin embargo, puedes establecer la forma de distribución de destino del grupo para priorizar el uso de diferentes zonas. Por ejemplo, si has reservado recursos o necesitas hardware que no esté disponible en todas las zonas.

Si quieres desplegar una nueva plantilla en un MIG regional, consulta Actualizar un MIG regional.

Si quieres añadir o quitar instancias en un MIG, el proceso es similar para los MIGs regionales y zonales. Consulta Añadir y quitar VMs en un MIG.

Si quieres configurar discos o metadatos con reconocimiento del estado en un MIG, consulta el artículo Configurar grupos de instancias gestionados con reconocimiento del estado.

Cómo aumentar la disponibilidad mediante el sobreaprovisionamiento

Puede haber varios eventos que provoquen que una o varias instancias no estén disponibles. Para mitigar este problema, puedes usar varios Google Cloud servicios:

Sin embargo, aunque utilices estos servicios, es posible que tus usuarios sigan teniendo problemas si demasiadas de tus instancias no están disponibles al mismo tiempo.

Para prepararse ante el caso extremo en el que falle una zona o un grupo entero de instancias deje de responder, Google recomienda encarecidamente que aprovisione en exceso su MIG. En función de las necesidades de tu aplicación, el aprovisionamiento excesivo de tu grupo evita que tu sistema falle por completo si una zona o un grupo de instancias deja de responder.

Google hace recomendaciones para el sobreaprovisionamiento con el objetivo de que tu aplicación esté disponible para tus usuarios. Estas recomendaciones incluyen el aprovisionamiento y el pago de más instancias de las que tu aplicación podría necesitar en el día a día. Basa tus decisiones de sobreaprovisionamiento en las necesidades de las aplicaciones y las limitaciones de costes.

Puedes definir el tamaño de tu MIG al crearlo y añadir o quitar instancias después de crearlo.

Puedes configurar un escalador automático para que añada y quite instancias automáticamente en el grupo en función de la carga.

Estimar el tamaño de grupo recomendado

Te recomendamos que aprovisiones suficientes instancias para que, si todas las instancias de una zona dejan de estar disponibles, las instancias restantes sigan cumpliendo el número mínimo de instancias que necesitas.

Consulta la siguiente tabla para determinar el tamaño mínimo recomendado de tu grupo:

Número de zonas Instancias de VM adicionales Total de instancias de máquina virtual recomendadas
2 +100% 200%
3 +50 % 150 %
4 +33% 133%

Aprovisionar un MIG regional en tres o más zonas

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 conservar al menos 2/3 de tu capacidad de servicio. Si falla una zona, las otras dos zonas de la región pueden seguir sirviendo tráfico sin interrupciones. Si sobreaprovisionas hasta el 150%, puedes asegurarte de que, si se pierde 1/3 de la capacidad, las zonas restantes puedan admitir el 100% del tráfico.

Por ejemplo, si necesitas 20 instancias en tu MIG en tres zonas, te recomendamos que añadas al menos un 50% de instancias. En este caso, el 50% de 20 son 10 instancias más, lo que da un total de 30 instancias en el grupo. Si creas un MIG regional con un tamaño de 30, el grupo distribuirá tus VMs entre las tres zonas de la siguiente manera:

Zona Número de instancias de VM
example-zone-1 10
example-zone-2 10
example-zone-3 10

Si falla una zona, seguirás teniendo 20 instancias que envíen tráfico.

Aprovisionar un MIG regional en dos zonas

Para aprovisionar tus instancias en dos zonas en lugar de tres, Google recomienda duplicar el número de instancias. Por ejemplo, si necesitas 20 instancias para tu servicio, distribuidas en dos zonas, te recomendamos que configures un MIG regional con 40 instancias para que cada zona tenga 20 instancias. Si falla una zona, seguirás teniendo 20 instancias que envíen tráfico.

Zona Número de instancias de VM
example-zone-1 20
example-zone-2 20

Si el número de instancias de tu grupo no se puede dividir equitativamente entre dos zonas, Compute Engine divide el grupo de VMs de forma uniforme y coloca las instancias restantes en una de las zonas de forma aleatoria.

Aprovisionar un MIG regional en una zona

Puedes crear un MIG regional con una sola zona. Es similar a crear un MIG de zona.

No se recomienda crear un MIG regional de una sola zona, ya que ofrece la garantía mínima para aplicaciones de alta disponibilidad. Si la zona falla, toda la MIG no estará disponible, lo que podría afectar a tus usuarios.

Siguientes pasos