Nós de reparo automático


Nesta página, explicamos como o reparo automático de nós funciona e como usar o recurso em clusters padrão do Google Kubernetes Engine (GKE).

O reparo automático de nós ajuda a manter os nós no cluster do GKE em estado íntegro e em execução. Quando ativado, o GKE verifica periodicamente o estado de integridade de cada nó no cluster. Se um nó falhar em verificações de integridade consecutivas durante um período prolongado, o GKE iniciará um processo de reparo para esse nó.

Configurações do Autopilot e Standard

Os clusters do Autopilot sempre reparam automaticamente os nós. Não é possível desativar essa configuração.

Em clusters padrão, o reparo automático de nós é ativado por padrão para novos pools de nós. É possível desativar o reparo automático em um pool de nós atual, mas recomendamos manter a configuração padrão.

Critérios de reparo

O GKE usa o status de integridade para determinar se um nó precisa ser reparado. Se um nó gerar um relatório com um status Ready, ele será considerado íntegro. O GKE acionará uma ação de reparo se um nó gerar relatórios consecutivos de status não íntegro por um determinado período. Um status não íntegro pode significar que:

  • um nó apresenta um status NotReady em verificações consecutivas por um determinado período (aproximadamente 10 minutos);
  • um nó não apresenta status algum durante um determinado período (aproximadamente 10 minutos);
  • o disco de inicialização do nó não tem mais espaço por um período prolongado (aproximadamente 30 minutos).

Verifique manualmente os sinais de integridade do nó a qualquer momento usando o comando kubectl get nodes.

Processo de reparo de nós

Se o GKE detectar que um nó requer reparo, o nó será esvaziado e recriado. Esse processo preserva o nome original do nó. O GKE aguarda uma hora para que o dreno seja concluído. Se o dreno não for concluído, o nó será encerrado e um novo nó será criado.

Se vários nós precisarem de conserto, o GKE poderá consertar nós em paralelo. O GKE equilibra o número de reparos, dependendo do tamanho do cluster e do número de nós corrompidos. O GKE consertará mais nós em paralelo em um cluster maior, mas menos nós à medida que o número de nós não íntegros aumentar.

Se você desativar o reparo automático de nós a qualquer momento durante o processo de reparo, os reparos em andamento não serão cancelados e continuarão em qualquer nó em reparo.

Histórico de reparo de nós

O GKE gera uma entrada de registro para eventos de reparo automatizados. Verifique os registros executando o seguinte comando:

gcloud container operations list

Reparo automático em nós de fração da TPU

Se um nó de fração da TPU em um pool de nós de fração da TPU de vários hosts não estiver íntegro e precisar de reparo automático, todo o pool de nós será recriado. Para saber mais sobre as condições do nó de fração da TPU, consulte Reparo automático do nó de fração da TPU.

Ativar o reparo automático de um pool de nós padrão atual

O reparo automático de nós é ativado por pool de nós.

Se o reparo automático estiver desativado em um pool de nós em um cluster padrão, use as instruções a seguir para ativá-lo:

gcloud

gcloud container node-pools update POOL_NAME \
    --cluster CLUSTER_NAME \
    --region=COMPUTE_REGION \
    --enable-autorepair

Substitua:

  • POOL_NAME: o nome do pool de nós.
  • CLUSTER_NAME: o nome do cluster padrão.
  • COMPUTE_REGION: a região do Compute Engine para o cluster. Para clusters zonais, use a opção --zone COMPUTE_ZONE.

Console

  1. Acesse a página Google Kubernetes Engine no console do Google Cloud.

    Acessar o Google Kubernetes Engine

  2. Na lista de clusters, clique no nome do cluster que você quer modificar.

  3. Clique na guia Nós.

  4. Em Pools de nós, clique no nome do pool que você quer modificar.

  5. Na página Detalhes do pool de nós, clique em Editar.

  6. Em Gerenciamento, marque a caixa de seleção Ativar reparo automático.

  7. Clique em Salvar.

Verificar se o reparo automático de nós está ativado para um pool de nós

O reparo automático de nós é ativado por pool de nós. É possível verificar se um pool de nós no cluster tem o reparo automático de nós ativado com a Google Cloud CLI ou o Console do Google Cloud.

gcloud

Descreva o pool de nós:

gcloud container node-pools describe NODE_POOL_NAME \
--cluster=CLUSTER_NAME

Se o reparo automático de nós estiver ativado, a saída do comando incluirá estas linhas:

management:
  ...
  autoRepair: true

Console

  1. Acesse a página Google Kubernetes Engine no console do Google Cloud.

    Acessar o Google Kubernetes Engine

  2. Na página do Google Kubernetes Engine, clique no nome do cluster do pool de nós que você quer inspecionar.

  3. Clique na guia Nós.

  4. Em Pools de nós, clique no nome do pool que você quer inspecionar.

  5. Em Gerenciamento, no campo Reparo automático, verifique se o reparo automático está ativado.

Desativar o reparo automático de nós

É possível desativar o reparo automático de nós de um pool de nós atual em um cluster padrão usando a gcloud CLI ou o console do Google Cloud.

gcloud

gcloud container node-pools update POOL_NAME \
    --cluster CLUSTER_NAME \
    --region=COMPUTE_REGION \
    --no-enable-autorepair

Substitua:

  • POOL_NAME: o nome do pool de nós.
  • CLUSTER_NAME: o nome do cluster padrão.
  • COMPUTE_REGION: a região do Compute Engine para o cluster. Para clusters zonais, use a opção --zone COMPUTE_ZONE.

Console

  1. Acesse a página Google Kubernetes Engine no console do Google Cloud.

    Acessar o Google Kubernetes Engine

  2. Na lista de clusters, clique no nome do cluster que você quer modificar.

  3. Clique na guia Nós.

  4. Em Pools de nós, clique no nome do pool que você quer modificar.

  5. Na página Detalhes do pool de nós, clique em Editar.

  6. Em Gerenciamento, desmarque a caixa de seleção Ativar reparo automático.

  7. Clique em Salvar.

A seguir