Neste documento, descrevemos como visualizar operações de manutenção do host usando a linha de comando e o painel de manutenção do GKE.
Ver as operações de manutenção do host pode ajudar a reduzir as interrupções da carga de trabalho, especialmente em um cluster do GKE de longa duração com cargas de trabalho que podem ser interrompidas devido a interrupções periódicas da infraestrutura.
Para mais detalhes sobre a manutenção do host no GKE, consulte Entenda como fazer a manutenção do host no GKE.
Monitorar notificações de manutenção
Antes de uma VM ter um evento de manutenção programado,
o Compute Engine envia notificações para todas as VMs. Essas
notificações informam o início da janela de manutenção do Compute Engine. Quando
uma manutenção futura é programada pela VM, mas não está ativa,
o GKE adiciona scheduled-maintenance-time ao rótulo do nó.
Para monitorar e detectar os próximos eventos de manutenção, consulte as notificações do GKE e do Compute Engine.
Consultar a próxima manutenção no Compute Engine
O Compute Engine emite notificações quando os nós e as VMs subjacentes são programados para eventos de host e quando esses eventos são ativados. As notificações incluem informações sobre o horário de início planejado, o tipo de evento e outros detalhes.
Conferir as próximas manutenções no GKE
Na versão 1.31.1-gke.2008000 do GKE e mais recente, e para tipos de máquina específicos, é possível monitorar os próximos eventos de manutenção.
- Para tipos de máquina com GPUs ou TPUs conectadas, 1.31.1-gke.2008000 ou mais recente.
- Para tipos de máquina H4D, 1.32.6-gke.1060000 ou posterior.
- Para
c4a-highmem-96-metal, 1.35.0-gke.2232000 ou mais recente. - Para tipos de máquina Z3 com mais de 18 TiB de SSD Titanium, 1.32.4-gke.1376000 ou mais recente.
- Para tipos de máquina Z4D com mais de 41 TiB de SSD Titanium anexado, 1.36.3-gke.1244000 ou mais recente.
Para conferir os próximos eventos de manutenção, faça o seguinte:
Consultar notificações no nível do nó. Para isso, execute o seguinte comando:
kubectl get nodes -l cloud.google.com/scheduled-maintenance-time \ -L cloud.google.com/scheduled-maintenance-timeO resultado será o seguinte:
NAME STATUS SCHEDULED-MAINTENANCE-TIME <gke-accelerator-node-name> Ready 1733083200 <gke-accelerator-node-name> Ready 1733083200 [...]A coluna
SCHEDULED-MAINTENANCE-TIMErepresenta segundos, que são mostrados no formato de tempo de época Unix.Consulte essas notificações no nível dos metadados do nó verificando se há notificações de eventos de manutenção nas instâncias.
Para famílias de máquinas com otimização para aceleradores que oferecem suporte à manutenção avançada, é possível acessar o endpoint
upcoming-maintenance, que fornece informações sobre eventos de manutenção programados e iniciados.
Conferir eventos do Kubernetes para manutenção do host
No GKE versão 1.35 e mais recentes, os eventos do Kubernetes que rastreiam o ciclo de vida da manutenção do host são emitidos. Esses eventos do Kubernetes oferecem visibilidade granular das janelas programadas do Compute Engine, das operações em andamento e dos casos limite, como reparos ou cancelamentos. Assim, é possível monitorar interrupções diretamente no ambiente do Kubernetes.
É possível conferir esses eventos usando ferramentas padrão do Kubernetes ou pelo Cloud Logging:
Para conferir eventos de manutenção recentes, use o seguinte comando
kubectl:kubectl get events -n kube-system --field-selector involvedObject.kind=NodeOs eventos do Kubernetes são retidos no cluster por 60 minutos. Portanto, esse comando gera apenas os eventos recentes por nó.
Para ver eventos no Cloud Logging, faça o seguinte:
Acesse a página do Análise de registros no console do Cloud de Confiance :
Use a seguinte consulta:
resource.type="k8s_node" log_id("events") jsonPayload.metadata.annotations."maintenance.gke.io/category"="HostMaintenance"
Eventos de ciclo de vida de manutenção
Os eventos do ciclo de vida de manutenção são emitidos nos recursos de nós do Kubernetes. A tabela a seguir descreve os eventos emitidos pelo GKE durante o ciclo de vida da manutenção do host do Compute Engine:
| Motivo | Descrição |
|---|---|
MaintenanceWindowScheduled |
Uma janela de manutenção do host do Compute Engine foi programada para o nó |
MaintenanceWindowCancelled |
Uma janela de manutenção do host do Compute Engine foi limpa no nó |
MaintenanceWindowRescheduled |
A janela de manutenção do host do Compute Engine programada anteriormente foi movida, e o horário de início da manutenção foi atualizado. |
CustomerTriggeredMaintenance |
A manutenção do host do Compute Engine foi acionada manualmente pelo GKE. |
MaintenanceWindowStarted |
A manutenção do host do Compute Engine foi iniciada |
TerminateOnHostMaintenance |
Emitido quando o Compute Engine envia o sinal de encerramento (TERMINATE_ON_HOST_MAINTENANCE). Se a finalização suave estiver ativada, o GKE isolará o nó e programará a remoção do pod (SIGTERM). As cargas de trabalho recebem um limite de aviso de 5 a 60 minutos, dependendo do nível da máquina. |
PodEvictionComplete |
Todos os pods foram removidos do nó |
MaintenanceWindowCleared |
A manutenção do host do Compute Engine é concluída e o nó volta ao estado pronto. |
Informações do payload do evento
Se as informações sobre um evento de manutenção programado estiverem disponíveis no Compute Engine, cada evento também vai incluir um payload com dados de anotação e as seguintes informações:
- Detalhes da janela do Compute Engine:inclui
windowStartTime,windowEndTimeelatestWindowStartTime. - Metadados de manutenção:o status do ciclo de manutenção no momento do evento, o motivo da manutenção (que pode ser listado como
SCHEDULEDouUNSCHEDULED) e se a janela do Compute Engine pode ser reagendada. - Metadados do Kubernetes:incluem cluster_name, nodepool_name e node_name.
Visualização das operações de manutenção do host no painel de manutenção do GKE
O painel de manutenção do GKE fornece uma visão consolidada das operações de manutenção do host. O painel oferece visibilidade abrangente das atividades de manutenção nos níveis de cluster, pool de nós e nós.
O painel é criado com base na Análise de observabilidade. Ele mostra ciclos de manutenção, status de nós e métricas históricas de inatividade.
A seguir
- Saiba como gerenciar a interrupção do nó durante a manutenção do host.
- Saiba como realizar a manutenção do host para nós que executam cargas de trabalho de acelerador.
- Saiba mais sobre as janelas de manutenção e exclusões do GKE.