Cada instância de máquina virtual (VM) ou instância bare metal usa uma política de manutenção do anfitrião para determinar o comportamento da instância durante uma operação de manutenção. Algumas instâncias oferecem a opção adicional de ver o horário de manutenção com antecedência.
Esta página explica como monitorizar e planear um evento de manutenção do anfitrião em instâncias do Compute Engine.
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 Google Cloud 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 Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
- 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. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.
Funções necessárias
Para receber as autorizações de que precisa para criar instâncias e gerir a respetiva manutenção, peça ao seu administrador que lhe conceda as seguintes funções do IAM no projeto:
-
Administrador de instâncias do Compute (v1) (
roles/compute.instanceAdmin.v1
) -
Para acesso só de leitura aos registos de auditoria de eventos do sistema:
Visualizador de registos (
roles/logging.viewer
)
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Estas funções predefinidas contêm as autorizações necessárias para criar instâncias e gerir a manutenção de instâncias. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
São necessárias as seguintes autorizações para criar instâncias e gerir a respetiva manutenção:
-
Para obter informações sobre uma instância, incluindo metadados:
compute.instances.get
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Limitações
Só pode ver notificações para o evento de manutenção pendente de uma instância se a instância usar um tipo de máquina de uma das seguintes famílias de máquinas:
Famílias de máquinas otimizadas pelo acelerador:
Famílias de máquinas de utilização geral:
Famílias de máquinas otimizadas para memória:
Famílias de máquinas otimizadas para armazenamento:
Vista geral das notificações de manutenção
A Google envia notificações sobre a manutenção do anfitrião futura através de vários métodos. Quando a janela de manutenção é aberta, Google Cloud a manutenção é realizada automaticamente na sua instância. Ao monitorizar os próximos períodos de manutenção da sua instância, pode preparar proativamente as suas cargas de trabalho para processar a manutenção futura com a mínima interrupção.
As instâncias de computação que suportam notificações de eventos de manutenção têm as seguintes características:
- Menos eventos de manutenção: em geral, as instâncias com intervalos de manutenção recorrentes devem ter menos eventos de manutenção.
- Notificação de manutenção mais longa: receba notificações de eventos de manutenção com bastante antecedência para fins de planeamento.
- Monitorização e planeamento: use o Cloud Logging para acompanhar a sua agenda de manutenção. Use incidentes e alertas para se manter a par de tudo.
- Controlo de manutenção a pedido: inicie a manutenção durante o período de notificação para atualizar as suas instâncias quando for mais conveniente para si.
As informações sobre um evento de notificação futuro são apresentadas de forma semelhante à seguinte:
upcomingMaintenance:{ "canReschedule":True "latestWindowStartTime": "2024-12-01T19:00:01Z" "machineType":"x4-megamem-960-metal" "maintenanceStatus":"PENDING" "type":"SCHEDULED" "windowEndTime": "2024-12-01T22:00:00Z" "windowStartTime": "2024-12-01T19:00:00Z" }
Se não existir nenhum evento de manutenção futuro, é apresentada uma mensagem semelhante à seguinte:
{ "error": "no notifications have been received yet, try again later" }
Definições do estado de manutenção
As definições de estado seguintes explicam as respostas a consultas sobre a manutenção do anfitrião para uma instância. Fornecem informações relacionadas com o evento de manutenção. A CLI do Google Cloud, o REST e o servidor de metadados usam estas mesmas respostas:
- canReschedule: indica se a manutenção pode ser iniciada manualmente durante o período de notificação desta instância.
TRUE
: a manutenção acionada pelo cliente pode ser realizada durante o período de notificação.FALSE
: não é possível realizar a manutenção acionada pelo cliente nesta instância. Isto ocorre frequentemente durante o período em que a instância está em manutenção ou se o tipo de instância não suportar a manutenção a pedido.
- latestWindowStartTime: a hora mais recente para a qual o período de manutenção pode ser movido.
- machineType: o tipo de máquina da instância, por exemplo,
x4-megamem-960-metal
ouc4-highmem-192
. - maintenanceStatus: o estado atual do evento de manutenção.
ONGOING
: a operação de manutenção está em curso.PENDING
: a operação de manutenção está agendada, mas ainda não começou.
- type: o tipo de manutenção a realizar.
NONE
: não está agendada nenhuma manutenção para esta instância.SCHEDULED
: Para a manutenção disruptiva, o Compute Engine envia um aviso com, pelo menos, 7 dias de antecedência para a maioria das instâncias; as instâncias X4 recebem um aviso com cerca de 60 dias de antecedência.UNSCHEDULED
: Uma vez que a manutenção representa atualizações críticas, o Compute Engine tenta fornecer o máximo de aviso prévio possível, mas geralmente é muito inferior ao dos eventos de manutenção agendados.
- windowEndTime: o fim do período durante o qual a manutenção ocorre.
- windowStartTime: o início do período em que a manutenção ocorre.
Comportamentos do estado de manutenção
Ao gerir eventos de manutenção, verifique os valores de
canReschedule
emaintenanceStatus
. Quando combinados, estes campos indicam que ações pode ou não realizar relativamente ao reagendamento de um evento de manutenção:canReschedule=True
emaintenanceStatus=Pending
: pode iniciar manualmente o evento de manutenção para a instância antes da hora de início agendada.canReschedule=False
emaintenanceStatus=Ongoing
: a manutenção está em curso e não pode ser reagendada.canReschedule=False
emaintenanceStatus=Pending
: a sua instância não suporta eventos de manutenção acionados manualmente.
Veja notificações de manutenção
Pode encontrar notificações de manutenção consultando as suas instâncias de computação, o servidor de metadados ou através do Cloud Logging.
Verifique se existem notificações de eventos de manutenção nas instâncias
Use a CLI do Google Cloud, o REST ou consulte o servidor de metadados para ver se existe um evento de manutenção do anfitrião futuro para a sua instância.
gcloud
Para ver a próxima janela de manutenção de uma instância, use o comando
gcloud compute instances describe
.gcloud compute instances describe INSTANCE_NAME \ --zone=ZONE_NAME --format="yaml(resourceStatus.upcomingMaintenance)"
Substitua o seguinte:
INSTANCE_NAME
: o nome da instância do Compute.ZONE_NAME
: a zona onde a instância reside.
Se houver um evento de manutenção futuro, a resposta contém uma secção semelhante à seguinte:
resourceStatus: upcomingMaintenance: canReschedule: true latestWindowStartTime: '2025-01-15T12:00:01Z' machineType: x4-megamem-960-metal maintenanceStatus: PENDING type: SCHEDULED windowEndTime: '2025-01-15T16:00:00Z' windowStartTime: '2025-01-15T12:00:00Z'
Nesta resposta:
- A manutenção está agendada para a data e a hora apresentadas em
windowStartTime
. canReschedule
está definido comotrue
emaintenanceStatus
está definido comoPENDING
. Estas definições indicam que pode iniciar manualmente o evento de manutenção agendado antes da data apresentada emlatestWindowStartTime
.
REST
Para ver se existe manutenção futura para uma instância, crie um pedido usando o
GET
métodoinstances.get
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/INSTANCE_NAME
Substitua o seguinte:
PROJECT_NAME
: o nome do projeto que contém a instância de computação.ZONE
: a zona onde a instância está localizada.INSTANCE_NAME
: o nome da instância.
Se houver um evento de manutenção futuro, a resposta contém uma secção semelhante à seguinte:
upcomingMaintenance:{ "canReschedule":True "latestWindowStartTime": "2023-12-01T19:00:01Z" "machineType": "x4-megamem-960-metal" "maintenanceStatus":"PENDING" "type":"SCHEDULED" "windowEndTime": "2023-12-01T22:00:00Z" "windowStartTime": "2023-12-01T19:00:00Z" }
Nesta resposta:
- A manutenção está agendada para a data e a hora apresentadas em
windowStartTime
. canReschedule
está definido comoTrue
emaintenanceStatus
está definido comoPENDING
. Estas definições indicam que pode iniciar manualmente o evento de manutenção agendado antes da data apresentada emlatestWindowStartTime
.
Servidor de metadados
A partir do SO convidado, consulte o servidor de metadados para ver o próximo evento de manutenção.
$ curl http://metadata.google.internal/computeMetadata/v1/instance/upcoming-maintenance?alt=json -H "Metadata-Flavor: Google"
Verifique o Cloud Logging para ver uma notificação de evento de manutenção
O Compute Engine cria eventos do sistema nos registos de auditoria na nuvem de uma instância para eventos de manutenção. Pode ver estes eventos antes, durante e após um evento de manutenção através do Cloud Logging e do Explorador de registos.
Consola
Para consultar os registos de auditoria de notificações de manutenção de uma instância, conclua os seguintes passos:
Aceda à página Instâncias de VM.
Clique no Nome da instância para a qual quer ver as notificações de manutenção.
É apresentada a página Detalhes da instância.
Na secção Registos, clique no link com a etiqueta Registo.
É apresentada a página do editor de consultas do Explorador de registos. No painel Consulta, o
resource.type
e o ID da instância já estão preenchidos para a sua instância.No painel Consulta, adicione a seguinte linha à consulta:
operation.producer="compute.instances.upcomingMaintenance" OR "compute.instances.terminateOnHostMaintenance" OR "compute.instances.migrateOnHostMaintenance"
Clique em Executar consulta. Os eventos de notificação de manutenção correspondentes aparecem no painel de resultados da consulta.
No painel de resultados da consulta, pode clicar em Editar hora para expandir o intervalo de tempo da pesquisa ou restringir os resultados a datas ou horas específicas.
Clique numa entrada do registo para ver os detalhes da notificação de manutenção.
- Para ver as notificações de manutenção futuras, expanda o cabeçalho
metadata
para ver informações como o estado atual, o tipo e as horas de início e fim da manutenção agendada. - Expanda o cabeçalho
status
para ver a mensagem descritiva da notificação.
- Para ver as notificações de manutenção futuras, expanda o cabeçalho
Exemplos de notificações de manutenção
Uma notificação de evento de manutenção para uma instância aparece no Explorador de registos com valores semelhantes aos seguintes:
methodName
:"compute.instances.upcomingMaintenance"
metadata
:maintenanceStatus
:"PENDING"
machineType
:"x4-megamem-960-metal"
windowStartTime
:"2024-07-23T20:00:00Z"
Quando o evento de manutenção começa, é apresentado um novo evento informativo nos registos com valores semelhantes aos seguintes:
methodName
:"compute.instances.upcomingMaintenance"
metadata
:maintenanceStatus
:"ONGOING"
machineType
:"x4-megamem-960-metal"
windowStartTime
:"2024-07-23T20:00:00Z"
Durante o evento de manutenção, consoante a configuração da política de manutenção do anfitrião para a instância, é registado um dos seguintes eventos do sistema nos registos de auditoria:
- Para instâncias configuradas para usar a migração em direto durante eventos de manutenção,
é gerado um evento do sistema com
methodName: "compute.instances.migrateOnHostMaintenance"
. - Para instâncias configuradas para terminar durante eventos de manutenção,
um evento do sistema com
methodName: "compute.instances.terminateOnHostMaintenance"
.
Quando o evento de manutenção termina, é apresentado um novo evento informativo nos registos de auditoria com valores semelhantes aos seguintes:
methodName
:"compute.instances.upcomingMaintenance"
status: {
message: "Maintenance window has completed for this instance. All
maintenance notifications on the instance have been removed."
}
Configure alertas para notificações de manutenção do anfitrião
Pode configurar uma política de alertas baseada em registos para pesquisar eventos de notificação de manutenção específicos e enviar alertas através de um canal de notificação.
Consola
Para criar um alerta para um evento de manutenção da sua instância, conclua os seguintes passos:
Aceda à página Instâncias de VM.
Clique no Nome da instância para a qual quer criar um alerta de evento de manutenção.
É apresentada a página Detalhes da instância.
Na secção Registos, clique no link com a etiqueta Registo.
É apresentada a página do editor de consultas do Explorador de registos. No painel Consulta, o
resource.type
e o ID da instância já estão preenchidos para a sua instância.No painel Consulta, adicione a seguinte linha à consulta:
operation.producer="compute.instances.upcomingMaintenance"
Para filtrar eventos de manutenção do anfitrião para um tipo de máquina em vez de uma instância específica, edite a consulta da seguinte forma:
- Remova a linha que especifica o ID da instância.
Adicione a seguinte linha à consulta:
protoPayload.metadata.machineType:"MACHINE_TYPE"
Substitua
MACHINE_TYPE
pelo tipo de máquina para o qual quer filtrar os eventos de manutenção do anfitrião.
Clique em Executar consulta. Os eventos de notificação de manutenção correspondentes aparecem no painel de resultados da consulta.
No painel de resultados da consulta, clique em Editar hora.
- No lado esquerdo da janela de edição, no campo Hora relativa, introduza
1d
para ver as entradas do registo da semana anterior. - Clique em Aplicar.
- No lado esquerdo da janela de edição, no campo Hora relativa, introduza
No cabeçalho do painel Resultados da consulta, clique em add_alert Criar alerta. Se a janela de visualização for estreita, a opção Criar alerta pode aparecer no menu Ações.
No painel Criar política de alerta baseada em registos, na secção Detalhes do alerta, faça o seguinte:
- Introduza um nome para a política de alerta, por exemplo,
Upcoming maintenance for my-c3d-vm@us-central1-b
. No menu Nível de gravidade da política, selecione Sem gravidade.
No campo Documentação, pode introduzir uma descrição para a sua política de alertas. Também pode incluir informações que possam ajudar o destinatário de uma notificação a diagnosticar o problema. A seguinte string resume o motivo da notificação:
Log-based alerting policy in project ${project} to monitor upcoming maintenance notifications. See also "Host maintenance alerts" and "onHostMaintenance actions" alerting policies.
Para obter informações sobre como pode formatar e personalizar o conteúdo deste campo, consulte o artigo Usar Markdown e variáveis em modelos de documentação.
Para avançar para o passo seguinte, clique em Seguinte.
- Introduza um nome para a política de alerta, por exemplo,
Na secção Escolha os registos a incluir no alerta, verifique a consulta e os resultados clicando em Pré-visualizar registos.
A consulta criada no painel Consulta também é apresentada neste painel. Recomendamos que crie a consulta primeiro no painel Consulta do Explorador de registos.
Se necessário, pode editar a consulta neste painel. Se editar a consulta, clique em Pré-visualizar registos para verificar os resultados.
Clicar em Seguinte.
No painel Definir frequência de notificações e duração do fecho automático, faça o seguinte:
Selecione o tempo mínimo entre notificações. Este valor permite-lhe controlar o número de notificações que recebe da monitorização se esta condição for cumprida várias vezes. Para este exemplo, selecione 1 dia nas opções.
Para a Duração do encerramento automático de incidentes, use o valor máximo de 7 dias.
Clicar em Seguinte.
Se já tiver um canal de notificação por email configurado, pode selecioná-lo na lista. Caso contrário, clique em Gerir canais de notificação e adicione um canal de email. Para informações sobre como criar canais de notificação, consulte o artigo Crie e faça a gestão de canais de notificação.
Clique em Guardar.
A sua política de alertas baseados em registos está agora pronta para ser testada, conforme descrito em Teste a política de alertas baseados em registos de exemplo
Para saber mais, leia os artigos Configure alertas baseados em registos e Crie e faça a gestão de canais de notificação.
O que se segue?
- Saiba como definir uma política de manutenção do anfitrião.
- Saiba como receber avisos de migração em direto.
- Saiba como desencadear manualmente um evento de manutenção do anfitrião
- Saiba como gerir políticas de alerta baseadas em registos através da Google Cloud consola do Monitoring ou da API Monitoring.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-09-19 UTC.
-