Iniciar manualmente um evento de manutenção do host


Esta página explica como iniciar manualmente um evento de manutenção de host em instâncias compatíveis do Compute Engine. Esse recurso permite iniciar um evento de manutenção para controlar o tempo de manutenção da sua instância. Isso é útil para cargas de trabalho que podem ser afetadas pela degradação do desempenho ou pelo tempo de inatividade, para as quais você precisa que a janela de manutenção comece em um horário específico.

Ao iniciar manualmente um evento de manutenção, a manutenção do host é iniciada imediatamente. Você não pode especificar uma data ou hora para o início do evento de manutenção. Se você não usar esse recurso, o evento de manutenção ocorrerá no horário indicado na próxima notificação de manutenção .

Se quiser testar primeiro como seus aplicativos lidarão com um evento de manutenção, você poderá simular um evento de manutenção .

Limitações

Você pode iniciar manualmente um evento de manutenção de host para instâncias que usam os seguintes tipos de máquina:

Antes de começar

  • Se ainda não o fez, configure a autenticação. Autenticação é o processo pelo qual sua identidade é verificada para acesso a Google Cloud serviços e APIs. Para executar códigos ou amostras em um ambiente de desenvolvimento local, você pode se autenticar no Compute Engine selecionando uma das seguintes opções:

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

    gcloud

    1. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.
    3. REST

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

        After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

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

Funções obrigatórias

Para obter as permissões necessárias para gerenciar a manutenção da VM, peça ao administrador para conceder a você a função do IAM Compute Instance Admin (v1) ( roles/compute.instanceAdmin.v1 ) no projeto. Para obter mais informações sobre a concessão de funções, consulte Gerenciar acesso a projetos, pastas e organizações .

Esta função predefinida contém as permissões necessárias para gerenciar a manutenção da VM. Para ver as permissões exatas necessárias, expanda a seção Permissões necessárias :

Permissões necessárias

As seguintes permissões são necessárias para gerenciar a manutenção da VM:

  • Para obter informações sobre uma instância de computação: compute.instances.get

Você também poderá obter essas permissões com funções personalizadas ou outras funções predefinidas .

Iniciar manualmente um evento de manutenção do host

O Compute Engine envia notificações sobre eventos de manutenção futuros por vários métodos. Usando as informações nas notificações, você pode determinar o prazo para iniciar manualmente um evento de manutenção.

Verifique as informações da notificação

Você pode encontrar suas notificações de eventos de manutenção:

Se a notificação sobre um evento de manutenção do host contiver canReschedule=True e maintenanceStatus=Pending , você terá a opção de iniciar a manutenção no horário de sua escolha ou aguardar que o evento de manutenção ocorra no horário especificado por windowStartTime .

Se não houver notificação e você tentar iniciar manualmente um evento de manutenção, a seguinte mensagem será exibida:

There is no reschedulable upcoming maintenance.

Isto indica que nenhum evento de manutenção foi agendado e que nenhuma ação precisa ser tomada.

Iniciar o evento de manutenção

Você pode iniciar a manutenção do host no horário de sua escolha, em vez de esperar pelo horário agendado. Use a Google Cloud CLI ou REST para acionar o evento de manutenção, que começa imediatamente.

gcloud

Para iniciar um evento de manutenção, use o comando compute instances perform-maintenance . A manutenção do host começa imediatamente após inserir o comando.

gcloud compute instances perform-maintenance INSTANCE_NAME \
    --zone=ZONE

Substitua o seguinte:

  • INSTANCE_NAME : o nome da instância de computação.
  • ZONE : A zona onde a instância reside.

A resposta é semelhante à seguinte:

resourceStatus:
  upcomingMaintenance:
    canReschedule: false
    latestWindowStartTime: '2025-01-15T19:57:17Z'
    maintenanceStatus: ONGOING
    type: SCHEDULED
    windowEndTime: '2025-01-15T23:57:11Z'
    windowStartTime: '2025-01-15T19:57:16Z'

Na resposta, canReschedule é definido como false e maintenanceStatus é definido como ONGOING , o que indica que a operação de manutenção do host está em andamento.

DESCANSAR

Para iniciar um evento de manutenção, construa uma solicitação POST usando o método instances.performMaintenance .

POST: https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/INSTANCE_NAME/performMaintenance

Substitua o seguinte:

  • PROJECT_NAME : o nome do projeto
  • ZONE : a zona onde reside a instância de computação
  • INSTANCE_NAME : o nome da instância

A resposta é assim:

upcomingMaintenance:{
  "canReschedule":false
  "latestWindowStartTime": "2023-12-01T19:00:01Z"
  "maintenanceStatus":"ONGOING"
  "type":"SCHEDULED"
  "windowEndTime": "2023-12-01T22:00:00Z"
  "windowStartTime": "2023-12-01T19:00:00Z"
}

Na resposta, canReschedule é definido como false e maintenanceStatus é definido como ONGOING , o que indica que a operação de manutenção do host está em andamento.

O que vem a seguir