Ver a flexibilidade da instância

Neste documento, descrevemos como visualizar a configuração de flexibilidade de instâncias em um grupo gerenciado de instâncias (MIG) e os tipos de máquina usados por cada VM no grupo.

Depois de adicionar ou fazer mudanças na flexibilidade de instâncias em um MIG, é possível fazer o seguinte:

Antes de começar

  • Configure a autenticação, caso ainda não tenha feito isso. Com isso, você confirma sua identidade para acesso a serviços e APIs do Google Cloud . Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no Compute Engine selecionando uma das seguintes opções:

    Selecione a guia para como planeja usar as amostras nesta página:

    Console

    Quando você usa o console do Google Cloud para acessar os serviços e as APIs do Google Cloud , não é necessário configurar a autenticação.

    gcloud

    1. Instale a CLI do Google Cloud. Após a instalação, inicialize a Google Cloud CLI executando o seguinte comando:

      gcloud init

      Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.

  • Defina uma região e uma zona padrão.
  • REST

    Para usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.

      Instale a CLI do Google Cloud.

      Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.

    Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .

Ver a configuração de flexibilidade de instâncias

Console

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

    Acesse grupo de instâncias

  2. Na coluna Nome, clique no nome do MIG em que você quer ver a configuração de flexibilidade de instâncias.

    A página de visão geral do MIG será aberta.

  3. Clique na guia Detalhes.

    Na seção Flexibilidade de instâncias, a tabela Seleções de instâncias mostra o nome, a classificação e os tipos de máquina em uma seleção. Se o MIG não tiver a flexibilidade de instâncias configurada, a seção Flexibilidade de instâncias não será mostrada.

gcloud

Para conferir a configuração de flexibilidade de instâncias, use o comando instance-groups managed describe. Inclua a flag --format para filtrar as propriedades de instanceFlexibilityPolicy.instanceSelections.

  gcloud compute instance-groups managed describe INSTANCE_GROUP_NAME \
      --region REGION \
      --format="json(instanceFlexibilityPolicy.instanceSelections)"

Veja um exemplo de saída:

{
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "instance-selection-1": {
        "machineTypes": [
          "n1-standard-16",
          "n2-standard-16",
          "e2-standard-16"
        ],
        "rank": 1
      }
    }
  }
}

Se um MIG não tiver a flexibilidade de instâncias configurada, a saída vai retornar null.

Substitua:

  • INSTANCE_GROUP_NAME: o nome do MIG em que você quer ver a configuração de flexibilidade de instâncias.
  • REGION: a região em que o MIG está localizado.

REST

Para conferir a configuração de flexibilidade de instâncias, use o método regionInstanceGroupManagers.get. Inclua o parâmetro fields no URL da solicitação para filtrar as propriedades de instanceFlexibilityPolicy.instanceSelections.

  GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME?fields=instanceFlexibilityPolicy.instanceSelections

Veja um exemplo de saída:

{
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "instance-selection-1": {
        "machineTypes": [
          "n1-standard-16",
          "n2-standard-16",
          "e2-standard-16"
        ],
        "rank": 1
      }
    }
  }
}

Se um MIG não tiver a flexibilidade de instâncias configurada, a saída vai retornar null.

Substitua:

  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que o MIG está localizado.
  • INSTANCE_GROUP_NAME: o nome do MIG em que você quer ver a configuração de flexibilidade de instâncias.

Ver os tipos de máquina usados por cada VM

Console

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

    Acesse grupo de instâncias

  2. Na coluna Nome, clique no nome do MIG em que você quer ver os tipos de máquina usados por cada VM.

    A página Visão geral do MIG é aberta, listando todas as VMs no grupo, os tipos de máquina e outros detalhes.

gcloud

Para ver os tipos de máquina usados por cada VM em um MIG, liste as VMs usando o comando instance-groups managed list-instances e inclua a flag --format para filtrar o campo propertiesFromFlexibilityPolicy.machineType. Também é possível filtrar outros campos, conforme necessário.

  gcloud compute instance-groups managed list-instances INSTANCE_GROUP_NAME \
      --region REGION \
      --format='(name,instanceStatus,currentAction,propertiesFromFlexibilityPolicy.machineType,lastAttempt.errors.errors)'

Veja um exemplo de saída:

NAME: example-mig-0md2
STATUS: RUNNING
ACTION: NONE
MACHINE_TYPE: n1-standard-16
LAST_ERROR:

NAME: example-mig-vbgg
STATUS: RUNNING
ACTION: NONE
MACHINE_TYPE: n1-standard-16
LAST_ERROR:

Substitua:

  • REGION: a região em que o MIG está localizado.
  • INSTANCE_GROUP_NAME: o nome do MIG em que você quer ver a configuração de flexibilidade de instâncias.

REST

Para ver os tipos de máquina usados por cada VM em um MIG, liste as VMs usando o método listManagedInstances e verifique o campo propertiesFromFlexibilityPolicy.machineType na resposta.

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/listManagedInstances

Veja a seguir um exemplo de saída. Procure o campo propertiesFromFlexibilityPolicy em que o campo machineType de uma VM está definido.

{
  "managedInstances": [
    {
      "instance": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-b/instances/example-mig-0md2",
      "instanceStatus": "RUNNING",
      "id": "2656095434923471959",
      "version": {
        "instanceTemplate": "https://www.googleapis.com/compute/v1/projects/example-project/global/instanceTemplates/example-instance-template"
      },
      "targetStatus": "RUNNING",
      "name": "example-mig-0md2",
      "propertiesFromFlexibilityPolicy": {
        "machineType": "n1-standard-16"
      }
    },
    {
      "instance": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-b/instances/example-mig-vbgg",
      "instanceStatus": "RUNNING",
      "currentAction": "NONE",
      "id": "9171259522409694366",
      "version": {
        "instanceTemplate": "https://www.googleapis.com/compute/v1/projects/example-project/global/instanceTemplates/example-instance-template"
      },
      "targetStatus": "RUNNING",
      "name": "example-mig-vbgg",
      "propertiesFromFlexibilityPolicy": {
        "machineType": "n1-standard-16"
      }
    }
  ]
}

Substitua:

  • PROJECT_ID: o ID do projeto.
  • REGION: a região em que o MIG está localizado.
  • INSTANCE_GROUP_NAME: o nome do MIG em que você quer ver a configuração de flexibilidade de instâncias.

Monitorar a distribuição de instâncias

Embora a verificação da política de flexibilidade de instâncias estáticas e a listagem de tipos de máquina de VM individuais forneçam um resumo da configuração atual, observar como o MIG aloca capacidade ao longo do tempo requer monitoramento em tempo real.

Para verificar se as VMs estão distribuídas nas classificações e nos locais pretendidos quando a demanda ou a capacidade muda, é possível conferir a distribuição de instâncias de ambiente de execução para um MIG específico ou dados agregados em vários MIGs. Para instruções sobre como visualizar a distribuição de instâncias, consulte Monitorar a distribuição de instâncias em MIGs.

A seguir