Upgrades de cluster

Nesta página, você verá como upgrades automáticos e manuais funcionam em clusters do GKE, incluindo links para mais informações sobre tarefas e configurações relacionadas. Use essas informações para manter seus clusters atualizados e ter estabilidade e segurança com interrupções mínimas nas cargas de trabalho.

Como funcionam os upgrades de pools de nós e de cluster

Nesta seção, você verá o que acontece no cluster durante upgrades automáticos ou manuais. Os upgrades automáticos são iniciados pelo Google. Ele observa upgrades automáticos e manuais em todos os clusters do GKE e intervém se forem apresentados problemas.

Um cluster é atualizado antes de seus nós.

Upgrades de cluster

Nesta seção, você verá o que esperar quando o Google fizer o upgrade automático do cluster ou quando você iniciar um upgrade manual.

  • Os clusters zonais e de várias zonas têm apenas um único plano de controle (mestre). Durante o upgrade, as cargas de trabalho continuarão em execução, mas não será possível implantar novas cargas de trabalho, modificar as atuais nem fazer outras alterações na configuração do cluster até que o upgrade seja concluído.

  • Clusters regionais têm várias réplicas do plano de controle e apenas uma é atualizada por vez, em uma ordem indefinida. Durante o upgrade, o cluster permanece altamente disponível, e cada réplica do plano de controle fica indisponível apenas durante a atualização.

Se você configurar uma janela ou exclusão de manutenção, ela será respeitada, se possível.

Upgrades de pool de nós

Seu cluster e os respectivos pools de nós não executam necessariamente a mesma versão do GKE. Nesta seção, você verá o que esperar quando o Google fizer o upgrade automático ou iniciar um upgrade manual do pool de nós.

Os pools de nós são atualizados um de cada vez. Em um pool de nós, os nós são atualizados individualmente, em uma ordem indefinida. É possível alterar o número de nós atualizados por vez.

Se você configurar uma janela ou exclusão de manutenção, ela será respeitada, se possível.

Ao fazer upgrade em um nó, ocorrem os seguintes itens:

  1. Se os upgrades de sobretensão estiverem ativados, o GKE criará um ou mais nós para as cargas de trabalho. O GKE selecionará um ou mais nós para atualizar.
  2. Eles são isolados e esvaziados. Neste momento, eles não podem ser programados para executar novos pods.
  3. Os pods no nó são reprogramados em outros nós. Se não for possível reprogramar um pod, ele permanecerá no estado PENDING até que o nó seja recriado.
  4. O nó é excluído e recriado na nova versão.
  5. Se o novo nó falhar no registro, o upgrade automático de todo o pool será desativado.
  6. Se um número significativo de upgrades automáticos de nó para uma determinada versão resultar em nós não íntegros na frota do GKE, esses upgrades serão interrompidos enquanto o problema for investigado.

Como fazer upgrades automaticamente

Ao criar um cluster usando o Console do Google Cloud, o upgrade automático será ativado nele e nos pools de nós por padrão, e o Google atualizará os clusters quando uma nova versão do GKE for selecionada para upgrade automático.

Ao criar um cluster usando o comando gcloud ou a API do GKE, o upgrade automático de nós será ativado por padrão. Para desativá-lo manualmente, consulte Como atualizar os nós automaticamente.

Para ter mais controle sobre o momento em que um upgrade automático poderá, ou não, ocorrer, configure janelas e exclusões de manutenção.

Os pools de nós de um cluster não podem estar mais de duas versões secundárias atrás da versão do plano de controle para manter a compatibilidade com a API do cluster. A versão do pool de nós também determina as versões dos pacotes de software instalados em cada nó. É recomendável manter os pools de nós atualizados para a versão do cluster.

Se você inscrever o cluster em um canal de lançamento, os nós sempre executarão a mesma versão do GKE, exceto durante um breve período entre a conclusão do upgrade do plano de controle do cluster e o início do upgrade de um determinado pool de nós.

Como as versões são selecionadas para o upgrade automático

Novas versões do GKE são lançadas regularmente, mas uma versão não é selecionada para upgrade automático imediatamente. Quando uma versão do GKE acumular uso de cluster suficiente para comprovar a estabilidade, o Google a selecionará como um objetivo de upgrade automático para clusters que executam um subconjunto de versões mais antigas.

Novos objetivos de upgrade automático são anunciados nas notas da versão. Até que uma versão disponível seja selecionada para o upgrade automático, será possível fazer upgrade para ela manualmente. Às vezes uma versão é selecionada para upgrade automático de cluster e de nó durante semanas diferentes.

Logo depois que uma nova versão secundária for disponibilizada, a versão secundária mais antiga disponível não será mais compatível. Os clusters executando versões secundárias que se tornam incompatíveis são automaticamente atualizados para a próxima versão secundária.

Em uma versão secundária (como v1.14.x), os clusters podem ser atualizados automaticamente para uma nova versão de patch.

Com os canais de lançamento, é possível controlar a versão do cluster e do pool de nós com base na estabilidade de uma versão em vez de gerenciá-la diretamente.

Como configurar o momento em que os upgrades automáticos podem ocorrer

Por padrão, os upgrades automáticos podem ocorrer a qualquer momento. Eles são minimamente disruptivos especialmente para clusters regionais. Porém, algumas cargas de trabalho podem exigir um controle mais preciso. É possível configurar janelas e exclusões de manutenção para gerenciar o momento em que os upgrades automáticos podem, ou não, ocorrer.

Como fazer upgrade manualmente

É possível solicitar o upgrade manual do cluster ou dos respectivos pools de nós para uma versão compatível e disponível a qualquer momento. Os upgrades manuais ignoram as janelas e exclusões de manutenção configuradas.

Ao fazer upgrade de um cluster manualmente, a disponibilidade dele varia se ele for regional ou não:

  • Para clusters zonais e de várias zonas, o plano de controle fica disponível durante o upgrade. Na maioria das vezes, as cargas de trabalho são executadas normalmente, mas não podem ser modificadas durante o upgrade.

  • Para clusters regionais, durante o upgrade, uma réplica do plano de controle fica indisponível por vez, mas ele permanece altamente disponível.

É possível iniciar um upgrade de nó manualmente para uma versão compatível com o plano de controle.

Como alterar as configurações de upgrade para equilibrar a velocidade e a interrupção

Para controlar quantos nós o GKE tenta atualizar ao mesmo tempo, altere os parâmetros do upgrade de sobretensão em um pool de nós. Upgrades de sobretensão reduzem as interrupções nas cargas de trabalho durante a manutenção do cluster e também permitem controlar o número de nós atualizados em paralelo. Os upgrades de sobretensão também funcionam com o escalador automático de cluster para impedir alterações nos nós sendo atualizados.

Os upgrades de sobretensão são determinados por duas configurações:

max-surge-upgrade

O número de nós que podem ser adicionados ao pool de nós durante um upgrade. Aumentar max-surge-upgrade eleva o número de nós que podem ser atualizados simultaneamente. O padrão é 1. Ele pode ser definido como 0 ou maior.

max-unavailable-upgrade

O número de nós que podem estar indisponíveis simultaneamente durante um upgrade. O padrão é 0. Aumentar max-unavailable-upgrade eleva o número de nós que podem ser atualizados em paralelo.

O número de nós atualizados simultaneamente é a soma de max-surge-upgrade e max-unavailable-upgrade. O número máximo de nós atualizados simultaneamente é 20.

Por exemplo, um pool de 5 nós é criado com max-surge-upgrade definido como 2 e max-unavailable-upgrade definido como 1. Durante um upgrade do pool de nós, o GKE cria dois nós atualizados. Ele diminui, no máximo, três (a soma de max-surge-upgrade e max-unavailable-upgrade) nós atuais depois que os nós atualizados estiverem prontos. O GKE tornará, no máximo, um nó indisponível (max-unavailable-upgrade) por vez. Durante o processo de upgrade, o pool de nós incluirá entre quatro e sete nós.

É possível configurar os parâmetros de upgrade de sobretensão para pools de nós que usam os upgrades automáticos e os upgrades manuais.

A seguir