É possível gerenciar de forma proativa os próximos eventos de host de manutenção nos seus blocos de capacidade reservados, estejam ou não executando VMs. Essa abordagem ajuda a minimizar interrupções e manter a performance ideal.
Antes de começar
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma sua identidade para acesso a serviços e APIs do Google Cloud . Para executar código ou exemplos em um ambiente de desenvolvimento local, faça a autenticação no Compute Engine com um destes métodos:
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 do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
- Set a default region and zone.
REST
Para usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .
Funções exigidas
Para ter as permissões necessárias para gerenciar eventos de manutenção do host em todas as reservas, 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 todas as reservas. Para acessar 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 eventos de manutenção do host em todas as reservas:
-
Para iniciar a manutenção do host em uma reserva:
compute.reservations.performMaintenanceno projeto -
Para iniciar a manutenção do host em um bloco de reserva:
compute.reservationBlocks.performMaintenanceno projeto- Para ver uma lista de reservas
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 dos seus blocos de capacidade reservados, siga estas etapas:
Configure alertas de notificação. Crie alertas com base em registros para receber notificações sobre eventos de manutenção programados, iniciados ou concluídos para uma reserva ou um bloco de reserva. Essa abordagem ajuda você a planejar suas atividades de forma proativa e evitar inatividade inesperada.
Gerenciar a manutenção em blocos de capacidade. Veja e, se necessário, inicie manualmente a manutenção em todas as suas reservas ou blocos de reserva. Esse processo ajuda a aumentar a resiliência das cargas de trabalho a erros de host, evitar inatividade e garantir que seus aplicativos permaneçam disponíveis.
Para mais informações sobre a frequência e o comportamento de manutenção dos tipos de máquina H4D, consulte Experiência de manutenção para instâncias H4D.
Configurar alertas de notificação para reservas
É possível receber notificações sobre eventos de manutenção programados, iniciados ou concluídos para uma reserva ou um bloco de reserva ao criar políticas de alertas com base em registros.
Para criar um alerta para os eventos de manutenção de uma reserva ou um bloco de reserva, siga este procedimento. Repita esse procedimento para cada alerta que você quiser criar.
-
No console Google Cloud , 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 entradas de registro para identificar eventos de manutenção específicos. Repita esse procedimento para cada consulta que você quiser criar.
Receber alertas de manutenção para uma reserva:
Para receber alertas quando uma manutenção for programada:
protoPayload.methodName="compute.reservations.upcomingGroupMaintenance" severity>=DEFAULT protoPayload.status.message =~ "scheduled"Para receber alertas quando a manutenção for concluída:
protoPayload.methodName="compute.reservations.completedGroupMaintenance" severity>=DEFAULT protoPayload.status.message =~ "completed"
Receber alertas de manutenção para um bloco de reserva:
Para receber alertas quando uma manutenção for programada:
protoPayload.methodName="compute.reservations.block.upcomingGroupMaintenance" severity>=DEFAULT protoPayload.status.message =~ "scheduled"Para receber alertas quando a manutenção começar:
protoPayload.methodName="compute.reservations.block.startGroupMaintenance" severity>=DEFAULT protoPayload.status.message =~ "started"Para receber alertas quando a manutenção for concluída:
protoPayload.methodName="compute.reservations.block.completedGroupMaintenance" 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 baseada em registros aparece.
Na seção Detalhes do alerta, faça o seguinte:
No campo Nome da política de alertas, digite 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 a serem incluídos 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 o Logging enviar notificações.
Clique em Salvar.
Gerenciar a manutenção em todas as reservas
É possível conferir e controlar a manutenção das suas reservas e blocos de reserva da seguinte maneira:
Para verificar o estado e o horário programado da manutenção futura das suas reservas ou blocos de reserva, confira o estado da manutenção.
Para iniciar manualmente a manutenção em uma reserva ou bloco de reserva, em vez de esperar pela data e hora programadas, inicie manualmente a manutenção.
Para gerenciar com quanto tempo de antecedência você quer receber notificações quando o host de uma VM precisa de manutenção de emergência não planejada após um erro ou relatório de host com falha, gerencie as notificações de manutenção de emergência de hardware.
Ver o estado de manutenção
Para conferir o estado da manutenção futura de uma reserva ou um bloco de reserva, verifique o valor do campo
upcomingGroupMaintenancenos metadados da reserva. Se uma reserva não tiver o campoupcomingGroupMaintenance, significa que não há manutenção programada para ela ou para o bloco de reserva. Para mais informações sobre os campos emupcomingGroupMaintenance, consulte Definições de status de manutenção.Além disso, se a manutenção for programada para um bloco de reserva, o campo
upcomingGroupMaintenancevai conter o campomaintenanceReasons. Este campo descreve por que a manutenção foi programada para seu bloco de reserva, conforme descrito na tabela a seguir:Tipo de manutenção Motivo da manutenção Estado das VMs Manutenção planejada para manutenção regular PLANNED_UPDATE: manutenção planejada da infraestruturaPLANNED_NETWORK_UPDATE: manutenção de rede planejada
Aplicável a VMs em execução, interrompidas ou suspensas. Manutenção de emergência não planejada FAILURE_DISK: manutenção não planejada programada devido a um erro com um disco anexado a uma VM.FAILURE_INFRA: manutenção não planejada programada devido a um erro na infraestrutura.FAILURE_INTERFACE: manutenção não planejada programada devido a um erro na NIC.FAILURE_MEMORY: manutenção não planejada programada devido a um erro na memória de uma VM.FAILURE_NETWORK: manutenção não planejada programada devido a um erro na rede.
Aplicável apenas a VMs em execução. Para ver o campo
maintenanceReasonsem um bloco ou sub-bloco de reserva, use a CLI gcloud ou a API REST. Caso contrário, selecione uma destas opções:Console
No console do Google Cloud , acesse a página Reservas.
Na coluna Status da manutenção, o Compute Engine mostra o estado de manutenção das suas reservas. Se essa coluna não aparecer na tabela Reservas sob demanda, clique em Opções de exibição de colunas, marque a caixa de seleção Status da manutenção e clique em OK.
Para conferir o estado de manutenção de um bloco de reserva, siga estas etapas:
Na coluna Nome, clique no nome da reserva. Uma página com os detalhes da reserva será aberta.
Na tabela Blocos, na coluna Manutenção, o Compute Engine mostra o estado de manutenção dos blocos na reserva.
gcloud
Para conferir o estado de manutenção de uma reserva, use o comando
gcloud compute reservations describecom a flag--flattendefinida comoresourceStatus.reservationMaintenance:gcloud compute reservations describe RESERVATION_NAME \ --flatten=resourceStatus.reservationMaintenance \ --zone=ZONESubstitua:
RESERVATION_NAME: o nome da reserva.ZONE: a zona em que a reserva existe.
A saída será semelhante a uma destas:
Se a manutenção estiver programada para sua reserva, a saída será semelhante a esta:
--- maintenanceOngoingCount: 0 maintenancePendingCount: 6 schedulingType: GROUPED upcomingGroupMaintenance: canReschedule: true maintenanceStatus: PENDING type: UNSCHEDULED windowEndTime: '2025-11-13T14:00:00.000-08:00' windowStartTime: '2025-11-13T12:00:00.000-08:00'Se o campo
schedulingTypeestiver definido comoINDEPENDENT, o campoupcomingGroupMaintenancenão vai conter os camposwindowStartTimeewindowEndTime.Se não houver manutenção programada para sua reserva, a saída será semelhante a esta:
--- schedulingType: GROUPED
Se a manutenção estiver programada para sua reserva, use o comando
gcloud compute reservations blocks listpara conferir o estado de manutenção dos blocos na reserva:gcloud compute reservations blocks list RESERVATION_NAME \ --zone=ZONESe houver manutenção programada ou em andamento para um bloco de reserva, a saída será semelhante a esta:
--- ... name: example-fr-h4d-dense-1-block-0001 ... reservationBlockMaintenance: maintenanceOngoingCount: 0 maintenancePendingCount: 6 schedulingType: GROUPED upcomingGroupMaintenance: canReschedule: true maintenanceReasons: - PLANNED_UPDATE - PLANNED_NETWORK_UPDATE maintenanceStatus: PENDING type: UNSCHEDULED windowEndTime: '2025-11-13T14:00:00.000-08:00' windowStartTime: '2025-11-13T12:00:00.000-08:00' ... --- ... name: example-fr-h4d-dense-1-block-0002 ... schedulingType: GROUPED ...
REST
Para conferir o estado de manutenção das suas reservas, faça uma solicitação
GETpara um dos seguintes métodos:Para conferir as reservas em todas as zonas, use o método
reservations.aggregatedList.Para conferir as reservas em uma zona específica, use o método
reservations.list.
No URL da solicitação, inclua os seguintes parâmetros de consulta:
Para mostrar apenas o nome, o tipo de máquina reservado e o status de manutenção de uma reserva, inclua o parâmetro de consulta
fieldsdefinido comoitems.name,items.specificReservation.instanceProperties.machineType,items.resourceStatus.reservationMaintenance.Para filtrar apenas por reservas que especificam um tipo de máquina específico, inclua o parâmetro de consulta
filterdefinido comospecificReservation.instanceProperties.machineType:MACHINE_TYPEusando valores codificados por URL.
Por exemplo, para ver as reservas em todas as zonas, faça uma solicitação
GETda seguinte maneira:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/reservations?fields=items.name,items.specificReservation.instanceProperties.machineType,items.resourceStatus.reservationMaintenance&filter=specificReservation.instanceProperties.machineType%3AMACHINE_TYPESubstitua:
PROJECT_ID: o ID do projeto em que as reservas estão.MACHINE_TYPE: o tipo de máquina reservada que você quer usar para filtrar suas reservas.
Se houver uma manutenção programada ou em andamento para uma reserva, a saída será semelhante a esta:
{ "items": [ { "specificReservation": { "instanceProperties": { "machineType": "MACHINE_TYPE" } }, "name": "example-reservation", "resourceStatus": { "reservationMaintenance": { maintenanceOngoingCount: 0, maintenancePendingCount: 6, "schedulingType": "GROUPED", "upcomingGroupMaintenance": { "type": "SCHEDULED", "canReschedule": true, "windowStartTime": "2025-11-13T12:00:00.000-08:00", "windowEndTime": "2025-11-13T14:00:00.000-08:00", "maintenanceStatus": "PENDING" } } } }, ... ] }Para restringir ainda mais uma lista de VMs, defina o parâmetro de consulta
filtercomo uma expressão de filtro diferente.Se a manutenção estiver programada para sua reserva, faça uma solicitação
GETao métodoreservationBlocks.listpara conferir o estado de manutenção dos blocos na reserva. No URL da solicitação, inclua o parâmetro de consultafieldsdefinido comoitems.name,items.reservationMaintenance:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/reservationBlocks?fields=items.name,items.reservationMaintenanceSubstitua
RESERVATION_NAMEpelo nome da reserva.Se houver manutenção programada ou em andamento para um bloco de reserva, a saída será semelhante a esta:
{ "items": [ { "name": "example-fr-h4d-dense-1-block-0001", "reservationBlockMaintenance": { "maintenanceOngoingCount": 0, "maintenancePendingCount": 6, "schedulingType": "GROUPED", "upcomingGroupMaintenance": { "type": "SCHEDULED", "canReschedule": true, "windowStartTime": "2025-11-13T12:00:00.000-08:00", "windowEndTime": "2025-11-13T14:00:00.000-08:00", "maintenanceStatus": "PENDING", "maintenanceReasons": [ "PLANNED_UPDATE", "PLANNED_NETWORK_UPDATE" ] } } }, ... ] }Se o campo
schedulingTypeestiver definido comoINDEPENDENTpara um bloco, o campoupcomingGroupMaintenancenão vai conter os camposwindowStartTimeewindowEndTime.
Iniciar a manutenção manualmente
É possível iniciar manualmente a manutenção das suas reservas ou blocos de reserva em vez de esperar o horário programado. Essa ação ajuda você a controlar de maneira mais proativa as interrupções nas suas cargas de trabalho.
Dependendo do estado de manutenção de uma reserva ou de um bloco de reserva, o seguinte acontece:
Estado de manutenção Descrição O que você vê Programado O Compute Engine tem uma manutenção programada para a reserva. É possível iniciar a manutenção manualmente antes do horário programado. - No console Google Cloud , o estado da manutenção aparece como Pronto para execução - será executado em DATE.
- Na CLI gcloud ou na API REST, o Compute Engine define o campo
maintenanceStatuscomoPENDING.
Em andamento A manutenção está em andamento. Não é possível reagendar. - No console Google Cloud , o estado de manutenção aparece como Em execução.
- Na CLI gcloud ou na API REST, o Compute Engine define o campo
maintenanceStatuscomoONGOING.
Concluído A manutenção foi concluída. O Compute Engine removeu todas as notificações de manutenção da VM. - No console Google Cloud , o estado de manutenção aparece como —.
- Na CLI gcloud ou na API REST, o campo
maintenanceStatusnão existe.
Para iniciar manualmente a manutenção em hosts específicos em um bloco de reserva, use a CLI gcloud ou a API REST. Caso contrário, selecione uma destas opções:
Console
No console do Google Cloud , acesse a página Reservas.
Na coluna Nome, clique no nome de uma reserva. Uma página com os detalhes da reserva vai aparecer.
Clique em Executar manutenção e selecione uma das seguintes opções:
Para iniciar a manutenção em todos os blocos, selecione Toda a capacidade.
Para iniciar a manutenção apenas em blocos com VMs em execução, selecione Capacidade em uso.
Para iniciar a manutenção apenas em blocos não utilizados e blocos com VMs interrompidas ou suspensas, selecione Capacidade não utilizada.
Para confirmar, clique em Ok.
gcloud
Para iniciar a manutenção em uma reserva, use o comando
gcloud compute reservations perform-maintenance:gcloud compute reservations perform-maintenance RESERVATION_NAME \ --scope=RESERVATION_MAINTENANCE_SCOPE \ --zone=ZONEPara iniciar a manutenção em um bloco de reserva, use o comando
gcloud compute reservations blocks perform-maintenance:gcloud compute reservations blocks perform-maintenance RESERVATION_NAME \ --block-name=BLOCK_NAME \ --scope=BLOCK_MAINTENANCE_SCOPE \ --zone=ZONESubstitua:
RESERVATION_NAME: o nome da reserva.RESERVATION_MAINTENANCE_SCOPE: o escopo de manutenção da reserva. Especifique um dos seguintes valores:Para iniciar a manutenção em todos os blocos:
allPara iniciar a manutenção apenas em blocos com VMs em execução:
runningPara iniciar a manutenção apenas em blocos não utilizados e blocos com VMs interrompidas ou suspensas:
unused
BLOCK_NAME: o nome de um bloco que existe na reserva.BLOCK_MAINTENANCE_SCOPE: o escopo da manutenção para o bloco de reserva. Especifique um dos seguintes valores:Para iniciar a manutenção em todos os hosts:
allPara iniciar a manutenção apenas em hosts com VMs em execução:
runningPara iniciar a manutenção apenas em hosts não utilizados e hosts com VMs paradas ou suspensas:
unused
ZONE: a zona em que a reserva existe.
REST
Para iniciar a manutenção de uma reserva, faça uma solicitação
POSTpara o métodoreservations.performMaintenance:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/performMaintenance { "maintenanceScope": "RESERVATION_MAINTENANCE_SCOPE" }Para iniciar a manutenção em um bloco de reserva, faça uma solicitação
POSTpara o métodoreservationBlocks.performMaintenance:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/reservationBlocks/BLOCK_NAME/performMaintenance { "maintenanceScope": "BLOCK_MAINTENANCE_SCOPE" }
Substitua:
PROJECT_ID: o ID do projeto em que o Compute Engine criou automaticamente a reserva.ZONE: a zona em que a reserva existe.RESERVATION_NAME: o nome da reserva.RESERVATION_MAINTENANCE_SCOPE: o escopo de manutenção da reserva. Especifique um dos seguintes valores:Para iniciar a manutenção em todos os blocos:
ALLPara iniciar a manutenção apenas em blocos com VMs em execução:
RUNNINGPara iniciar a manutenção apenas em blocos não utilizados e blocos com VMs interrompidas ou suspensas:
UNUSED
BLOCK_NAME: o nome de um bloco que existe na reserva.SUB_BLOCK_NAME: o nome de um subbloco que existe no bloco de reserva.BLOCK_MAINTENANCE_SCOPE: o escopo da manutenção para o bloco de reserva. Especifique um dos seguintes valores:Para iniciar a manutenção em todos os hosts:
ALLPara iniciar a manutenção apenas em hosts com VMs em execução:
RUNNINGPara iniciar a manutenção apenas em hosts não utilizados e hosts com VMs paradas ou suspensas:
UNUSED
Gerenciar notificações de manutenção de emergência de hardware
Depois que uma VM encontra um erro de host ou você informa que o host dela está com falha, o host da VM exige manutenção emergencial e não planejada. Por padrão, o Compute Engine fornece algumas horas de aviso prévio ao programar esse tipo de manutenção. Para hosts reservados, é possível ativar as notificações de manutenção de emergência para aumentar esse período de aviso para pelo menos sete dias. Essa abordagem ajuda a controlar de maneira mais proativa as interrupções nas cargas de trabalho.
Para ativar ou desativar as notificações de manutenção de emergência de hardware para uma reserva, selecione uma das seguintes opções:
gcloud
Para ativar as notificações de manutenção de emergência de hardware em uma reserva, use o comando
gcloud compute reservations updatecom a flag--enable-emergent-maintenance:gcloud compute reservations update RESERVATION_NAME \ --enable-emergent-maintenance \ --zone=ZONEPara desativar as notificações de manutenção de emergência de hardware em uma reserva, use o comando
gcloud compute reservations updatecom a flag--no-enable-emergent-maintenance:gcloud compute reservations update RESERVATION_NAME \ --no-enable-emergent-maintenance \ --zone=ZONE
Substitua:
RESERVATION_NAME: o nome da reserva.ZONE: a zona em que a reserva existe.
REST
Para ativar ou desativar as notificações de manutenção de emergência de hardware em uma reserva, faça uma solicitação
PATCHpara o métodoreservations.update. No URL da solicitação, inclua o parâmetro de consultapathsdefinido comoenableEmergentMaintenance.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=enableEmergentMaintenance { "name": "RESERVATION_NAME", "enableEmergentMaintenance": EMERGENCY_MAINTENANCE_NOTIFICATIONS }Substitua:
PROJECT_ID: o ID do projeto em que a reserva está.ZONE: a zona em que a reserva existe.RESERVATION_NAME: o nome da reserva.EMERGENCY_MAINTENANCE_NOTIFICATIONS: especifique um dos seguintes valores:Para ativar as notificações:
truePara desativar as notificações:
false
A seguir
Saiba mais sobre a permanência de dados do SSD local durante eventos de host
Saiba como fazer um backup de dados do SSD local para preservar os dados
Saiba mais sobre as definições de status de manutenção ao monitorar eventos de manutenção do host.
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-12-04 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-12-04 UTC."],[],[]] -