Nós de upgrade automático

Nesta página, mostramos como configurar upgrades automáticos de nó no Google Kubernetes Engine.

Visão geral

Com os upgrades automáticos de nós, os nós do cluster acompanham a versão do mestre do cluster quando ele é atualizado para você. Quando você cria um novo cluster ou pool de nós com o Console do Google Cloud ou com o comando gcloud, o upgrade automático de nós é ativado por padrão.

Saiba mais sobre upgrades de nós e clusters.

Os upgrades automáticos de nós oferecem vários benefícios:

  • Menor sobrecarga no gerenciamento: não é preciso rastrear e atualizar manualmente os nós quando o mestre é atualizado para você.
  • Mais segurança: às vezes, novos binários são lançados para corrigir um problema de segurança. Com upgrades automáticos, o GKE garante automaticamente que as atualizações de segurança sejam aplicadas e atualizadas.
  • Facilidade de uso: fornece uma maneira simples de manter seus nós atualizados com os recursos mais recentes do Kubernetes.

Os pools de nós com esse recurso ativado são programados automaticamente para receberem upgrades depois que o mestre do cluster é atualizado. Quando o upgrade é executado, os nós são esvaziados e recriados para corresponder à versão atual do mestre do cluster. As modificações no disco de inicialização da VM do nó não são mantidas na recriação dos nós. Para manter as modificações durante a recriação dos nós, use um DaemonSet.

O upgrade automático de nós não está disponível para clusters Alfa.

Como ativar upgrades automáticos de nós para um pool de nós atual

Quando você cria um novo cluster com o Console do Google Cloud ou com o comando gcloud, o upgrade automático de nós é ativado por padrão.

É possível ativar o upgrade automático de nós se ele estiver desativado.

gcloud

Para ativar os upgrades automáticos para um pool de nós existente, execute o comando abaixo:

gcloud container node-pools update [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --enable-autoupgrade

Console

Para ativar upgrades automáticos para um pool de nós atual, execute as etapas abaixo:

  1. Acesse o menu do Google Kubernetes Engine no Console do Cloud.

    Acessar o menu do Google Kubernetes Engine

  2. Clique no botão de edição do cluster, que tem a forma de um lápis.

  3. Na seção Pool de nós clique no botão Edição avançada para o pool de nós que você quer modificar.

  4. Selecione Ativar upgrade automático.

  5. Clique em Salvar para sair da sobreposição de Edição avançada.

  6. Clique em Salvar novamente para modificar o cluster.

Para ter mais controle sobre quando os nós podem ser atualizados automaticamente, considere configurar janelas de manutenção e exclusões.

Como desativar upgrades automáticos de nós em um pool de nós atual

É possível desativar o upgrade automático de nós para um pool de nós atual. Se fizer isso, você garante que os nós do cluster executem uma versão compatível com a versão do cluster.

gcloud

Para desativar upgrades automáticos para um pool de nós existente, execute o comando abaixo:

gcloud container node-pools update [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --no-enable-autoupgrade

Console

Para desativar upgrades automáticos para um pool de nós atual, execute as etapas abaixo:

  1. Acesse o menu do Google Kubernetes Engine no Console do Cloud.

    Acessar o menu do Google Kubernetes Engine

  2. Clique no botão de edição do cluster, que tem a forma de um lápis.

  3. Na seção Pool de nós clique no botão Edição avançada para o pool de nós que você quer modificar.

  4. Desmarque Ativar upgrade automático.

  5. Clique em Salvar para sair da sobreposição de Edição avançada.

  6. Clique em Salvar novamente para modificar o cluster.

Como criar um cluster ou pool de nós com upgrades automáticos de nós ativados

gcloud

Para criar um cluster com os upgrades automáticos ativados para o pool de nós padrão, especifique a sinalização --enable-autoupgrade no comando gcloud container clusters create:

gcloud container clusters create [CLUSTER_NAME] --zone [COMPUTE_ZONE] \
    --enable-autoupgrade

Para criar um pool de nós com o upgrade automático ativado:

gcloud container node-pools create [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --enable-autoupgrade

Console

Os clusters e os pools de nós criados com o Console do Cloud têm os upgrades automáticos ativados por padrão. Acesse Como criar um cluster ou Como adicionar e gerenciar pools de nós para ver instruções sobre como criar clusters e pools de nós.

É possível desativar os upgrades automáticos para novos clusters ou pools de nós. Para fazer isso, clique em Edição avançada e desmarque Ativar upgrade automático ao configurar o cluster ou o pool de nós.

Como mudar os parâmetros de upgrade imediato

Upgrades de sobretensão permitem alterar o número de upgrades de nós do GKE de uma só vez e a quantidade de interrupções que um upgrade faz nas suas cargas de trabalho.

As sinalizações max-surge-upgrade e max-unavailable-upgrade são definidas para cada pool de nós.

É possível alterar essas configurações ao criar um cluster ou pool de nós.

Como criar um cluster com diferentes parâmetros de sobretensão

Para criar um cluster com configurações diferentes para upgrades de sobretensão, use as sinalizações max-surge-upgrade e max-unavailable-upgrade.

gcloud beta container clusters create [CLUSTER_NAME] \
  --max-surge-upgrade=[SURGE_NODES] --max-unavailable-upgrade=[UNAVAILABLE_NODES]

Como criar um cluster com upgrade de sobretensão desativado

Para criar um cluster sem upgrades de sobretensão, defina a sinalização max-surge-upgrade como 0.

gcloud beta container clusters create [CLUSTER_NAME] \
  --max-surge-upgrade=0 --max-unavailable-upgrade=1

Como criar um pool de nós com diferentes parâmetros de sobretensão

Para criar um pool de nós em um cluster existente com configurações diferentes para upgrades de sobretensão, use as sinalizações max-surge-upgrade e max-unavailable-upgrade.

gcloud beta container node-pools create [NODE_POOL_NAME] \
  --num-nodes=[NUMBER_NODES] --cluster=[CLUSTER_NAME] \
  --max-surge-upgrade=[SURGE_NODES] --max-unavailable-upgrade=[UNAVAILABLE_NODES]

Como verificar se os upgrades de sobretensão são ativados em um pool de nós

Para ver se os upgrades de sobretensão estão ativados em um pool de nós, use gcloud para descrever os parâmetros do cluster.

gcloud beta container node-pools describe [NODE_POOL_NAME] \
--cluster=[CLUSTER_NAME]

A seguir