Crea grupos de instancias administrados

En este documento, se describe cómo crear un grupo de instancias administrado (MIG). Un MIG es un grupo de instancias de máquina virtual (VM) que se controlan como una sola entidad. Los MIG admiten funciones como la reparación automática, el balanceo de cargas, el ajuste de escala automático, la actualización automática y las cargas de trabajo con estado.

Puedes crear MIG regionales o MIG zonales. Los MIG regionales proporcionan una mayor disponibilidad en comparación con los zonales, ya que las instancias en un MIG regional se distribuyen entre varias zonas de una sola región. En este documento, se proporciona información sobre la creación de MIG zonales o regionales. Sin embargo, los MIG regionales tienen opciones y consideraciones adicionales. Para obtener más información sobre los MIG regionales, consulta la Descripción general de MIG regionales.

Para obtener información conceptual sobre los grupos de instancias y sus características, consulta la Descripción general de grupos de instancias.

Antes de comenzar

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.
  • Si deseas un MIG con estado, revisa sus limitaciones.

  • Si deseas un MIG regional, revisa sus limitaciones.

  • La VPC compartida en interfaces que no sean nic0 para los grupos de instancias administrados es compatible con la herramienta de gcloud y la API, pero no en Cloud Console.

MIG sin estado o con estado

Puedes usar MIG para cargas de trabajo de entrega sin estado o por lotes, como un frontend de sitio web o procesamiento de imágenes desde una cola, o para aplicaciones con estado, como bases de datos o aplicaciones heredadas.

Usa MIG para aplicaciones sin estado

Las aplicaciones sin estado no dependen del estado específico de la instancia de máquina virtual (VM) subyacente para ejecutarse. Si usas un MIG sin estado, tu aplicación no debe depender de las propiedades de la VM que no sean persistentes, como el contenido de los discos adjuntos o los datos en la memoria. Si la aplicación requiere que se conserven las propiedades de la VM, consulta Configura MIG con estado.

El comportamiento predeterminado para todos los discos persistentes en un MIG es borrarlos o volver a crearlos cuando se borra o se vuelve a crear la VM correspondiente, por lo que no debes depender de los discos adjuntos como datos persistentes. Para conservar tus datos en un MIG sin estado, te recomendamos mantener imágenes personalizadas actualizadas con regularidad, software y configuraciones actualizadas, o usar secuencias de comandos de inicio y configurar tus aplicaciones para crear una copia de seguridad de los datos necesarios en otra ubicación centralizada, como Cloud Storage.

En las plantillas de instancias, puedes especificar una imagen de contenedor o una imagen personalizada con secuencias de comandos de inicio relevantes, para que, cuando se vuelva a crear una VM, esta tenga instaladas las apps necesarias y pueda acceder a los datos requeridos. Para obtener más información sobre cómo crear plantillas de instancias, consulta Plantillas de instancias deterministas.

Usa MIG para aplicaciones con estado

Los grupos de instancias administrados también admiten aplicaciones con estado. Los MIG con estado conservan el estado único de cada VM (nombre de la instancia de VM, metadatos y discos persistentes conectados) en el reinicio automático, la recreación, la reparación automática o la actualización de la máquina.

Usa MIG con estado para las aplicaciones que tengan datos o configuración con estado, como las bases de datos, las aplicaciones de procesamiento de datos, las aplicaciones heredadas y las cargas de trabajo por lotes de larga duración con puntos de control.

Se recomienda que uses MIG con estado cuando implementes una aplicación o un clúster con estado en Compute Engine y quieras mejorar su disponibilidad con la reparación automática y la implementación de varias zonas, o si deseas simplificar y acelerar las actualizaciones con actualizaciones progresivas automatizadas.

Para obtener información sobre cómo crear un MIG con estado o agregar una configuración con estado a un MIG existente, consulta Configura los MIG con estado.

Crea un grupo de instancias administrado

Un MIG crea cada una de sus instancias administradas según las plantillas de instancias y la configuración con estado opcional que especifiques. Cada instancia administrada es una entidad de datos dentro del MIG que contiene el estado actual y el estado deseado de una instancia de VM real. Los MIG mantienen la alta disponibilidad de las aplicaciones, ya que mantienen las VM disponibles de forma proactiva, es decir, en el estado RUNNING.

Puedes crear un MIG a través de Google Cloud Console, la herramienta de gcloud o la API de Compute Engine. Si prefieres crear un MIG regional, consulta Crea MIG regionales.

Console

  1. En Cloud Console, ve a la página Grupos de instancias.

    Ir a Grupos de instancias

  2. Haz clic en Crear un grupo de instancias.

  3. Si deseas crear un MIG con estado, selecciona la opción Nuevo grupo de instancias administrado (con estado). Para ayudarte a decidir, consulta Cuándo usar los MIG con estado.

  4. Ingresa un nombre para el MIG y selecciona la zona en la que desees alojarlo.

  5. En Tipo de grupo, selecciona Managed instance group.

  6. En Plantilla de instancias, selecciona una plantilla de instancias. Si no hay plantillas disponibles, crea una.

  7. Especifica la cantidad de instancias que quieres crear en el grupo.

  8. De manera opcional, para los MIG sin estado, habilita el Ajuste de escala automático a fin de que el grupo agregue o quite instancias de forma automática en función de su uso

  9. De manera opcional, habilita la reparación automática para realizar verificaciones de estado basadas en aplicaciones en las VM del grupo.

  10. Haz clic en Crearpara crear el grupo nuevo.

gcloud

Crea un grupo de instancias con el comando instance-groups managed create:

gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
    --size SIZE \
    --template INSTANCE_TEMPLATE \
    --zone ZONE

Reemplaza lo siguiente:

  • INSTANCE_GROUP_NAME: El nombre de este grupo de instancias
  • SIZE es el tamaño del grupo de instancias.
  • INSTANCE_TEMPLATE: El nombre de la plantilla de instancias que se usará en este grupo
  • ZONE: Una de las zonas disponibles para Compute Engine. Si quieres crear un MIG regional, consulta Crea y administra MIG regionales.

De forma opcional, puedes proporcionar la marca --base-instance-name. Debido a que estas VM se basan en una misma plantilla, a cada una se le asigna una string aleatoria como parte del nombre. El nombre base se antepone a esta string aleatoria. Por ejemplo, si configuras el nombre base como test, las VM tendrán nombres como test-yahs y test-qtyz. Si necesitas nombres específicos, consulta Crea instancias con nombres específicos en MIG.

Por ejemplo, el siguiente comando crea un grupo de instancias llamado example-group, con el nombre base de VM test. El grupo contiene tres instancias:

gcloud compute instance-groups managed create example-group \
    --base-instance-name test \
    --size 3 \
    --template an-instance-template

API

Realiza una llamada al método instanceGroupManagers.insert o al método regionInstanceGroupManagers.insert. En el cuerpo de la solicitud, especifica el nombre y el tamaño del grupo, y la URL a la plantilla de instancias.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers

{
  "versions": [
    {
      "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE"
    }
  ],
  "name": "INSTANCE_GROUP_NAME",
  "targetSize": SIZE
}

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto de la solicitud.
  • ZONE: La zona de la solicitud. En un MIG regional, reemplaza zones/ZONE por regions/REGION y especifica una región. Para obtener más información, consulta Crea y administra MIG regionales.
  • INSTANCE_GROUP_NAME: El nombre de este grupo de instancias
  • SIZE es el tamaño del grupo de instancias.
  • INSTANCE_TEMPLATE es la plantilla de instancias que se usará en este grupo.

De manera opcional, puedes proporcionar el campo base-name. Debido a que estas VM se basan en una misma plantilla, a cada una se le asigna una string aleatoria como parte del nombre. El nombre base se antepone a esta string aleatoria. Por ejemplo, si configuras el nombre base como test, las VM tendrán nombres como test-yahs y test-qtyz. Si necesitas nombres específicos, consulta Crea instancias con nombres específicos en MIG.

Según cómo configures y actúes en un MIG, varias políticas y acciones pueden afectar las instancias en el grupo. Para determinar qué instancias administradas están en funcionamiento, consulta la sección sobre cómo verificar el estado de instancias administradas.

Cambia la plantilla de instancias de un grupo de instancias administrado

Para aprender a aplicar una plantilla de instancias nueva a un MIG, consulta Actualiza instancias en un MIG.

Cambia el tamaño de un grupo de instancias administrado

Para agregar o quitar VM en un MIG, puedes hacer lo siguiente:

Cambia el tamaño de un MIG de forma automática

Puedes configurar los grupos de instancias administrados para que agreguen o quiten VM de forma automática en función de las cargas de trabajo. Las aplicaciones pueden manejar sin problemas los aumentos de tráfico, y puedes reducir los costos cuando se necesiten menos recursos de procesamiento. Para comenzar a escalar los grupos de instancias administrados, consulta Aplica el ajuste de escala automático en grupos de instancias.

Configura el tamaño de un MIG de forma manual

Si un grupo de instancias administrado aún no se configuró para que escale de forma automática, puedes cambiar el tamaño del grupo manualmente para cambiar la cantidad de instancias. Si aumentas el tamaño, el grupo de instancias administrado usa la plantilla de instancias actual para agregar instancias nuevas. Si disminuyes el tamaño, el grupo de instancias administrado borra las VM. El grupo borra las instancias con un currentAction de DELETING, CREATING y RECREATING antes de borrar las instancias en ejecución sin acciones programadas.

Si el grupo forma parte de un servicio de backend en el que el vaciado de conexiones está habilitado, pueden transcurrir hasta 60 segundos más después de que se complete el vaciado de conexiones hasta que se quite o se borre la instancia de VM.

Puedes cambiar el tamaño de un grupo de instancias administrado mediante Google Cloud Console, la herramienta de gcloud o la API de Compute Engine.

Console

  1. En Cloud Console, ve a la página Grupos de instancias.

    Ir a Grupos de instancias

  2. En la columna Nombre de la lista, haz clic en el nombre del grupo de instancias donde quieres cambiar el tamaño.

  3. Haz clic en Editar para modificar este grupo de instancias administrado.

  4. En Cantidad de instancias, especifica la cantidad que quieres incluir en el grupo de instancias administrado. Si el ajuste de escala automático está habilitado, el grupo agrega o quita instancias de forma automática, según sea necesario. Sin embargo, puedes cambiar los valores en Cantidad mínima de instancias y Cantidad máxima de instancias para ajustar de forma indirecta el tamaño del grupo mediante el escalador automático.

  5. Haz clic en Guardar para aplicar la plantilla nueva.

gcloud

Usa el comando resize.

gcloud compute instance-groups managed resize INSTANCE_GROUP_NAME \
    --size NEW_SIZE \
    --zone ZONE

API

Llama al método resize para un recurso de MIG zonal o regional. Especifica el tamaño del grupo de instancias nuevo como parámetro.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resize?size=NEW_SIZE

Si el grupo de instancias es regional, reemplaza zones/ZONE por regions/REGION.

Luego de que realizas una solicitud para cambiar el tamaño de un grupo de instancias administrado, las VM se inician o se detienen en cuanto el sistema puede aprovisionarlas o borrarlas. Este proceso puede tomar un tiempo significativo en función de la cantidad de instancias en el grupo. Verifica el estado de las instancias en el grupo de instancias administrado.

Inhabilita el modo de reintentos de creación durante el cambio de tamaño

De forma predeterminada, si la creación inicial de una instancia de VM falla, el grupo de instancias administrado seguirá intentando crearla hasta tener éxito. Sin embargo, si no deseas este modo de reintentos de creación automático, puedes inhabilitarlo; para ello, configura la marca --nocreation-retries cuando cambies el tamaño del grupo de instancias. En este modo, el grupo de instancias administrado intenta crear todas las instancias solo una vez. Si hay un error durante la creación de una instancia, el grupo de instancias administrado la descarta, la quita de la lista de instancias administradas y disminuye su tamaño de destino.

Este modo solo se aplica durante el primer intento de creación de una VM. Si una VM se crea de forma correcta mientras este modo está habilitado, la VM se comportará de la misma manera que las que se crearon con una solicitud normal de cambio de tamaño. En particular, si una VM en ejecución se cierra de forma inesperada más adelante, y es necesario volver a crearla, este modo no afecta el comportamiento de recreación.

La opción de inhabilitar el modo de reintentos de creación es útil en situaciones en las que los sistemas crean de forma automática grupos de VM que no requieren una cantidad exacta de VM. Es posible que prefieras estabilizar con rapidez el tamaño del grupo de instancias administrado y ser flexible en cuanto a la cantidad de VM del grupo, en lugar de esperar de manera indefinida hasta que se creen todas las instancias solicitadas, lo que podría retrasarse de forma temporal o permanente debido a errores de cuota o a otros problemas no relacionados.

Para cambiar el tamaño de un grupo de instancias administrado en el modo de reintentos de creación inhabilitado, usa la herramienta de gcloud o la API de Compute Engine.

gcloud

Usa el comando resize beta con la marca --no-creation-retries.

gcloud beta compute instance-groups managed resize INSTANCE_GROUP_NAME --size NEW_SIZE \
    --no-creation-retries \
    --zone ZONE

API

Llama al método resizeAdvanced beta para un recurso MIG zonal o regional. Especifica el tamaño del grupo de instancias nuevo y el campo noCreationRetries en el cuerpo de la solicitud.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeAdvanced

{
 "targetSize": SIZE
 "noCreationRetries": true
}

Si el grupo de instancias es regional, reemplaza zones/ZONE por regions/REGION.

Puedes ver qué instancias que se están creando y en qué modo con el método listManagedInstances. Las instancias que se crean con el modo de reintentos de creación inhabilitado tendrán una currentAction de CREATING_WITHOUT_RETRIES.

Crea instancias con nombres específicos en MIG

Si tienes un sistema que depende de nombres específicos, puedes crear VM con esos nombres. Los nombres que asignas a estas instancias administradas persisten si se vuelve a crear la VM. Consulta Agrega instancias con nombres específicos.

Borra instancias específicas de un grupo

Puedes borrar instancias de VM individuales de un grupo de instancias administrado. Cuando se borran instancias, se reduce el targetSize especificado del grupo de instancias y se quitan las VM de los grupos de destino de los que forman parte.

Borrar instancias de un grupo de instancias administrado no cambia ninguna configuración del escalador automático especificada. Si borras instancias de un grupo, es posible que el escalador automático detecte un aumento en la carga de trabajo en las demás instancias y aumente el tamaño del grupo a su nivel anterior. Para evitarlo, desactiva o borra el escalador automático antes de intentar borrar las instancias.

Si el grupo forma parte de un servicio de backend en el que el vaciado de conexiones está habilitado, pueden transcurrir hasta 60 segundos más después de que se complete el vaciado de conexiones hasta que se quite o se borre la instancia de VM.

Para borrar instancias de un grupo de instancias administrado, puedes usar Google Cloud Console, la herramienta de gcloud o la API de Compute Engine.

Console

  1. En Cloud Console, ve a la página Grupos de instancias.

    Ir a Grupos de instancias

  2. En la columna Nombre de la lista, haz clic en el nombre del grupo de instancias en el que quieres borrar las instancias individuales. Se abrirá una página con las propiedades del grupo de instancias y una lista de instancias incluidas en el grupo.

  3. En la sección Miembros de la lista de instancias, selecciona una o más instancias que quieres borrar.

  4. Haz clic en Borrar instancia. Se borran las instancias seleccionadas.

gcloud

Usa el comando delete-instances.

gcloud compute instance-groups managed delete-instances INSTANCE_GROUP_NAME \
    --instances example-i3n2,example-z2x9 \
    --zone ZONE

API

Llama al método deleteInstances para un recurso de MIG zonal o regional. En el cuerpo de la solicitud, incluye las URL de una o más instancias que desees borrar.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/deleteInstances

{
 "instances": [
  "zones/ZONE/instances/example-instance-i3n2",
  "zones/ZONE/instances/example-instance-l6n1"
 ]
}

Si el grupo de instancias es regional, reemplaza zones/ZONE por regions/REGION.

Después de realizar una solicitud para borrar instancias en un grupo de instancias administrado, las instancias se detienen en cuanto el sistema puede borrarlas. Este proceso puede tardar bastante tiempo en función de la cantidad de instancias que borres del grupo. Verifica el estado de las instancias en el grupo de instancias administrado.

Descarta instancias de un grupo

Puedes separar una instancia de VM de un grupo de instancias administrado para depurar con mayor facilidad los problemas de VM individuales sin afectar al grupo en su totalidad. Cuando se descarta una instancia de un grupo, se quita esa VM de los balanceadores de cargas asignados al grupo de instancias administrado. No se quitan los grupos de destino asignados de forma manual a instancias individuales específicas.

Descartar instancias reduce el targetSize especificado del grupo de instancias, pero no cambia ningún parámetro de configuración del escalador automático. Los grupos de instancias administrados con un escalador automático continúan agregando o borrando VM de forma automática según sea necesario.

Si el grupo forma parte de un servicio de backend en el que el vaciado de conexiones está habilitado, pueden transcurrir hasta 60 segundos más después de que se complete el vaciado de conexiones hasta que se quite o se borre la instancia de VM.

Para descartar instancias de un grupo de instancias administrado, puedes usar Google Cloud Console, la herramienta de gcloud o la API de Compute Engine.

Console

  1. En Cloud Console, ve a la página Grupos de instancias.

    Ir a Grupos de instancias

  2. En la columna Nombre de la lista, haz clic en el nombre del grupo de instancias del que quieres quitar las instancias. Se abrirá una página con las propiedades del grupo de instancias y una lista de instancias incluidas en el grupo.

  3. En la sección Miembros de la lista de instancias, selecciona una o más instancias que quieres quitar del grupo.

  4. Haz clic en Quitar del grupo. Las instancias seleccionadas abandonan el grupo, pero siguen en ejecución fuera de este.

gcloud

Para quitar una instancia del grupo sin borrarla, usa el comando abandon-instances.

gcloud compute instance-groups managed abandon-instances INSTANCE_GROUP_NAME \
    --instances example-i3n2,example-z2x9 \
    --zone ZONE

API

Llama al método abandonInstances para un recurso de MIG zonal o regional. En el cuerpo de la solicitud, incluye las URL de una o más instancias que desees descartar.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/abandonInstances

{
 "instances": [
  "zones/ZONE/instances/example-instance-i3n2",
  "zones/ZONE/instances/example-instance-l6n1"
 ]
}

Si el grupo de instancias es regional, reemplaza zones/ZONE por regions/REGION.

Después de realizar una solicitud para descartar instancias de un grupo de instancias administrado, el grupo las quita lo antes posible. Verifica el estado de las instancias en el grupo de instancias administrado.

Vuelve a crear instancias en el grupo

Cuando se vuelve a crear una instancia administrada, se borra la VM especificada y se crea una nueva mediante la plantilla de instancias asignada al grupo de instancias administrado.

Usa este método para actualizar las VM seleccionadas a fin de que usen la plantilla de instancias más reciente. Si necesitas volver a crear todas las VM de un grupo de instancias administrado, inicia una actualización progresiva.

Si el grupo forma parte de un servicio de backend en el que el vaciado de conexiones está habilitado, pueden transcurrir hasta 60 segundos más después de que se complete el vaciado de conexiones hasta que se quite o se borre la instancia de VM.

Vuelve a crear las VM seleccionadas en el grupo de instancias administrado con la herramienta de gcloud o la API de Compute Engine.

gcloud

Usa el comando recreate-instances

gcloud compute instance-groups managed recreate-instances INSTANCE_GROUP_NAME \
    --instances example-i3n2,example-z2x9 \
    --zone ZONE

API

Llama al método recreateInstances para un recurso de MIG zonal o regional. En el cuerpo de la solicitud, incluye las URL de una o más instancias que desees volver a crear.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/recreateInstances

{
 "instances": [
  "zones/ZONE/instances/example-instance-i3n2",
  "zones/ZONE/instances/example-instance-l6n1"
 ]
}

Si el grupo de instancias es regional, reemplaza zones/ZONE por regions/REGION.

Una vez que realizas una solicitud para volver a crear instancias en un grupo de instancias administrado, las VM nuevas se inician en cuanto el sistema puede aprovisionarlas. Este proceso puede tomar un tiempo significativo en función de la cantidad de instancias que vuelves a crear. Verifica el estado de las instancias en el grupo de instancias administrado.

Borra un grupo de instancias administrado

Cuando borras un grupo de instancias administrado, se borran todas las VM del grupo. Si debes conservar alguna de las VM de este grupo de instancias administrado, primero descarta las instancias para quitar las VM del grupo. Luego, borra el grupo.

Cuando borras un grupo de instancias administrado y sus instancias mediante Google Cloud Console o la herramienta de gcloud, todos los escaladores automáticos adjuntos se borran de forma automática. Sin embargo, si usas la API de Compute Engine, primero debes emitir solicitudes individuales para borrar cualquier escalador automático adjunto con autoscalers.delete o regionAutoscalers.delete.

Console

  1. En Cloud Console, ve a la página Grupos de instancias.

    Ir a Grupos de instancias

  2. Selecciona uno o más grupos de la lista que quieres borrar.

  3. Haz clic en Borrar para borrar el grupo y todas las VM.

gcloud

Usa el comando delete

gcloud compute instance-groups managed delete INSTANCE_GROUP_NAME \
    --zone ZONE

API

Llama al método delete para un recurso de MIG zonal o regional.

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME

Si el grupo de instancias es regional, reemplaza zones/ZONE por regions/REGION.

Crea grupos de instancias interrumpibles

Puedes usar grupos de instancias administrados para crear con rapidez instancias interrumpibles, lo que puede reducir los costos de las VM de los grupos de instancias administrados. Por ejemplo, puedes crear un grupo de instancias interrumpibles, usarlas para ejecutar una tarea de procesamiento por lotes y, luego, borrar el grupo cuando se complete la tarea.

Para crear un grupo de instancias interrumpibles, configura la opción interrumpible en una plantilla de instancias y, luego, utiliza la plantilla para crear el grupo de instancias administrado.

Console

  1. En Cloud Console, ve a la página Plantillas de instancias.

    Ir a la página Plantillas de instancias

  2. Haz clic en Plantilla de instancias nueva.

  3. Completa las propiedades que quieres para la plantilla de instancias.

  4. Haz clic en Mostrar opciones avanzadas para expandir la sección Políticas de disponibilidad.

  5. Configura la opción Prioridad en Activado.

  6. Haz clic en Crear para crear la plantilla.

  7. Utiliza esta plantilla para crear un grupo de instancias administrado.

gcloud

En , crea una plantilla de instancias mediante el comando instance-templates create. Incluye la marca --preemptible.

gcloud compute instance-templates create INSTANCE_TEMPLATE \
    --preemptible

Luego de crear la plantilla de instancias, úsala para crear un grupo de instancias administrado.

API

Llama al método instanceTemplates.insert para crear una plantilla de instancias nueva. Incluye la propiedad scheduling.preemptible y configúrala como true.

{
"name": "INSTANCE_TEMPLATE",
"properties": {
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "networkInterfaces": [
    {
      "network": "global/networks/default",
      "accessConfigs":
      [
        {
          "name": "external-IP",
          "type": "ONE_TO_ONE_NAT"
        }
      ]
    }
  ],
  "scheduling":
  {
    "preemptible": true
  },
  "disks":
  [
    {
      "type": "PERSISTENT",
      "boot": true,
      "mode": "READ_WRITE",
      "initializeParams":
      {
        "sourceImage": "projects/debian-cloud/global/images/family/debian-9"
      }
    }
  ]
  }
}

Luego de crear la plantilla de instancias, úsala para crear un grupo de instancias administrado.

Comprende los campos instanceTemplate y versions

Cuando creas un grupo de instancias administrado, proporcionas una plantilla de instancias que el grupo usa para crear instancias de VM individuales. De forma predeterminada, Compute Engine describe la plantilla de instancias usada en dos propiedades de API separadas: la propiedad instanceTemplate de nivel superior y la propiedad versions. Por ejemplo, en el siguiente grupo de instancias administrado, observa que se propagó información a los campos instanceTemplate y versions:

{

 "name": "example-group",
 "zone": "zones/us-central1-a",
 "instanceTemplate": "global/instanceTemplates/example-it",
 "versions": [
  {
   "name": "v3",
   "instanceTemplate": "global/instanceTemplates/example-it",
   "targetSize": {
    "calculated": 3
   }
  }
 ]...
}

Compute Engine propaga de forma automática el campo de nivel superior instanceTemplate y el campo versions con fines de retrocompatibilidad. Recomendamos especificar el campo versions y omitir el campo de nivel superior instanceTemplates siempre que sea posible. Sin embargo, si tu código de aplicación establece el campo de nivel superior instanceTemplate, aún es una solicitud válida.

Para obtener más información, lee sobre la relación entre versiones y campos de instanceTemplate.

Realiza una prueba canary en plantillas de instancias con un grupo de instancias administrado (avanzado)

Puedes crear un grupo de instancias administrado en el que haya dos grupos de VM que usan plantillas de instancias diferentes. Por ejemplo, es posible que quieras crear un grupo de instancias administrado que tenga 20 instancias de VM, y 10 VM deben ejecutarse en una imagen específica de sistema operativo, mientras que el resto se ejecuta en una diferente. Esta función te permite comparar ambas versiones de la plantilla de instancias antes de decidirte por una.

Para obtener más información, lee sobre las actualizaciones Canary.

IAM y los grupos de instancias administrados

La cuenta de servicio de las API de Google de tu proyecto realiza todas las operaciones que realiza Compute Engine como parte del grupo de instancias administrado. Esta cuenta de servicio por proyecto tiene una dirección de correo electrónico como la siguiente, en la que PROJECT_ID es el ID numérico del proyecto correspondiente:

PROJECT_ID@cloudservices.gserviceaccount.com

La cuenta de servicio de las API de Google es diferente a la cuenta de servicio predeterminada de Compute Engine.

Debes asegurarte de que la cuenta de servicio que usa el grupo de instancias administrado tenga privilegios suficientes para crear recursos en función de la plantilla de instancias. En particular, esto significa que la cuenta de servicio debe tener la función compute.instanceAdmin.v1 y, de forma opcional, serviceAccountUser para crear y administrar las VM del grupo de instancias. La función serviceAccountUser solo es obligatoria si el grupo de instancias administrado creará VM que se puedan ejecutar como cuentas de servicio. Ten en cuenta que otros procesos, incluido Deployment Manager, también usan esta cuenta.

Cuando creas un grupo de instancias administrado o actualizas una plantilla de instancias, Compute Engine valida que la cuenta de servicio de las API de Google tenga lo siguiente:

  • La función serviceAccountUser, que es importante si planeas crear instancias que puedan ejecutarse como cuenta de servicio
  • Permisos para todos los recursos a los que se hace referencia en las plantillas de instancias, como imágenes, discos, redes de VPC y subredes

Para obtener más información sobre las cuentas de servicio, consulta la descripción general del tema.

Actualiza todas las instancias en un grupo de instancias administrado

Consulta Actualiza instancias en un MIG.

¿Qué sigue?