Como conseguir informações sobre MIGs e instâncias gerenciadas

Use os métodos nesta página para receber informações sobre seus grupos de instâncias gerenciadas (MIGs, na sigla em inglês) e informações sobre as instâncias de máquina virtual (VM, na sigla em inglês) em cada MIG.

Antes de começar

Como receber informações sobre MIGs

É possível recuperar informações sobre os próprios grupos, por exemplo, para inspecionar as políticas anexadas ao grupo e verificar se o grupo é estável ou está passando por alterações. Para ver informações sobre as instâncias de VM em um MIG, consulte Como receber informações sobre instâncias gerenciadas.

Como listar MIGs

Para receber uma lista de seus grupos de instâncias gerenciadas, use o console, a ferramenta gcloud ou a API.

Console

  1. No Console do Google Cloud, acesse a página Grupos de instâncias.

    Acessar a página "Grupos de instâncias"

    Se você tiver grupos de instâncias, a página os listará, incluindo os grupos de instâncias gerenciadas e grupos de instâncias não gerenciadas.

    Os grupos de instâncias gerenciadas têm um valor na coluna Modelo.

gcloud

Liste todos os grupos de instâncias gerenciadas dentro de um projeto:

gcloud compute instance-groups managed list

API

Para listar todos os grupos de instâncias gerenciadas em uma zona, crie uma solicitação GET para o método instanceGroupManagers.list:

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers

Para grupos de instâncias gerenciadas por região (com várias zonas), use o recurso regionInstanceGroupManagers: regionInstanceGroupManagers.list.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers

Como ver as propriedades de um MIG

Para receber informações sobre um MIG específico, incluindo as políticas anexadas (por exemplo, políticas de recuperação automática), use o console, a ferramenta gcloud ou a API.

Para ver o id do grupo, é preciso usar a ferramenta gcloud ou a API.

Console

  1. No Console do Google Cloud, acesse a página Grupos de instâncias.

    Acessar a página "Grupos de instâncias"

    A página listará os grupos de instâncias, se você os tiver. A página também lista os grupos de instâncias não gerenciadas.

  2. Na coluna Nome da lista, clique no nome do grupo de instâncias que você quer examinar. Uma página é aberta com as propriedades do grupo de instâncias e a lista de instâncias que estão incluídas no grupo.

gcloud

Para ver informações sobre um grupo específico:

gcloud compute instance-groups managed describe instance-group \
    [--zone zone | --region region]

O comando retorna detalhes sobre o grupo, incluindo as políticas anexadas.

API

Para receber informações sobre um grupo específico, crie uma solicitação GET para o método instanceGroupManagers.get e inclua o nome de um grupo de instâncias gerenciadas específico:

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group

Para grupos de instâncias gerenciadas por região (com várias zonas), use o recurso regionInstanceGroupManagers: regionInstanceGroupManagers.list e regionInstanceGroupManagers.get.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group

A resposta inclui detalhes sobre o grupo, incluindo políticas anexadas, exceto as de escalonamento automático.

Para receber informações sobre escalonadores automáticos, crie uma solicitação GET para o método autoscalers.get e inclua o nome de um grupo de instâncias gerenciadas específico:

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/autoscalers/instance-group

Para grupos de instâncias gerenciadas por região (várias zonas), use o recurso regionAutoscalers: regionAutoscalers.get.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/regionAutoscalers/instance-group

Como verificar se um MIG é estável

Vários comandos e solicitações criam, excluem e modificam instâncias em um grupo de instâncias gerenciadas. Essas operações serão retornadas como DONE depois que o grupo programar ações para criar, excluir ou atualizar essas instâncias. No entanto, isso não significa que as instâncias no grupo tenham sido criadas, excluídas ou atualizadas antes da conclusão das ações subjacentes. Você precisa verificar o status do grupo ou, como alternativa, verificar o status dessas instâncias.

Um grupo de instâncias gerenciadas está estável quando nenhuma instância no grupo está sofrendo alterações, nenhuma alteração futura está programada para as instâncias e o grupo não está sendo modificado.

Você precisa saber se o grupo está estável quando tem dependências que dependem da integridade e da disponibilização de todas as instâncias do grupo. Por exemplo, comece a programar jobs, enviar tráfego ou atribuir intervalos de chaves depois de confirmar que todas as VMs estão funcionando e íntegras.

É possível verificar se um grupo de instâncias gerenciadas está em execução e íntegro ao conferir o valor do campo status.isStable.

gcloud

Use o comando describe do grupo de instâncias:

gcloud compute instance-groups managed describe instance-group-name \
    [--zone zone | --region region]

A ferramenta gcloud retorna informações detalhadas sobre o grupo de instâncias, incluindo o campo status.isStable.

Para pausar um script até que o grupo esteja estável, use o comando wait-until com a sinalização --stable. Exemplo:

gcloud beta compute instance-groups managed wait-until instance-group-name \
    --stable \
    [--zone zone | --region region]
Waiting for group to become stable, current operations: deleting: 4
Waiting for group to become stable, current operations: deleting: 4
...
Group is stable

O comando retorna depois que status.isStable é definido como true para o grupo.

API

Para um MIG por zona, faça uma solicitação POST para o método instanceGroupManagers.get:

POST https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group-name/get

Para um grupo de instâncias gerenciadas por região, substitua zones/zone por regions/region:

POST https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group-name/get

A API retorna informações detalhadas sobre o grupo de instâncias, incluindo o campo status.isStable.

status.isStable definido como false indica que as alterações estão ativas, pendentes ou que o próprio grupo de instâncias gerenciadas está sendo modificado.

status.isStable definido como true indica o seguinte:

  • Nenhuma das instâncias no grupo está passando por qualquer tipo de alteração e o currentAction de todas as instâncias é NONE.
  • Nenhuma alteração está pendente para as instâncias no grupo de instâncias gerenciadas.
  • O grupo de instâncias gerenciadas não está sendo modificado.

Os grupos de instâncias gerenciadas podem ser modificados de várias maneiras. Exemplo:

  • Você faz uma solicitação para lançar um novo modelo de instância.
  • Você faz uma solicitação para criar, excluir, redimensionar ou atualizar instâncias no grupo.
  • Um autoescalador solicita o redimensionamento do grupo.
  • Um recurso de recuperação automática está substituindo uma ou mais instâncias não íntegras do grupo de instâncias gerenciadas.
  • Em um grupo de instâncias gerenciadas por região, algumas das instâncias estão sendo redistribuídas.

Assim que todas as ações forem concluídas, status.isStable será definido como true novamente para esse grupo de instâncias gerenciadas.

Para instâncias de VM individuais, consulte Como verificar o status de instâncias gerenciadas.

Como ver o histórico de operações de recuperação automática

Se você configurou a recuperação automática, é possível visualizar eventos anteriores de recuperação automática.

Como monitorar atualizações graduais

Se você iniciou uma atualização gradual e quer saber quando ela for concluída, consulte Atualizações de monitoramento.

Como receber informações sobre as instâncias de VM gerenciadas em um MIG

Como listar instâncias gerenciadas de um MIG

Para uma lista das instâncias gerenciadas em um grupo, incluindo seus estados e modelos, use o console, a ferramenta gcloud ou a API.

Console

  1. No Console do Google Cloud, acesse a página Grupos de instâncias.

    Acessar a página "Grupos de instâncias"

    A página listará os grupos de instâncias, se você os tiver. A página também lista os grupos de instâncias não gerenciadas.

  2. Na coluna Nome da lista, clique no nome do grupo de instâncias que você quer examinar. Uma página é aberta com as propriedades do grupo de instâncias e a lista de instâncias que estão incluídas no grupo.

gcloud

Use o subcomando list-instances da ferramenta gcloud.

gcloud compute instance-groups managed list-instances instance-group \
    [--zone zone | --region region]

O comando retorna uma lista de instâncias e respectivos detalhes, incluindo o status atual, o modelo da instância e o último erro.

API

Para um MIG por zona, crie uma solicitação GET para o método instanceGroupManagers.listManagedInstances e inclua o nome de um grupo de instâncias gerenciadas específico:

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group

Para grupos de instâncias gerenciadas por região (com várias zonas), use o recurso regionInstanceGroupManagers: regionInstanceGroupManagers.list.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group

A resposta inclui uma lista de instâncias e respectivos detalhes, incluindo o status atual e o modelo de instância.

Como verificar o status de instâncias gerenciadas

Vários comandos e solicitações criam, excluem e modificam instâncias em um grupo de instâncias gerenciadas. Essas operações serão retornadas como DONE depois que o grupo programar ações para criar, excluir ou atualizar essas instâncias. No entanto, isso não significa que as instâncias no grupo tenham sido criadas, excluídas ou atualizadas antes da conclusão das ações subjacentes. Você precisa verificar o status dessas instâncias ou, como alternativa, verificar o status do próprio grupo.

É possível ver a currentAction sendo realizada e o status de cada instância em um grupo de instâncias gerenciadas com a ferramenta de linha de comando gcloud ou a API.

gcloud

gcloud compute instance-groups managed list-instances instance-group-name \
[--filter="zone:(zone)" | --filter="region:(region)"]

gcloud retorna uma lista de instâncias no grupo e os respectivos status e ações atuais. Por exemplo:

NAME               ZONE           STATUS    ACTION    INSTANCE_TEMPLATE  VERSION_NAME  LAST_ERROR
vm-instances-9pk4  us-central1-f            CREATING  my-new-template
vm-instances-h2r1  us-central1-f  STOPPING  DELETING  my-old-template
vm-instances-j1h8  us-central1-f  RUNNING   NONE      my-old-template
vm-instances-ngod  us-central1-f  RUNNING   NONE      my-old-template

API

Na API, faça uma solicitação GET para o método regionInstanceGroupManagers.listManagedInstances. Para um grupo de instâncias gerenciadas por zona, use o método instanceGroupManagers.listManagedInstances.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group-name/listManagedInstances

A API retorna uma lista de instâncias para o grupo, incluindo instanceStatus e currentAction de cada instância.

{
 "managedInstances": [
  {
   "instance": "https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/vm-instances-prvp",
   "id": "5317605642920955957",
   "instanceStatus": "RUNNING",
   "instanceTemplate": "https://compute.googleapis.com/compute/v1/projects/project-id/global/instanceTemplates/instance-template-name",
   "currentAction": "REFRESHING"
  },
  {
   "instance": "https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/vm-instances-pz5j",
   "currentAction": "DELETING"
  },
  {
   "instance": "https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/vm-instances-w2t5",
   "id": "2800161036826218547",
   "instanceStatus": "RUNNING",
   "instanceTemplate": "https://compute.googleapis.com/compute/v1/projects/project-id/global/instanceTemplates/instance-template-name",
   "currentAction": "REFRESHING"
  }
 ]
}

Para cada instância em um grupo de instâncias gerenciadas, o respectivo status é descrito no campo instanceStatus. Para ver uma lista de valores válidos do campo instanceStatus, consulte Como verificar o status de uma instância.

Se a instância estiver passando por algum tipo de alteração, o campo currentAction será preenchido com uma das seguintes ações para ajudar você a acompanhar o andamento da alteração. Caso contrário, o campo currentAction será NONE.

Os valores possíveis de currentAction são os seguintes:

  • ABANDONING: a instância está sendo removida do grupo de instâncias gerenciadas.
  • CREATING: a instância está em processo de criação;
  • CREATING_WITHOUT_RETRIES: a instância está sendo criada sem novas tentativas (se ela não for criada na primeira tentativa, o grupo de instâncias gerenciadas não tentará substituí-la novamente);
  • DELETING: a instância está em processo de exclusão.
  • RECREATING: a instância está sendo substituída.
  • REFRESHING: a instância está sendo removida e adicionada novamente à lista de pools de destino atuais. Essa lista pode corresponder ou não aos pools de destino atuais.
  • RESTARTING: a instância está em processo de reinicialização por meio dos métodos stop e start;
  • VERIFYING: a instância foi criada e está em processo de verificação;
  • NONE: nenhuma ação está sendo executada na instância.

Para verificar se o grupo como um todo é estável ou está passando por alterações, consulte Como verificar o status do grupo.

Como verificar estados de integridade

Se você configurou a recuperação automática no grupo de instâncias gerenciadas, é possível avaliar o estado de integridade de cada instância. Consulte Como verificar o status de integridade.

Como verificar se uma instância de VM faz parte de um MIG

Para verificar se uma instância específica é membro de um grupo atualmente, use o console ou a API.

Console

  1. No Console do Google Cloud, acesse a página Instâncias de VMs.

    Acessar a página "Instâncias de VMs"

  2. Clique em uma instância para acessar os respectivos detalhes.
  3. Se a instância de VM for membro de um grupo de instâncias gerenciadas, o nome desse grupo aparecerá sob o título Em uso por. Se a instância da VM não for membro de um grupo, o título Em uso por não aparecerá na página de detalhes da instância.

API

Consulte Como ver referenciadores para instâncias de VM.

Como alternativa para identificar se uma instância é ou era membro de um grupo de instâncias gerenciadas, procure estas duas chaves de metadados nos metadados da instância:

  • instance-template indica o modelo a partir de que a instância foi criada.
  • created-by indica o grupo de instâncias gerenciadas que criou a instância.

Mesmo que você abandone a instância, ela ainda terá essas entradas de metadados, a menos que você as remova manualmente.

Por exemplo, se houver uma instância denominada random-instance-biy e você quiser saber se ela foi criada por um grupo de instâncias gerenciadas, descreva a instância e procure as chaves de metadados. Exemplo:

gcloud compute instances describe random-instance-biy \
    --zone us-central1-f

A ferramenta gcloud retorna uma resposta semelhante a:

canIpForward: false
cpuPlatform: Intel Ivy Bridge
creationTimestamp: '2016-08-24T14:11:38.012-07:00'
...
metadata:
  items:
  - key: instance-template
    value: projects/123456789012/global/instanceTemplates/example-it
  - key: created-by
    value: projects/123456789012/zones/us-central1-f/instanceGroupManagers/igm-metadata

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Compute Engine