Acerca dos eventos de anfitriões

Durante a duração de uma instância de máquina virtual (VM) ou de uma instância bare metal, a máquina anfitriã na qual a sua instância é executada pode sofrer vários eventos de anfitrião. Um evento de anfitrião pode incluir a manutenção regular da infraestrutura do Compute Engine ou, em casos raros, um erro de anfitrião. Pode escolher como as instâncias de metal nu e de VM respondem durante ou após um evento do anfitrião configurando a política de manutenção do anfitrião.

Por predefinição, a maioria das instâncias está definida para migração em direto durante eventos do anfitrião. Para todas as séries de máquinas, exceto a Z3, pode substituir este comportamento e definir explicitamente a terminação das instâncias e, opcionalmente, o respetivo reinício. Alguns tipos de máquinas não suportam a migração em direto, como instâncias bare metal, instâncias com GPUs anexadas ou instâncias Z3 com mais de 18 TiB de SSD Titanium anexado. Estas instâncias terminam durante os eventos do anfitrião. Para mais informações, consulte o artigo Comportamentos de manutenção e reinício.

Tipos de eventos de anfitriões

Existem dois tipos de eventos de anfitrião, que são descritos mais detalhadamente nas secções seguintes:

Se a sua instância deixar de responder, isto também pode acionar um reinício ou a terminação da instância.

Eventos de manutenção

Um evento de manutenção ocorre quando o Compute Engine tem de realizar uma atividade de manutenção ou reparação que requer a mudança das VMs do servidor anfitrião. Se ativar a migração em direto política de manutenção do anfitrião para um tipo de instância suportado, o Compute Engine move a instância para um novo anfitrião, e a interrupção da sua aplicação é mínima.

O Compute Engine também aplica algumas atualizações de hipervisor e de rede simples em segundo plano de forma não disruptiva, mantendo a instância no mesmo anfitrião.

O comportamento da instância durante um evento de manutenção pode variar consoante a ocupação da instância e o tipo de máquina. Pode encontrar informações sobre o comportamento de manutenção de cada tipo de máquina na página da respetiva família de máquinas, da seguinte forma:

Para obter informações sobre as políticas de manutenção para instâncias com GPUs anexadas, consulte o artigo Faça a gestão de eventos de manutenção do anfitrião da GPU.

Para VMs de inquilino único, a frequência aproximada de eventos de manutenção planeada do anfitrião é de 4 a 6 semanas. O facto de a migração em direto ser suportada ou não depende da política de manutenção do anfitrião para a VM de inquilino único.

Erros do anfitrião

Um erro de anfitrião (compute.instances.hostError) significa que ocorreu um problema de hardware ou software na máquina física ou na infraestrutura do centro de dados que aloja a sua instância de computação, o que fez com que a instância falhasse. Um erro do anfitrião que envolva uma falha de hardware total ou outros problemas de hardware pode impedir a migração em direto da sua instância. Se a sua instância estiver definida para ser reiniciada automaticamente, que é a predefinição, o Compute Engine reinicia a instância, normalmente, no prazo de três minutos a partir do momento em que o erro foi detetado. Consoante o problema, o reinício pode demorar até 5,5 minutos.

Ocasionalmente, uma instância de computação pode deixar de responder antes de ser sinalizado um erro do anfitrião. Pode reduzir o tempo que o Compute Engine aguarda para reiniciar ou terminar a instância ao definir o limite de tempo de recuperação de erros do anfitrião. Para mais informações, consulte o artigo Defina políticas de disponibilidade.

As falhas físicas de hardware e software podem ocorrer ocasionalmente, mas são raras. Para proteger as suas aplicações e serviços destes eventos do sistema potencialmente disruptivos, reveja os seguintes recursos:

Vista geral da política de manutenção de anfitriões

A política de manutenção do anfitrião de uma instância determina o respetivo comportamento durante os seguintes eventos do anfitrião:

  • Evento de manutenção
  • Evento de erro do anfitrião ou instância que não responde

Pode configurar as instâncias para continuarem a ser executadas durante a manutenção do anfitrião, enquanto o Compute Engine as migra em direto para outro anfitrião, ou pode optar por parar a instância.

Pode alterar a política de manutenção do anfitrião de uma instância configurando as seguintes definições:

  • Comportamento de manutenção: se a instância é migrada em direto ou parada quando existe um evento de manutenção.
  • Comportamento de reinício: se o Compute Engine reinicia ou termina a instância se esta falhar, tiver um erro de anfitrião ou deixar de responder.
  • Tempo de deteção de erros do anfitrião: o tempo máximo que o Compute Engine aguarda para reiniciar ou terminar uma instância depois de detetar que a instância não está a responder.

Pode atualizar a política de manutenção do anfitrião de uma instância em qualquer altura para controlar o comportamento das instâncias.

Comportamentos de manutenção e reinício

Quando ocorre um evento de anfitrião, a instância de computação pode usar a migração em direto ou a instância pode ser terminada. Se uma instância for terminada, pode optar por reiniciá-la manualmente ou fazer com que o Compute Engine a reinicie automaticamente.

As seguintes séries de máquinas podem não suportar a migração em direto e, em alternativa, requerem a terminação durante eventos do anfitrião:

Migre ao vivo

Por predefinição, a maioria dos tipos de instâncias está definida para migração em direto, excluindo os tipos de instâncias mencionados na secção anterior.

Durante a migração em direto, o Compute Engine migra automaticamente a sua instância de um evento de manutenção da infraestrutura, e a instância permanece em execução durante a migração. A sua instância pode ter um breve período de diminuição do desempenho, mas, em geral, a maioria das instâncias não deve ter um desempenho significativamente diferente. Isto é ideal para instâncias que requerem tempo de atividade constante e podem tolerar um curto período de diminuição do desempenho.

Quando o Compute Engine migra a sua instância, comunica um evento do sistema que é publicado na lista de operações de zona e nos registos de eventos do sistema. Pode rever este evento vendo as operações do Compute Engine para uma zona específica. Os eventos de migração em direto têm o seguinte tipo de operação:

compute.instances.migrateOnHostMaintenance

Terminar e reiniciar

Se não quiser que a sua instância seja migrada em direto ou se o seu tipo de instância não suportar a migração em direto, pode optar por permitir que oCloud de Confiance by S3NS pare a instância quando ocorrer um evento do anfitrião. Com esta configuração, se ocorrer um evento de anfitrião, o Compute Engine envia um sinal de desligamento suave para encerrar a instância. Em seguida, aguarda 60 segundos para que a instância seja encerrada corretamente e define o estado da instância como TERMINATED. Se a instância não for encerrada corretamente em 60 segundos, é terminada à força.

Esta opção é ideal se as suas instâncias exigirem um desempenho máximo constante e se a sua aplicação geral for criada para processar falhas ou reinícios de instâncias.

Quando o Compute Engine para uma instância devido a um evento de anfitrião, comunica um evento do sistema que é publicado na lista de operações de zona e nos registos de eventos do sistema. Pode rever este evento vendo as operações do Compute Engine para uma zona específica. Os eventos de encerramento de instâncias têm o seguinte tipo de operação:

compute.instances.terminateOnHostMaintenance

Reinício automático

Se a sua instância estiver configurada para parar quando ocorrer um evento de manutenção ou se a sua instância falhar devido a um problema de hardware subjacente, o Compute Engine pode reiniciar automaticamente a instância. A instância é reiniciada no mesmo servidor anfitrião ou movida para outro servidor na mesma zona que não esteja a participar no evento de manutenção.

Por predefinição, o Compute Engine tenta recuperar instâncias com discos SSD locais anexados durante uma hora. Se o limite de tempo for atingido, o Compute Engine tenta reiniciar a instância num servidor anfitrião diferente na mesma zona.

Para configurar o reinício automático, defina o campo da política de manutenção do anfitrião automaticRestart como true. Esta definição não se aplica se a instância for colocada offline devido a uma indisponibilidade zonal ou através de uma operação manual, como chamar sudo shutdown no SO convidado.

Quando o Compute Engine reinicia automaticamente a sua instância, comunica um evento do sistema que é publicado na lista de operações da zona. Pode rever este evento vendo as operações do Compute Engine para uma zona específica. Os eventos de reinício automático têm o seguinte tipo de operação:

compute.instances.automaticRestart

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

Uma vez que o Hyperdisk são armazenamento associado à rede, quando a instância é reiniciada, o Compute Engine volta a associar o disco de arranque e todos os discos secundários à instância. Os dados nesses discos persistem durante a migração em direto e os reinícios de instâncias.

Agendamento de manutenção

Cloud de Confiance by S3NS oferece funcionalidades que permitem um controlo mais rigoroso da manutenção. Ao usar determinadas famílias de máquinas, pode especificar preferências de manutenção e receber notificações de eventos de manutenção futuros através do Cloud Logging, do servidor de metadados da instância, do comando compute instances describe da CLI gcloud ou do método instances.describe REST. Após a receção de uma notificação, tem um período durante o qual pode iniciar a manutenção agendada à hora que escolher. Se não acionar a manutenção agendada, o evento de manutenção ocorre no final do período de tempo da notificação, que é a hora agendada indicada na notificação.

Pode usar estas funcionalidades em combinação com a sua política de manutenção do anfitrião para personalizar uma agenda de manutenção adequada à sua carga de trabalho.

O que se segue?