Desativar reparos em um MIG


Neste documento, descrevemos como desativar os reparos em um grupo gerenciado de instâncias (MIG) e, se já estiver desativado, como fazer com que o MIG volte a reparar VMs.

Por padrão, um MIG repara automaticamente uma VM com falha no grupo recriando essa VM. Se você configurou uma verificação de integridade baseada em aplicativo, o MIG reparará as VMs não íntegras em que o aplicativo falhou na verificação de integridade.

Se você não quiser que um MIG repare uma VM com falha ou não íntegra, desative os reparos. Desativar os reparos é útil em cenários em que você quer solucionar problemas de uma VM com falha, implementar sua própria lógica de reparo ou monitorar a integridade do aplicativo sem reparar VMs não íntegras pelo MIG.

Para verificar se os reparos já estão desativados em um MIG, consulte Verificar se os reparos estão desativados em um MIG.

Para mais informações sobre reparos em um MIG, consulte Como reparar VMs para alta disponibilidade.

Antes de começar

  • Configure a autenticação, caso ainda não tenha feito isso. A autenticação é o processo de verificação da 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 da seguinte maneira.

    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 Google Cloud CLI e inicialize-a executando o seguinte comando:

      gcloud init
    2. Defina uma região e uma zona padrão.

    REST

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

      Instale a Google Cloud CLI e inicialize-a executando o seguinte comando:

      gcloud init

Limitações

Não será possível desativar os reparos em um MIG se o grupo tiver:

Desativar reparos em um MIG

A desativação de reparos em um MIG desativa os reparos automáticos e os reparos com base em uma verificação de integridade baseada em aplicativo (recuperação automática).

Para desativar os reparos, use o Console do Google Cloud, a CLI gcloud ou o REST.

Console

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

    Acesse grupo de instâncias

  2. Se você já tiver um MIG, faça o seguinte:

    1. Clique no nome do MIG em que você quer desativar o reparo.
    2. Clique em Editar.
  3. Se você ainda não tiver um MIG, faça o seguinte:

    1. Clique em Criar grupo de instâncias.
    2. Digite um Nome.
    3. Selecione um modelo de instância.
    4. Para as outras configurações, é possível usar os valores padrão ou modificar os campos.
  4. Na seção Ciclo de vida da instância de VM, defina a Ação padrão em caso de falha como Nenhuma ação.

  5. Depois de terminar, clique em Salvar para um MIG atual ou em Criar para um novo.

gcloud

Para desativar os reparos em um MIG, use o comando update:

Por exemplo, use o comando a seguir para desativar os reparos em um MIG zonal:

gcloud compute instance-groups managed update MIG_NAME \
    --zone=ZONE \
    --default-action-on-vm-failure=do_nothing

Para desativar os reparos ao criar um MIG, use o comando create:

Por exemplo, use o comando a seguir para desativar os reparos ao criar um MIG zonal:

gcloud compute instance-groups managed create MIG_NAME \
    --template=INSTANCE_TEMPLATE \
    --size=SIZE \
    --zone=ZONE \
    --default-action-on-vm-failure=do_nothing

Substitua:

  • MIG_NAME: o nome do grupo de instâncias.
  • INSTANCE_TEMPLATE: o nome do modelo de instância que deve ser usado para o grupo.
  • SIZE: o tamanho de destino do grupo de instâncias.
  • ZONE: a zona em que o MIG está localizado. Para um MIG regional, use a sinalização --region.

REST

Para desativar os reparos em um MIG, use o método de API da seguinte maneira:

Por exemplo, faça a seguinte chamada para desativar os reparos em um MIG zonal existente:

PATCH https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
  "instanceLifecyclePolicy":
    {
      "defaultActionOnFailure": "DO_NOTHING"
    }
}

Para desativar os reparos ao criar um MIG, use o método de API da seguinte maneira:

Por exemplo, faça a seguinte chamada para desativar os reparos ao criar um MIG zonal:

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

{
  "versions": [
    {
      "instanceTemplate": "INSTANCE_TEMPLATE_URL"
     }
  ],
  "name": "MIG_NAME",
  "targetSize": SIZE,
  "instanceLifecyclePolicy":
   {
     "defaultActionOnFailure": "DO_NOTHING"
   }
}

Substitua:

  • PROJECT_ID: o ID do projeto;
  • MIG_NAME: o nome do grupo de instâncias.
  • INSTANCE_TEMPLATE_URL: o URL parcial do modelo de instância que você quer usar para criar as VMs no grupo. Por exemplo:
    • Modelo de instância regional: projects/example-project/regions/us-central1/instanceTemplates/example-template
    • Modelo global de instância: projects/example-project/global/instanceTemplates/example-template
  • SIZE: o tamanho de destino do grupo de instâncias.
  • ZONE: a zona em que o MIG está localizado. Para um MIG regional, use regions/REGION no URL.

Definir um MIG para reparar VMs com falha e não íntegras

Por padrão, um MIG repara VMs com falha e não íntegras. Se você desativou os reparos em um MIG, poderá configurá-lo novamente para a reparação de VMs.

Console

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

    Acesse grupo de instâncias

  2. Clique no nome do MIG em que você quer definir o reparo.

  3. Clique em Editar.

  4. Na seção Ciclo de vida da instância de VM, defina a Ação padrão em caso de falha como Reparar instâncias.

  5. Quando terminar, clique em Salvar para aplicar as mudanças.

gcloud

Para definir um MIG para reparar VMs, use o comando update:

gcloud compute instance-groups managed update MIG_NAME \
    --default-action-on-vm-failure=repair

Substitua MIG_NAME pelo nome de um MIG.

REST

Para definir um MIG para reparar VMs, use o método de API da seguinte maneira:

Por exemplo, faça a seguinte chamada para desativar os reparos em um MIG zonal:

PATCH https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
  "instanceLifecyclePolicy":
  {
    "defaultActionOnFailure": "REPAIR"
 }
}

Substitua:

  • PROJECT_ID: o ID do projeto;
  • MIG_NAME: o nome do grupo de instâncias.
  • ZONE: a zona em que o MIG está localizado. Para um MIG regional, use regions/REGION no URL.

A seguir