Este documento explica como usar os recursos de manutenção do host disponíveis com as VMs H4D. Ele explica como monitorar, planejar e realizar a manutenção programada em instâncias de máquina virtual (VM). Para gerenciar a manutenção nos blocos de capacidade reservados, independentemente de as VMs estarem em execução neles, consulte Gerenciar eventos de host em todas as reservas.
Ao gerenciar proativamente os próximos eventos de manutenção do host nas VMs, é possível minimizar as interrupções e manter o desempenho ideal.
Antes de começar
Selecione a guia para como planeja usar as amostras nesta página:
Console
Quando você usa o console do Cloud de Confiance para acessar os serviços e as APIs do Cloud de Confiance by S3NS , não é necessário configurar a autenticação.
gcloud
Instale a Google Cloud CLI e faça login na CLI gcloud com sua identidade federada. Depois de fazer login, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud initREST
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 Google Cloud CLI e faça login na CLI gcloud com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Cloud de Confiance .
Funções exigidas
Para receber as permissões necessárias para gerenciar eventos de manutenção de host em VMs, peça ao administrador para conceder a você os seguintes papéis do IAM:
- Administrador do Compute (
roles/compute.admin) no projeto -
Para acesso somente leitura aos registros de auditoria de eventos do sistema:
Visualizador de registros (
roles/logging.viewer) no projeto
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esses papéis predefinidos contêm as permissões necessárias para gerenciar eventos de manutenção do host em várias VMs. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para gerenciar eventos de manutenção do host em VMs:
-
Para ver os detalhes de uma VM:
compute.instances.getno projeto
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Visão geral
Para otimizar a manutenção das VMs, siga estas etapas:
Entenda a manutenção do host. Saiba mais sobre a frequência e o comportamento de manutenção das suas VMs com base na série de máquinas. Essas informações ajudam a minimizar interrupções nas cargas de trabalho.
Configure alertas de notificação. Crie alertas com base em registros para receber notificações quando a manutenção das suas VMs for programada, iniciada ou concluída. Essa abordagem ajuda você a planejar proativamente suas atividades e evitar inatividades inesperadas.
Gerenciar a manutenção em VMs. Verifique se há manutenção programada para suas VMs. Se necessário, é possível iniciar manualmente a manutenção em todas as VMs. Esse processo ajuda a aumentar a resiliência das cargas de trabalho para hospedar eventos, evitar inatividade e maximizar a disponibilidade dos aplicativos.
Noções básicas sobre manutenção de host
Durante o ciclo de vida de uma instância do Compute Engine, a máquina host em que a instância é executada passa por vários eventos de host. Um evento de host pode incluir a manutenção regular da infraestrutura do Compute Engine ou, em casos raros, um erro de host. O Compute Engine também aplica alguns upgrades leves não destrutivos para o hipervisor e a rede em segundo plano.
A série de máquinas H4D oferece os seguintes recursos relacionados à manutenção do host:
| Tipo de máquina | Frequência típica de eventos de manutenção programada | Comportamento de manutenção | Notificação avançada | Manutenção sob demanda | Simular manutenção |
|---|---|---|---|---|---|
h4d-standard-192 |
No mínimo 30 dias | Encerrar | 7 dias | Sim | Não |
h4d-highmem-192 |
No mínimo 30 dias | Encerrar | 7 dias | Sim | Não |
h4d-highmem-192-lssd |
No mínimo 30 dias | Encerra com a persistência de dados do SSD local | 7 dias | Sim | Não |
h4d-megamem-192 |
No mínimo 30 dias | Encerrar | 7 dias | Sim | Não |
h4d-megamem-192-lssd |
No mínimo 30 dias | Encerra com a persistência de dados do SSD local | 7 dias | Sim | Não |
As frequências de manutenção mostradas na tabela anterior são aproximadas, não garantias. O Compute Engine pode, às vezes, realizar manutenção com mais frequência.
Configurar alertas de notificação para VMs
É possível receber notificações sobre eventos de manutenção programados, iniciados ou concluídos para suas VMs ao criar políticas de alertas com base em registros.
Para criar um alerta para os eventos de manutenção das suas VMs, conclua o procedimento a seguir. Repita esse procedimento para cada alerta que você quer criar.
-
No console do Cloud de Confiance , acesse a página Análise de registros:
Acessar a Análise de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
Clique no botão Mostrar consulta para a posição ativada.
No painel Consulta, crie uma das seguintes consultas. Essas consultas filtram as entradas de registro para identificar eventos de manutenção específicos. Se você quiser usar várias consultas, repita esse procedimento para criar um alerta exclusivo para cada consulta.
Para receber alertas quando a manutenção de uma VM estiver programada:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "scheduled"Para receber alertas quando a janela de manutenção de uma VM for aberta:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "ongoing"Para receber alertas quando a manutenção de uma VM começar:
protoPayload.methodName="compute.instance.terminateOnHostMaintenance" severity>=DEFAULTPara receber alertas quando a manutenção de uma VM for concluída:
protoPayload.methodName="compute.instances.upcomingMaintenance" severity>=DEFAULT protoPayload.status.message =~ "completed"
Para validar a consulta, clique em Executar consulta. Se a consulta for válida, o painel Resultados da consulta vai mostrar as entradas de registro que correspondem à consulta.
Na barra de ferramentas de resultados da Consulta, clique na lista Ações e selecione Criar alerta de registro. O painel Criar política de alertas com base em registros é exibido.
Na seção Detalhes do alerta, faça o seguinte:
No campo Nome da política de alertas, insira um nome para a política.
Na lista Nível de gravidade da política, selecione Aviso (ou uma gravidade maior).
Clique em Próxima.
Na seção Escolher registros para incluir no alerta, clique em Próxima.
Na seção Definir a frequência da notificação e a duração do fechamento automático, especifique o seguinte:
Na lista Tempo entre notificações, selecione a frequência com que você quer receber notificações.
Na lista Duração do fechamento automático de incidentes, selecione após quanto tempo o Cloud Logging para de enviar notificações e fecha automaticamente o incidente.
Clique em Próxima.
Na seção Quem deve receber notificações?, especifique um canal de notificação para que o Logging envie notificações.
Clique em Salvar.
Para ver exemplos de notificações de eventos de manutenção na Análise de registros, consulte Exemplos de notificações de manutenção na documentação do Compute Engine.
Gerenciar a manutenção em VMs
Para visualizar e controlar a manutenção das VMs, faça o seguinte:
Para verificar o estado e o horário programado da próxima manutenção das VMs, confira o estado de manutenção das VMs.
Para iniciar imediatamente a manutenção nas VMs, em vez de aguardar o horário programado, inicie manualmente a manutenção nas VMs.
Ver o estado de manutenção das VMs
Para conferir o estado e o horário programado da próxima manutenção das VMs,
verifique o valor do campo upcomingMaintenance nos metadados
da instância. Se uma VM não tiver o campo upcomingMaintenance, nenhum evento de manutenção do host será programado para ela. Para mais informações sobre os campos em upcomingMaintenance, consulte Definições de status de manutenção na documentação do Compute Engine.
Além disso, se a manutenção estiver programada para uma VM, o campo upcomingGroupMaintenance vai conter o campo maintenanceReasons. Esse
campo descreve por que a manutenção foi programada para sua VM, conforme descrito na
tabela a seguir:
| Tipo de manutenção | Motivo da manutenção | Estado das VMs |
|---|---|---|
| Manutenção planejada para manutenção regular |
|
Aplica-se a VMs em execução, interrompidas ou suspensas. |
| Manutenção de emergência não planejada |
|
Aplicável apenas a VMs em execução. |
Para conferir o campo maintenanceReasons em uma VM, use a
CLI gcloud ou a API REST. Para conferir o estado de manutenção de
várias VMs simultaneamente, use o console do Cloud de Confiance ou a API
REST. Caso contrário, selecione uma destas opções:
Console
No console do Cloud de Confiance , acesse a página Instâncias de VM.
Na coluna Status de manutenção, o Compute Engine exibe o estado de manutenção das VMs. Se essa coluna não aparecer na tabela Instâncias de VM, clique em view_column Opções de exibição de coluna, marque a caixa de seleção Status de manutenção e clique em OK.
gcloud
Para ver o estado de manutenção de uma VM, use o
comando gcloud compute instances describe
com a flag --flatten=resourceStatus.upcomingMaintenance:
gcloud compute instances describe VM_NAME \
--flatten=resourceStatus.upcomingMaintenance \
--zone=ZONE
Substitua:
VM_NAME: o nome da VM.ZONE: a zona em que a VM está.
A saída será semelhante a uma das seguintes:
Se um evento de manutenção do host estiver programado para sua VM, a saída será semelhante a esta:
--- canReschedule: true latestWindowStartTime: '2025-11-01T19:00:00Z' maintenanceReasons: - 'PLANNED_UPDATE' - 'PLANNED_NETWORK_UPDATE' maintenanceStatus: 'PENDING' type: 'SCHEDULED' windowEndTime: '2025-11-01T22:00:00Z' windowStartTime: '2025-11-01T19:00:00Z'Se um evento de manutenção do host não estiver programado para sua VM, a saída será semelhante a esta:
--- null
REST
Para conferir o estado de manutenção das VMs, faça uma das seguintes solicitações GET. Ao fazer uma solicitação, inclua o parâmetro de consulta fields para mostrar apenas o nome, o tipo de máquina e a manutenção futura de uma VM. Você também precisa incluir o parâmetro de consulta filter para filtrar apenas VMs por um tipo de máquina específico.
Para conferir VMs em todas as zonas: método
instances.aggregatedList.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/instances?fields=items.name,items.machineType,items.upcomingMaintenance&filter=machineType%3AMACHINE_TYPEPara conferir as VMs em uma zona específica, use o método
instances.list.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances?fields=items.name,items.machineType,items.upcomingMaintenance&filter=machineType%3AMACHINE_TYPE
Substitua:
PROJECT_ID: o ID do projeto em que você criou as VMs.ZONE: a zona em que as VMs estão.MACHINE_TYPE: o tipo de máquina que você quer usar para filtrar as VMs.
Se um evento de manutenção do host estiver programado para uma VM, ela vai conter o campo upcomingMaintenance:
{
"items": [
{
"name": "vm-01",
"machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/europe-west4-b/machineTypes/h4d-highmem-192-lssd",
"resourceStatus": {
"upcomingMaintenance": {
"canReschedule": true,
"latestWindowStartTime": "2024-11-01T19:00:00Z",
"maintenanceStatus": "PENDING",
"maintenanceReasons": [
"PLANNED_UPDATE",
"PLANNED_NETWORK_UPDATE"
],
"type": "SCHEDULED",
"windowEndTime": "2024-11-01T22:00:00Z",
"windowStartTime": "2024-11-01T19:00:00Z"
}
}
},
...
]
}
Para restringir ainda mais uma lista de VMs, defina o parâmetro de consulta filter como uma expressão de filtro diferente.
Servidor de metadados
Para conferir o estado de manutenção de uma VM, faça o seguinte:
Se ainda não tiver feito isso, conecte-se à sua Linux ou do Windows.
Consulte o servidor de metadados da seguinte maneira:
curl http://metadata.google.internal/computeMetadata/v1/instance/upcoming-maintenance?alt=json -H "Metadata-Flavor: Google"Se um evento de manutenção do host estiver programado para sua VM, a saída será semelhante a esta:
"Upcoming maintenance": { "can_reschedule": "true", "latest_window_start_time": "2024-12-01T19:00:01Z", "maintenance_reasons": [ "PLANNED_UPDATE", "PLANNED_NETWORK_UPDATE" ], "maintenance_status": "PENDING", "type": "SCHEDULED", "window_end_time": "2024-12-01T21:00:01Z", "window_start_time": "2024-12-01T19:00:01Z" }Se não houver um evento de manutenção do host programado, a saída será semelhante a esta:
{ }
Iniciar manualmente a manutenção em VMs
É possível iniciar manualmente a manutenção das VMs em vez de aguardar o horário programado.
Dependendo do estado de manutenção de uma VM, ocorre o seguinte:
| Estado de manutenção | Descrição | O que você vê |
|---|---|---|
| Programado | O Compute Engine programou uma manutenção para a VM. É possível iniciar manualmente a manutenção antes do horário programado. |
|
| Em andamento | A manutenção está em andamento. Não é possível reagendar. |
|
| Concluído | A manutenção foi concluída. O Compute Engine removeu todas as notificações de manutenção da VM. |
|
É possível iniciar manualmente a manutenção de várias VMs simultaneamente ou de VMs individuais. Para várias VMs, use o console do Cloud de Confiance ou, para VMs localizadas na mesma zona, a CLI gcloud. Para VMs individuais, selecione uma das seguintes opções:
Console
No console do Cloud de Confiance , acesse a página Instâncias de VM.
Selecione as linhas das VMs em que você quer iniciar a manutenção.
Clique em Executar manutenção.
Para confirmar, clique em Executar manutenção.
gcloud
Para iniciar manualmente a manutenção de uma ou mais VMs na mesma zona, use
o
comando gcloud compute instances perform-maintenance:
gcloud compute instances perform-maintenance VM_NAMES \
--zone=ZONE
Substitua:
VM_NAMES: uma lista de nomes de VMs separados por espaços. Por exemplo,vm-01 vm-02 vm-03.ZONE: a zona em que as VMs estão.
REST
Para iniciar manualmente a manutenção de uma VM, faça uma solicitação POST para o
método instances.performMaintenance:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/performMaintenance
Substitua:
PROJECT_ID: o ID do projeto em que você criou a VM.ZONE: a zona em que a VM está.VM_NAME: o nome da VM.