Desative as reparações num MIG

Este documento descreve como desativar as reparações de VMs com falhas e em mau estado num grupo de instâncias gerido (MIG) e, se já estiverem desativadas, como configurar o MIG para reparar VMs.

Por predefinição, um GIG repara automaticamente uma VM com falhas no grupo recriando essa VM. Se configurou uma verificação de estado baseada na aplicação, o MIG também repara as VMs não íntegras nas quais a sua aplicação falha a verificação de estado. A reparação de uma VM com base numa verificação de funcionamento baseada em aplicações também é denominada autorreparação.

Se não quiser que um MIG repare uma VM com falhas ou uma VM não saudável, pode desativar as reparações no MIG. Desativar as reparações é útil em cenários em que quer resolver problemas de uma VM com falhas, implementar a sua própria lógica de reparação ou monitorizar o estado de funcionamento da aplicação sem reparar VMs em mau estado.

Para verificar se as reparações já estão desativadas num MIG, verifique a configuração de reparação num MIG.

Para mais informações sobre reparações num MIG, consulte o artigo Acerca da reparação de VMs para alta disponibilidade.

Antes de começar

  • Se ainda não o tiver feito, configure a autenticação. A autenticação valida a sua identidade para aceder a Cloud de Confiance by S3NS serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-se no Compute Engine selecionando uma das seguintes opções:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Cloud de Confiance console to access Cloud de Confiance by S3NS services and APIs, you don't need to set up authentication.

    gcloud

    1. Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada. Depois de iniciar sessão, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init
    2. Set a default region and zone.

    REST

    Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.

      Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada. Depois de iniciar sessão, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init

    Para mais informações, consulte o artigo Autenticar para usar REST na Cloud de Confiance documentação de autenticação.

Desative as reparações num MIG

Quando desativa as reparações num MIG, por predefinição, as reparações de VMs com falhas e a recuperação automática são desativadas. Se quiser desativar apenas a recuperação automática, consulte a secção Desative a recuperação automática.

Consola

  1. Na Cloud de Confiance consola, aceda à página Grupos de instâncias.

    Aceda a Grupos de instâncias

  2. Clique no nome do MIG no qual quer desativar a reparação.

  3. Clique em Edit.

  4. Clique em Ciclo de vida da instância e autocorreção para expandir a secção.

    1. Na secção Ação em caso de falha, defina o campo Ação predefinida em caso de falha como Nenhuma ação.
    2. Se configurou a autorreparação e não quer que o MIG desative a autorreparação, na secção Autorreparação, defina o campo Na verificação de estado com falha como Reparar instância.
  5. Clique em Guardar.

gcloud

Para desativar as reparações num MIG, use o comando update da seguinte forma. Esta opção desativa a autorreparação por predefinição.

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

Se a autocorreção estiver configurada no MIG e não quiser desativar a autocorreção por predefinição, use o comando beta update para definir a flag --action-on-vm-failed-health-check como repair. Isto garante que a autocorreção de VMs não íntegras continua a funcionar, mesmo que a reparação de VMs com falhas esteja desativada.

gcloud beta compute instance-groups managed update MIG_NAME \
    --default-action-on-vm-failure=do-nothing \
    --action-on-vm-failed-health-check=repair \
    --zone=ZONE

Substitua o seguinte:

  • MIG_NAME: o nome do grupo de instâncias.
  • ZONE: a zona onde o seu MIG está localizado. Para um MIG regional, use a flag --region=REGION.

REST

Para desativar as reparações num MIG, use os métodos da API da seguinte forma. Esta opção desativa a autorreparação por predefinição.

Por exemplo, faça a seguinte chamada num MIG zonal. Esta opção desativa a reparação automática por predefinição.

PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

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

Se a autocorreção estiver configurada no MIG e não quiser desativar a autocorreção por predefinição, use os métodos da API da seguinte forma para definir a flag onFailedHealthCheck como REPAIR. Isto garante que a autocorreção de VMs não íntegras continua a funcionar mesmo que a reparação de VMs com falhas esteja desativada.

Por exemplo, faça a seguinte chamada num MIG zonal:

PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
  "instanceLifecyclePolicy":
    {
      "defaultActionOnFailure": "DO_NOTHING",
      "onFailedHealthCheck": "REPAIR"
    }
  }

Substitua o seguinte:

  • PROJECT_ID: o seu ID do projeto.
  • MIG_NAME: o nome do MIG.
  • ZONE: a zona onde o MIG está localizado. Para um MIG regional, use regions/REGION no URL.

Limitações

Se um MIG tiver alguma das seguintes opções, não pode desativar as reparações no MIG definindo o campo defaultActionOnFailure como DO_NOTHING:

Desative a autocorreção

Quando configura uma verificação de estado da aplicação num MIG, se não quiser que o MIG repare nenhuma VM não saudável, pode desativar a autocura separadamente. Isto não desativa as reparações de VMs com falhas.

Consola

  1. Na Cloud de Confiance consola, aceda à página Grupos de instâncias.

    Aceda a Grupos de instâncias

  2. Clique no nome do MIG no qual quer desativar a autorreparação.

  3. Clique em Edit.

  4. Clique em Ciclo de vida da instância e autocorreção para expandir a secção.

  5. Na secção Reparação automática, defina o campo Na verificação de estado com falha como Nenhuma ação.

  6. Clique em Guardar.

gcloud

Para desativar a autocorreção num MIG, use o comando beta update e defina a flag --action-on-vm-failed-health-check como do-nothing.

Por exemplo, use o seguinte comando para um MIG zonal:

gcloud beta compute instance-groups managed update MIG_NAME \
    --action-on-vm-failed-health-check=do-nothing \
    --zone=ZONE

Substitua o seguinte:

  • MIG_NAME: o nome do MIG.
  • ZONE: a zona onde o MIG está localizado. Para um MIG regional, use a flag --region=REGION.

REST

Para desativar a autocorreção num MIG, use os métodos da API da seguinte forma e defina a flag --action-on-vm-failed-health-check como do-nothing.

Por exemplo, faça o seguinte pedido para desativar a autocorreção num MIG zonal:

POST https://compute.s3nsapis.fr/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers

{
  "instanceLifecyclePolicy":
   {
     "onFailedHealthCheck": "DO_NOTHING"
   }
}

Substitua o seguinte:

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

Ative as reparações ou a autocura

Por predefinição, um MIG repara VMs com falhas e, se a autorrecuperação estiver configurada, o MIG também repara VMs não íntegras. Se tiver desativado as reparações ou a autorrecuperação, ou ambas, pode voltar a ativá-las.

Consola

  1. Na Cloud de Confiance consola, aceda à página Grupos de instâncias.

    Aceda a Grupos de instâncias

  2. Clique no nome do MIG no qual quer ativar a reparação.

  3. Clique em Edit.

  4. Clique em Ciclo de vida da instância e autocorreção para expandir a secção.

    • Para reparar VMs com falhas, na secção Ação em caso de falha, defina o campo Ação predefinida em caso de falha como Reparar instância.
    • Para reparar VMs não saudáveis, na secção Reparação automática, defina o campo Na verificação de estado com falha como Reparar instância. Se definir este valor como Ação predefinida, a autocorreção usa a mesma definição que configurar para o campo Ação predefinida em caso de falha.
  5. Quando terminar, clique em Guardar para aplicar as alterações.

gcloud

Para ativar as reparações num MIG, use o comando update. Esta ação também ativa a autocorreção se o valor da flag --action-on-vm-failed-health-check for default-action.

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

Se desativou a autocorreção separadamente e quer ativá-la novamente, use o comando beta update:

gcloud beta compute instance-groups managed update MIG_NAME \
    --action-on-vm-failed-health-check=default-action OR repair

Substitua o seguinte:

  • MIG_NAME com o nome de um MIG.
  • default-action OR repair: se quiser que a autorrecuperação use a mesma definição que configura para reparações de VMs com falhas, defina o valor como default-action. Por exemplo, quando desativa a reparação de VMs com falhas, o GIG também desativa a autorreparação. Se quiser controlar as reparações de VMs não saudáveis separadamente, defina o valor como repair.

REST

Para ativar as reparações num MIG, use o método da API da seguinte forma. Esta ação também ativa a autocorreção se o valor do campo onFailedHealthCheck for DEFAULT_ACTION.

Por exemplo, faça o seguinte pedido num MIG zonal:

    PATCH https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
    {
      "instanceLifecyclePolicy": {
        "defaultActionOnFailure": "REPAIR"
      }
    }
  

Se desativou a autorreparação separadamente e quer ativá-la novamente, use o método da API beta da seguinte forma:

  PATCH https://compute.s3nsapis.fr/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
  {
    "instanceLifecyclePolicy": {
      "onFailedHealthCheck": "DEFAULT_ACTION OR REPAIR"
    }
  }

Substitua o seguinte:

  • PROJECT_ID: o seu ID do projeto.
  • ZONE: a zona onde o seu MIG está localizado. Para um MIG regional, use regions/REGION no URL.
  • MIG_NAME: o nome do MIG.
  • DEFAULT_ACTION OR REPAIR: se quiser que a autocorreção use a mesma definição que para as reparações de VMs com falhas, defina o valor como DEFAULT_ACTION. Por exemplo, quando desativa a reparação de VMs com falhas, o GIG também desativa a autorreparação. Se quiser configurar a autorreparação separadamente, defina o valor como REPAIR.

O que se segue?