Iniciar manualmente um evento de manutenção do host

Nesta página, explicamos como iniciar manualmente um evento de manutenção do host em VMs de TPU compatíveis. Isso é útil para cargas de trabalho que podem ser afetadas por desempenho degradado ou tempo de inatividade, e para as quais você precisa que a janela de manutenção comece em um horário específico.

Quando você inicia manualmente um evento de manutenção, ele começa imediatamente. Não é possível especificar uma data ou hora para o início do evento de manutenção. Se você não usar esse recurso, o evento de manutenção vai ocorrer no horário indicado na notificação de manutenção futura.

Para informações sobre como iniciar manualmente uma manutenção para TPUs no GKE, consulte Gerenciar a interrupção de nós do GKE para GPUs e TPUs.

Limitações

Só é possível iniciar manualmente um evento de manutenção do host para VMs de TPU com as seguintes configurações:

  • Qualquer VM TPU v4 ou v5p
  • VMs TPU v5e ou v6e com a configuração de topologia 2x4 (por exemplo, v6e-8 se estiver usando o campo "Tipo de acelerador" na API Cloud TPU) ou maiores
  • Pools de nós de vários hosts do GKE v5e ou v6e com VMs da TPU 2x4 ou maiores

Iniciar uma manutenção de host imediatamente para fatias maiores pode resultar em indisponibilidade de fatias por até algumas horas. Normalmente, um evento de manutenção do host resulta no reagendamento da fração o mais rápido possível para outro conjunto de hosts qualificados. No entanto, para solicitações maiores de eventos de manutenção do host, pode não haver capacidade suficiente para reagendar imediatamente a fração, o que leva a um tempo de espera maior.

Além disso, iniciar a manutenção na fatia do Cloud TPU vai iniciar a manutenção em todas as VMs de TPU subjacentes. Se você realizar a manutenção diretamente em uma das instâncias usando a API Instances, todas as instâncias na fração da Cloud TPU vão entrar em manutenção. Em vez disso, use a API Cloud TPU queued-resources para especificar em quais nós a manutenção deve ser realizada.

Iniciar manualmente um evento de manutenção do host

Use as notificações de manutenção para determinar quando iniciar manualmente um evento de manutenção em uma TPU.

Verificar as informações da notificação

É possível encontrar notificações sobre eventos de manutenção futuros usando a API Cloud TPU ou consultando o servidor de metadados na sua VM. Para mais informações, consulte Ver notificações de manutenção.

É possível iniciar um evento de manutenção antes do tempo quando houver uma notificação de manutenção do host na TPU. Para iniciar o evento de manutenção com antecedência, a notificação de manutenção do host precisa ter canReschedule definido como true e maintenanceStatus definido como PENDING.

Iniciar o evento de manutenção

Para iniciar um evento de manutenção do host, use a API Cloud TPU com o comando perform-maintenance:

gcloud alpha compute tpus tpu-vm perform-maintenance TPU_NAME \
    --zone=ZONE

Quando a operação for concluída, os campos windowEndTime e windowStartTime vão mudar para o horário em que você iniciou o evento de manutenção, e o campo maintenanceStatus vai mudar para ONGOING. O evento de manutenção do host começa logo depois.

Use o comando gcloud alpha compute tpus tpu-vm describe para conferir o status do evento de manutenção:

gcloud alpha compute tpus tpu-vm describe TPU_NAME \
    --zone=ZONE

A saída contém uma seção semelhante a esta:

upcomingMaintenance:
    canReschedule: true
    latestWindowStartTime: "2025-12-01T19:00:00Z"
    maintenanceStatus: ONGOING
    type: SCHEDULED
    windowEndTime: "2025-12-01T22:00:00Z"
    windowStartTime: "2025-12-01T19:00:00Z"

A manutenção é concluída quando o estado da VM da TPU é READY e a saída do comando gcloud alpha compute tpus tpu-vm describe não contém mais um campo de metadados upcomingMaintenance.

Em ambientes multislice, é possível iniciar manualmente um evento de manutenção de host em slices específicas usando o seguinte comando:

gcloud alpha compute tpus queued-resources perform-maintenance QR_NAME \
    --zone=ZONE --node-names=NODE_NAMES

NODE_NAMES é uma lista separada por vírgulas de intervalos (nós) no recurso enfileirado para os quais você quer iniciar um evento de manutenção do host. Por exemplo, se o recurso enfileirado tiver nós chamados my-qr-0, my-qr-1 e my-qr-2, uma entrada válida para o comando perform-maintenance seria --node-names=my-qr-0,my-qr-1.

A seguir