Recuperação de falhas de instâncias de TPU

Para manter as cargas de trabalho em execução, o Compute Engine recupera instâncias e frações de TPU de falhas de hardware e de aplicativos.

O comportamento de recuperação de falhas depende do modo de capacidade:

  • Modo de capacidade gerenciada (reservas sob demanda, de início flexível e padrão): o Compute Engine recupera automaticamente as instâncias e as frações de TPU reiniciando-as em hardware íntegro.
  • Modo de capacidade total (reservas no modo de capacidade total): você gerencia a recuperação de fração de TPU. As falhas de hardware são corrigidas no host atual sem realocar automaticamente as instâncias para um novo hardware.

Requisitos de recuperação de fatia de vários hosts

As frações de TPU de vários hosts exigem que todas as instâncias na fração sejam recuperadas ou reagendadas juntas. Seja no modo de capacidade gerenciada do Compute Engine ou você recupera frações manualmente no modo de capacidade total, não é possível reagendar instâncias individuais em uma fração.

As instâncias em uma fração de vários hosts são conectadas por interconexão entre chips (ICI) e, em alguns casos, por um comutador de circuito óptico (OCS). Quando você provisiona uma fração de vários hosts, o Compute Engine cria instâncias de TPU e ativa a rede ICI. Você especifica a topologia de rede da fração definindo a topologia de acelerador na política de carga de trabalho. Quando uma carga de trabalho é iniciada, a LibTPU, a camada de software fundamental da TPU, inicializa a topologia de rede. Por padrão, o compilador XLA mapeia estaticamente as operações do modelo para essa topologia.

Se uma instância ou um link de rede falhar, o hardware físico não vai mais corresponder à topologia mapeada. Como resultado, o compilador XLA não pode executar a carga de trabalho até que o sistema reconfigure a topologia de rede recriando ou reprogramando todas as instâncias na fração.

Recuperação de falhas no modo de capacidade gerenciada

No modo de capacidade gerenciada (incluindo reservas sob demanda, de início flexível e padrão), o Compute Engine recupera automaticamente instâncias e frações de TPU de falhas de hardware e host reiniciando-as em hardware íntegro.

Recuperação automática de uma fração de TPU de host único

As frações de host único são instâncias de TPU independentes. Por padrão, o Compute Engine recupera automaticamente as instâncias com falha reiniciando-as em hardware em bom estado. Esse comportamento é controlado pela configuração de reinicialização automática, que é ativada por padrão ao criar instâncias, exceto para VMs spot. Se você desativar o reinício automático, uma falha na instância fará com que ela entre no estado TERMINATED. Para mais informações, consulte Reinicialização automática.

O Compute Engine recupera automaticamente uma instância com falha em cenários como:

  • Um tempo limite ou erro do host causado pela não resposta da máquina física, pelo desligamento ou reinicialização do host ou por uma queda de energia no host
  • Eventos de manutenção do host físico iniciados por você ou pelo Google
  • Falha na interconexão entre chips (ICI) em um host
  • Falha na VM

O Compute Engine não recupera automaticamente instâncias em cenários de encerramento planejado, incluindo:

  • Exclusão de instâncias
  • Exclusão ou expiração da reserva
  • Preempção de VMs spot

Reparo iniciado pelo MIG em fatias de host único

Em um MIG com frações de host único, se uma instância de TPU em uma fração de host único entrar em um estado TERMINATED devido a falhas de hardware ou eventos externos, como preempção de VMs spot, o MIG vai corrigir a instância por padrão. Durante um reparo, o MIG recria a instância com o mesmo nome. Você pode desativar esse mecanismo de reparo se desativar os reparos.

Também é possível configurar uma verificação de integridade baseada em aplicativo em um MIG com frações de host único. Se a verificação de integridade detectar que o aplicativo não está respondendo, o MIG marcará a instância como não íntegra e fará a recuperação automática dela recriando-a.

Para mais informações, consulte Como reparar VMs para alta disponibilidade e Configurar uma verificação de integridade e recuperação automática de aplicativos.

Recuperação automática de uma fração de vários hosts

Para TPUs no modo gerenciado usando os modelos de consumo sob demanda, de início flexível ou de reserva, o Compute Engine recupera automaticamente as instâncias com falha em uma fração de vários hosts.

Durante a recuperação, o Compute Engine identifica um conjunto de máquinas de TPU que podem formar a topologia de rede, reinicia todas as instâncias na fração juntas nessas máquinas e reconfigura a rede. Esse processo minimiza o tempo de inatividade ao recriar a topologia em hardware disponível e íntegro, em vez de esperar por reparos de hardware.

Processo de recuperação e estados de fração

Durante a recuperação automática, a fração passa pelos seguintes estados:

  1. A fração passa para o estado REACTIVATING.
  2. Todas as instâncias na fatia fazem a transição para o estado REPAIRING, mas não necessariamente ao mesmo tempo.
  3. O Compute Engine reinicia todas as instâncias na fração juntas em hardware íntegro.

Para mais informações sobre os estados de fração da TPU, consulte Estados da topologia do acelerador.

Cenários que exigem recuperação manual de fração no modo de capacidade gerenciada

O Compute Engine não pode recuperar automaticamente uma fração de vários hosts nos seguintes cenários:

  • Preempção de VMs spot: se alguma instância na fração for preemptiva, o Compute Engine vai encerrar todas as instâncias na fração, e ela vai entrar no estado FAILED.
  • Interrupções iniciadas pelo usuário: se você interromper ou excluir uma instância de TPU ou interromper uma instância no sistema operacional, a fração vai entrar no estado FAILED. A fração permanece no estado FAILED até que você a recrie.

Nesses cenários, é necessário recuperar manualmente a fatia.

Recuperação de falhas no modo "Toda a capacidade"

No modo "All Capacity", você é responsável por gerenciar o processo de recuperação da fração de TPU. Ao contrário do modo de capacidade gerenciada, o Compute Engine não realoca automaticamente instâncias de TPU ou frações de vários hosts com falha para um novo hardware físico. O Google conserta o hardware com falha no host atual, e você é responsável por reagendar as frações não íntegras para um hardware sobressalente íntegro que você reservou.

Falha e reparo de host com falha

Se ocorrer uma falha no host ou se você informar que um host de VM está com falha, o processo de reparo do host vai funcionar da seguinte maneira:

  • A VM afetada passa para o estado REPAIRING enquanto o hardware físico é reparado.
  • Depois que o hardware subjacente é corrigido, a VM volta para o estado RUNNING no mesmo host. No entanto, se a VM pertencer a uma fatia de vários hosts, a fatia vai permanecer no estado "FAILED". É preciso recuperar manualmente a fração.

Para mais informações, consulte Informar e corrigir hosts de TPU com falha no modo "Toda a capacidade".

Manutenção emergencial

Durante eventos de manutenção emergenciais ou quando você inicia manualmente um evento de manutenção:

  • As VMs fazem a transição do estado RUNNING para o estado REPAIRING.
  • Quando a manutenção terminar, as VMs vão retornar ao estado RUNNING no mesmo host.

Para mais informações, consulte Gerenciar eventos de manutenção no modo "Toda a capacidade".

Cenários de falha de fatia de vários hosts

No modo "Toda a capacidade", o Compute Engine não recupera automaticamente uma fração de vários hosts. Uma fatia faz a transição para o estado FAILED nos seguintes cenários:

  • Falha no ICI: as VMs permanecem no estado RUNNING, mas o estado da fração passa para FAILED.
  • Preempção de VMs spot: se alguma instância na fração for preemptiva, o Compute Engine vai encerrar todas as instâncias na fração, e ela vai entrar no estado FAILED.
  • Interrupções iniciadas pelo usuário: se você interromper ou excluir uma instância de TPU ou interromper uma instância no sistema operacional, a fração vai entrar no estado FAILED.

Quando uma fração entra no estado FAILED, é necessário recuperar manualmente a fração reagendando todas as instâncias nela.

Recuperar manualmente uma fração de TPU

Quando uma fração de TPU no modo de capacidade gerenciada ou de capacidade total está no estado FAILED, é necessário fazer a recuperação manual reagendando todas as instâncias na fração usando um dos seguintes métodos:

A seguir

Para verificar a recuperação de falhas das TPUs, confira os seguintes status: