Sobre os eventos de host

Durante o ciclo de vida de uma instância de máquina virtual (VM) ou de uma instância bare metal, a máquina host em que a instância é executada pode passar 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. É possível escolher como as instâncias de computação respondem durante ou após um evento de host configurando a política de manutenção do host.

Por padrão, a maioria das instâncias é configurada para migração em tempo real durante eventos de host. Para todas as séries de máquinas, exceto a Z3, é possível substituir esse comportamento e definir explicitamente as instâncias para serem encerradas e, opcionalmente, reiniciadas. As instâncias criadas usando determinados tipos ou configurações de máquinas não oferecem suporte à migração em tempo real, como as seguintes:

  • Instâncias H4D
  • Instâncias Z3 com mais de 18.000 GiB de SSD Titanium anexado
  • Instâncias Z4D e Z4M com mais de 42.000 GiB de SSD Titanium anexado
  • Instâncias que têm uma interface de rede Cloud RDMA
  • Instâncias bare metal
  • Instâncias com GPUs anexadas

Essas instâncias são encerradas durante eventos de host. Para mais informações, consulte Comportamentos de manutenção e reinicialização.

Tipos de eventos de host

Há três tipos de eventos de host, que são descritos com mais detalhes nas seções a seguir:

Se a instância não responder, isso também poderá acionar uma reinicialização ou encerramento dela.

Eventos de manutenção

Um evento de manutenção ocorre quando o Compute Engine precisa realizar uma atividade de manutenção ou reparo que exige que as VMs sejam removidas do servidor host. Se você ativar a política de manutenção do host de migração em tempo real para um tipo de instância compatível, o Compute Engine vai mover a instância para um novo host, e haverá uma interrupção mínima no aplicativo.

O Compute Engine também aplica alguns hipervisores leves e upgrades de rede em segundo plano sem interrupções, mantendo a instância no mesmo host.

O comportamento da instância durante um evento de manutenção pode variar dependendo da locação da instância e do tipo de máquina.

Para VMs de locatário individual, a frequência aproximada de eventos de manutenção de host planejados é de quatro a seis semanas. O suporte à migração em tempo real depende da política de manutenção do host da VM de locatário individual.

É possível encontrar informações sobre o comportamento de manutenção de cada tipo de máquina na página da família de máquinas correspondente, da seguinte maneira:

Para famílias de máquinas com otimização de acelerador, consulte as seguintes páginas:

Manutenção emergencial

Um evento de manutenção emergencial ocorre quando o Compute Engine detecta uma falha de host iminente ou outro problema de hardware que exige manutenção urgente. Para esses eventos, o Compute Engine programa o evento de manutenção e cria uma notificação. Os eventos de manutenção emergencial geralmente têm uma janela de notificação mais curta do que os eventos de manutenção padrão.

Um evento de manutenção emergencial normalmente fornece um aviso prévio de 7 a 14 dias. Dependendo da gravidade do problema, a janela de notificação pode ser mais curta. Analise a notificação de manutenção para conferir a funcionalidade com suporte, como iniciar a manutenção no horário de sua preferência. Se nenhuma ação for tomada ou se não for possível iniciar a manutenção manualmente, o Compute Engine vai iniciar a manutenção automaticamente quando a janela de notificação terminar.

Se um evento de manutenção planejada estiver pendente quando o Compute Engine emitir uma notificação de manutenção emergencial, o evento de manutenção emergencial vai substituir o evento de manutenção planejada.

É possível verificar o motivo da manutenção emergencial no campo maintenanceReasons dos metadados da instância. Esse campo contém um valor que representa a categoria de falha.

Erros de host

Um erro de host (compute.instances.hostError) significa que houve um problema de hardware ou software na máquina física ou na infraestrutura do data center que hospeda a instância de computação que causou a falha da instância. Um erro de host que envolve uma falha total de hardware ou outros problemas de hardware pode impedir a migração em tempo real da instância. Se a instância estiver configurada para reiniciar automaticamente, o que é a configuração padrão, o Compute Engine vai reiniciá-la, normalmente em três minutos a partir do momento em que o erro foi detectado. Dependendo do problema, a reinicialização pode levar até 5,5 minutos.

Depois que uma instância de computação encontra um erro de host ou você informa que o host está com falha, o host da instância 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.

Às vezes, uma instância de computação pode não responder antes que um erro de host seja sinalizado. É possível reduzir o tempo que o Compute Engine aguarda para reiniciar ou encerrar a instância definindo o tempo limite de recuperação de erros do host. Para mais informações, consulte Definir a política para uma instância atual.

Falhas físicas de hardware e software podem acontecer ocasionalmente, mas são raras. Para proteger aplicativos e serviços contra esses eventos de sistema potencialmente prejudiciais, analise os seguintes recursos:

Visão geral da política de manutenção do host

A política de manutenção de host de uma instância determina como ela se comporta durante os seguintes eventos de host:

  • Evento de manutenção
  • Evento de manutenção emergencial
  • Evento de erro de host ou instância que não responde

É possível configurar as instâncias para continuarem em execução durante a manutenção do host, enquanto o Compute Engine as migra em tempo real para outro host ou pode optar por interromper a instância.

É possível alterar a política de manutenção do host de uma instância definindo as seguintes configurações:

  • Comportamento de manutenção:se a instância é migrada em tempo real ou interrompida quando há um evento de manutenção.
  • Comportamento de reinicialização:se o Compute Engine reinicia ou encerra a instância caso ela falhe, apresente um erro de host ou não responda.
  • Tempo de detecção de erros do host:o tempo máximo que o Compute Engine aguarda para reiniciar ou encerrar uma instância depois de detectar que ela não está respondendo.

É possível atualizar a política de manutenção do host de uma instância a qualquer momento para controlar a maneira como quer que as instâncias se comportem.

Comportamentos de manutenção e reinicialização

Quando ocorre um evento de host, a instância de computação pode usar a migração em tempo real ou ser encerrada. Se uma instância for encerrada, você poderá reiniciá-la ou fazer com que o Compute Engine a reinicie automaticamente.

As seguintes séries de máquinas podem não oferecer suporte à migração em tempo real e, em vez disso, exigem o encerramento durante eventos de host:

  • As instâncias bare metal são encerradas e reiniciadas, o que significa que elas podem ser reiniciadas em um host diferente. Para mais detalhes, consulte a documentação "Experiência de manutenção" da série de máquinas. Por exemplo, para tipos de máquinas bare metal C3, consulte Experiência de manutenção para instâncias C3.
  • Instâncias de VM confidenciais exceto para tipos de máquinas N2D com plataformas de CPU AMD EPYC Milan que executam AMD SEV.
  • Instâncias com GPUs
  • Instâncias com TPUs
  • Migração em tempo real

    Por padrão, a maioria dos tipos de instâncias é definida para migração em tempo real, exceto os tipos de instâncias mencionados na seção anterior.

    Durante a migração em tempo real, o Compute Engine migra automaticamente a instância para fora de um evento de manutenção de infraestrutura, e ela permanece em execução durante a migração. A instância pode ter um curto período de desempenho reduzido, mas, em geral, a maioria das instâncias não tem um desempenho notavelmente diferente. Isso é ideal para instâncias que exigem tempo de atividade constante e podem tolerar um período curto de desempenho reduzido.

    Ao migrar a instância, o Compute Engine informa um evento de sistema que é publicado na lista de operações de zona e nos logs de eventos do sistema. É possível analisar esse evento ao visualizar as operações do Compute Engine para uma zona específica. Os eventos de migração em tempo real têm o seguinte tipo de operação:

    compute.instances.migrateOnHostMaintenance
    

    Encerrar e reiniciar

    Se você não quiser que a instância seja migrada em tempo real ou se o tipo de instância não oferecer suporte à migração em tempo real, escolha permitir Cloud de Confiance by S3NS que a instância seja interrompida quando ocorrer um evento de host. Com essa configuração, se ocorrer um evento de host, o Compute Engine vai enviar um sinal de desligamento suave para encerrar a instância. Em seguida, ele aguarda 60 segundos para que a instância seja encerrada corretamente e define o status da instância como TERMINATED. Se a instância não for encerrada corretamente em 60 segundos, ela será encerrada à força.

    Essa opção é ideal se as instâncias exigirem desempenho máximo e constante e se o aplicativo geral for criado para lidar com falhas ou reinicializações de instâncias.

    Quando o Compute Engine interrompe uma instância devido a um evento de host, ele informa um evento de sistema que é publicado na lista de operações de zona e nos logs de eventos do sistema. É possível analisar esse evento ao visualizar as operações do Compute Engine para uma zona específica. Os eventos de encerramento de instância têm o seguinte tipo de operação:

    compute.instances.terminateOnHostMaintenance
    

    Reinicialização automática

    Se a instância estiver configurada para ser interrompida quando houver um evento de manutenção ou se ela falhar devido a um problema de hardware subjacente, o Compute Engine poderá reiniciar a instância automaticamente. A instância é reiniciada no mesmo servidor host ou movida para outro servidor na mesma zona que não está participando do evento de manutenção.

    Por padrão, o Compute Engine tenta recuperar instâncias com discos SSD locais anexados por uma hora. Se o limite de tempo for atingido, o Compute Engine vai tentar reiniciar a instância em um servidor host diferente na mesma zona.

    Para configurar a reinicialização automática, defina o campo automaticRestart da política de manutenção do host como true. Essa configuração não se aplica se a instância ficar off-line devido a uma interrupção zonal ou por operação manual, como chamar sudo shutdown no SO convidado.

    Quando o Compute Engine reinicializa a instância automaticamente, ele informa um evento de sistema publicado na lista de operações de zona. É possível analisar esse evento ao visualizar as operações do Compute Engine para uma zona específica. Os eventos de reinicialização automática têm o seguinte tipo de operação:

    compute.instances.automaticRestart
    

    Persistência de disco após o encerramento da instância

    Como o hiperdisco são armazenamento conectado à rede, quando a instância é reiniciada, o Compute Engine anexa novamente o disco de inicialização e todos os discos secundários à instância. Os dados nesses discos permanecem durante a migração em tempo real e as reinicializações da instância.

    Programação de manutenção

    Cloud de Confiance by S3NS fornece recursos que permitem maior controle da manutenção. Ao usar determinadas famílias de máquinas, é possível especificar preferências de manutenção e receber notificações de eventos de manutenção futuros pelo Cloud Logging, pelo servidor de metadados da instância, pelo comando compute instances describe da CLI gcloud ou pelo método instances.describe da API REST. Ao receber uma notificação, você tem um período de tempo em que pode iniciar a manutenção programada no horário de sua preferência. Se você não acionar a manutenção programada, o evento de manutenção vai ocorrer no final do período de notificação, que é o horário programado listado na notificação.

    É possível usar esses recursos em combinação com a política de manutenção do host para personalizar uma programação de manutenção que se adapte à sua carga de trabalho.

    A seguir