En este documento, se describe cómo crear un grupo de instancias administrado (MIG) que tiene sus VM distribuidas en varias zonas de una región. La distribución de la carga de la aplicación en varias zonas protege tu carga de trabajo contra fallas zonales. Si ocurre una falla zonal, la aplicación puede continuar con la entrega desde instancias que se ejecutan en las zonas restantes disponibles de la misma región.
Este tipo de MIG también se conoce como MIG regional. Para obtener más información, consulta Acerca de los MIG regionales.
También puedes leer sobre otras situaciones básicas para crear un MIG.
Antes de comenzar
- Crea una plantilla de instancias, que es necesaria para crear un grupo de instancias administrado.
-
Si aún no lo hiciste, configura la autenticación.
La autenticación es el proceso mediante el cual se verifica tu identidad para acceder a los servicios y las API de Google Cloud.
Para ejecutar un código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine de la siguiente manera.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
En la consola de Google Cloud, ve a la página Grupos de instancias.
Los pasos restantes aparecen en la consola de Google Cloud.
-
Haz clic en
Crear grupo de instancias para crear uno nuevo. -
Selecciona una de las Opciones de grupo de instancias administrado nuevas:
- Sin estado (predeterminado)
- Con estado
- Asigna un nombre y, de forma opcional, una descripción a tu grupo de instancias.
- Elige una plantilla de instancias para el grupo de instancias o crea una nueva.
- En Cantidad de instancias o Ajuste de escala automático, especifica la cantidad de instancias para este grupo. Recuerda aprovisionar suficientes VMs para admitir tu aplicación si ocurre una falla de zona.
-
En
Ubicación , selecciona Varias zonas. - Elige una región y selecciona las zonas que deseas usar. Si eliges una plantilla de instancias regional, la región se selecciona de forma automática en función de la región de la plantilla.
- En Forma de distribución objetivo, selecciona Uniforme. Si deseas seleccionar una forma diferente, consulta Configura una forma de distribución objetivo para VMs en un MIG regional.
- Si deseas inhabilitar la redistribución proactiva de instancias, en Redistribución de instancias, anula la selección de la casilla de verificación Permitir redistribución de instancias.
- Continúa con el resto del proceso de creación del MIG.
- Para crear el MIG, haz clic en
Crear . PROJECT_ID
: Es el ID del proyecto de esta solicitud.REGION
: Es la región del grupo.BASE_INSTANCE_NAME
: (opcional) Es el nombre para cada instancia de VM que se crea como parte del grupo. Por ejemplo, siexample-instance
fuera el nombre base de la instancia, se crean instancias con nombres comoexample-instance-[RANDOM_STRING]
, en los que el servidor genera[RANDOM_STRING]
.INSTANCE_TEMPLATE_NAME
: Es la plantilla de instancias que se usará. Para una plantilla de instancias regional, debes especificar la URL completa o parcial de la plantilla. Un ejemplo de una URL completa eshttps://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template
y de una URL parcial esprojects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template
.INSTANCE_GROUP_NAME
: Es el nombre del MIG.TARGET_SIZE
: Es la cantidad de VM de destino para el grupo.Configura una forma de distribución objetivo para VM en todas las zonas
- Inhabilita y vuelve a habilitar la redistribución proactiva de VM
- Vuelve a balancear de forma manual un MIG regional
- Configura la reparación automática basada en la aplicación, que verifica de forma periódica que la aplicación responda como se espera en cada una de las VM del MIG y recrea de forma automática las VM que no responden.
- Habilita el ajuste de escala automático para agregar o borrar VM de forma automática en tu MIG en función de los aumentos o disminuciones en la carga.
- Obtén información sobre cómo aplicar una configuración nueva a todas las VMs de un MIG o a un subconjunto de ellas mediante la configuración y la aplicación de una plantilla de instancias nueva, la configuración de todas las instancias, o la configuración por instancia.
- Conserva discos, metadatos y direcciones IP en eventos disruptivos, como la recreación, la reparación automática y las actualizaciones de VM agregando una configuración con estado.
- Obtén información sobre cómo trabajar con instancias administradas para, por ejemplo, borrar, abandonar y volver a crear VM en un MIG.
- Obtén información sobre los MIGs y sus VMs.
- Simula una interrupción de zona para un MIG regional
- Obtén más información sobre cómo agregar un frontend del balanceador de cargas HTTP(S) externo a tu grupo de instancias. Para obtener información sobre otros tipos de balanceadores de cargas, consulta Descripción general del balanceo de cargas.
Terraform
Para usar las muestras de Terraform de esta página en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Para obtener más información, consulta Set up authentication for a local development environment.
REST
Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Si deseas obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud.
Limitaciones
Para ver la lista completa de limitaciones del MIG, que varía según la configuración que uses, consulta Limitaciones del MIG.
Crea un MIG con VMs en varias zonas de una región
Usa la consola de Google Cloud, la gcloud CLI, Terraform o REST.
Console
gcloud
Todos los MIG requieren una plantilla de instancias. Crea una plantilla de instancias si no tienes una. Por ejemplo, con el siguiente comando, se crea una plantilla de instancias básica con propiedades predeterminadas:
gcloud compute instance-templates create example-template
Luego, usa el comando
instance-groups managed create
con la marca--region
. Por ejemplo, con el siguiente comando, se crea un MIG regional en tres zonas dentro de la regiónus-east1
:gcloud compute instance-groups managed create example-rmig \ --template example-template \ --size 30 \ --region us-east1
Si deseas seleccionar zonas específicas que el grupo debe usar, proporciona la marca
--zones
:gcloud compute instance-groups managed create example-rmig \ --template example-template \ --size 30 \ --zones us-east1-b,us-east1-c
Si deseas inhabilitar la redistribución proactiva de instancias, consulta Desactiva la redistribución proactiva de instancias.
Terraform
Si aún no creaste una plantilla de instancias, en la que se especifica el tipo de máquina, la imagen de disco de arranque, la red y otras propiedades de VM que quieres para cada VM en tu MIG, crea una plantilla de instancias.
Para crear un MIG regional, puedes usar el recurso
google_compute_region_instance_group_manager
.Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.
REST
Todos los MIG requieren una plantilla de instancias. Crea una plantilla de instancias si no tienes una.
A continuación, crea una solicitud
POST
para el métodoregionInstanceGroupManagers.insert
. En el cuerpo de la solicitud, especifica el nombre y el tamaño del grupo, y la URL a la plantilla de instancias. De forma opcional, especifica otros campos, como el nombre base para las instancias en el grupo.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "baseInstanceName": "BASE_INSTANCE_NAME", "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME", "name": "INSTANCE_GROUP_NAME", "targetSize": "TARGET_SIZE" }
Reemplaza lo siguiente:
Si deseas seleccionar zonas específicas, o bien crear VM en una región con menos de tres zonas o más, incluye la propiedad
distributionPolicy
en tu solicitud y proporciona una lista de zonas. ReemplazaZONE
por el nombre de una zona en la que deseas crear VM.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "baseInstanceName": "BASE_INSTANCE_NAME", "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME", "name": "INSTANCE_GROUP_NAME", "targetSize": "TARGET_SIZE", "distributionPolicy": { "zones": [ {"zone": "zones/ZONE"}, {"zone": "zones/ZONE"} ] } }
Por ejemplo, con el siguiente comando, se crea un MIG regional llamado
example-rmig
con 10 instancias administradas distribuidas en las zonasus-east1-b
yus-east1-c
:POST https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-east1/instanceGroupManagers { "instanceTemplate": "global/instanceTemplates/example-instance", "name": "example-rmig", "targetSize": 10, "distributionPolicy": { "zones": [ {"zone": "zones/us-east1-b"}, {"zone": "zones/us-east1-c"} ] } }
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.
Si no hay suficiente capacidad en cada zona para admitir las VM del grupo, Compute Engine creará tantas VM como sea posible y continuará intentando crear las VM restantes cuando haya capacidad adicional disponible.
Si no especificas explícitamente zonas individuales en tu solicitud, Compute Engine elige de forma automática tres zonas para crear VM. Si necesitas crear VM en más de tres zonas o en menos, o bien si deseas elegir qué zonas se usan, puedes proporcionar una lista de zonas en tu solicitud. Para obtener más información, consulta Selección de la zona.
Distribución de VM entre zonas
De forma predeterminada, un MIG regional distribuye las VM de manera uniforme entre las zonas seleccionadas. Debido a que crearás un MIG regional, ten en cuenta que ciertos recursos, como las GPU y los discos persistentes, son zonales. Si la plantilla de instancias de tu MIG especifica recursos zonales, debes asegurarte de que todos esos recursos estén presentes en todas las zonas seleccionadas para que puedan conectarse a las VM creadas por el MIG regional. Como alternativa, si deseas que el grupo compruebe la existencia de recursos zonales por ti, puedes establecer la forma de distribución objetivo del MIG para crear instancias solo en zonas que contengan esos recursos.
Para obtener más información, consulta los siguientes documentos:
Redistribución proactiva de instancias
La redistribución proactiva de instancias está habilitada de forma predeterminada. Si necesitas administrar la cantidad de VMs en cada zona de forma manual o si necesitas configurar la forma de distribución objetivo del MIG en
BALANCED
oANY_SINGLE_ZONE
, debes inhabilitar la redistribución proactiva de instancias.Para obtener más información, consulta los siguientes documentos:
¿Qué sigue?
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2024-09-03 (UTC)
-