Atualizar automaticamente um cluster do AKS (Serviço de Kubernetes do Azure)
Parte do ciclo de vida do cluster do AKS envolve a execução de atualizações periódicas para a última versão do Kubernetes. É importante aplicar as últimas versões de segurança ou atualizar para obter os recursos mais recentes. Antes de aprender sobre a atualização automática, certifique-se de que você reconheceu os Fundamentos de atualização de cluster do AKS.
Observação
Qualquer operação de atualização, seja ela manual ou automática, atualiza a versão da imagem do nó se ela ainda não estiver na versão mais recente. A versão mais recente depende de uma versão completa do AKS e pode ser determinada visitando o rastreador de versões do AKS.
A atualização automática primeiro atualiza o painel de controle e, em seguida, atualiza os pools de agentes um a um.
Por que usar a atualização automática do cluster
A atualização automática do cluster fornece um mecanismo do tipo “configure uma vez e esqueça”, que gera benefícios tangíveis de tempo e custo operacional. Você não precisa parar as suas cargas de trabalho, reimplantar as suas cargas de trabalho ou criar um novo cluster do AKS. Ao habilitar a atualização automática, você pode garantir que seus clusters estejam atualizados e não percam os recursos ou patches mais recentes do AKS e do upstream Kubernetes.
O AKS segue uma janela controle de versão rigorosa em termos de capacidade de suporte. Com os canais de atualização automática corretamente selecionados, você pode evitar que os clusters usem uma versão sem suporte. Para obter mais informações sobre a janela de suporte do AKS, consulte as Versões menores de alias.
Atualizações automáticas especificadas pelo cliente versus atualizações automáticas iniciadas pelo AKS
Você pode especificar as especificidades da atualização automática do cluster usando as seguintes diretrizes. As atualizações ocorrem com base em sua cadência especificada e são recomendadas para permanecer nas versões compatíveis do Kubernetes.
O AKS também inicia atualizações automáticas para clusters sem suporte. Quando um cluster em uma versão n-3 (em que n é a versão secundária mais recente do AKS em GA com suporte) está prestes a cair para n-4, o AKS atualiza automaticamente o cluster para n-2 para permanecer em uma política de suporte do AKS. A atualização automática de um cluster com suporte da plataforma para uma versão com suporte é habilitada por padrão. Os pools de nós interrompidos são atualizados durante uma operação de atualização automática. A atualização é aplicada aos nós quando o pool de nós é iniciado. Para minimizar interrupções, configure janelas de manutenção.
Limitações da atualização automática do cluster
Se você estiver usando a atualização automática do cluster, não poderá mais atualizar o painel de controle primeiro e depois atualizar os pools de nós individuais. A atualização automática do cluster sempre atualizará o painel de controle e os pools de nós juntos. Não é possível atualizar apenas o plano de controle. A execução do comando az aks upgrade --control-plane-only
gera o seguinte erro: NotAllAgentPoolOrchestratorVersionSpecifiedAndUnchanged: Using managed cluster api, all Agent pools' OrchestratorVersion must be all specified or all unspecified. If all specified, they must be stay unchanged or the same with control plane.
Se estiver usando o canal de upgrade automático de cluster node-image
(legado e que não deve ser usado) ou o canal de upgrade automático de imagem de nó NodeImage
, as atualizações autônomas do Linux serão desabilitadas por padrão.
Canais de atualização automática do cluster
As atualizações concluídas automaticamente funcionam da mesma forma que as atualizações manuais. O canal de atualização automática selecionado determina o momento das atualizações. Ao fazer alterações na atualização automática, aguarde 24 horas para que as alterações entrem em vigor. A atualização automática de um cluster segue o mesmo processo que a atualização manual. Para obter mais informações, confira Atualizar um cluster do AKS.
Os seguintes canais de atualização estão disponíveis:
Canal | Ação | Exemplo |
---|---|---|
none |
desabilita atualizações automáticas e mantém o cluster na versão atual do Kubernetes. | Configuração padrão se não for alterado. |
patch |
atualiza automaticamente o cluster para a última versão de patch com suporte quando ela estiver disponível, mantendo a versão secundária a mesma. | Por exemplo, se um cluster executa a versão 1.17.7 e as versões 1.17.9, 1.18.4, 1.18.6 e 1.19.1 estiverem disponíveis, o cluster atualiza para 1.17.9. |
stable |
atualiza automaticamente o cluster para a última versão de patch com suporte na versão secundária N-1, em que N é a última versão secundária com suporte. | Por exemplo, se um cluster executa a versão 1.17.7 e as versões 1.17.9, 1.18.4, 1.18.6 e 1.19.1 estiverem disponíveis, o cluster atualiza para 1.18.6. |
rapid |
atualiza automaticamente o cluster para a última versão de patch com suporte na última versão secundária com suporte. | Nos casos em que a versão do Kubernetes do cluster é uma versão secundária N-2, em que N é a versão secundária com suporte mais recente, o cluster primeiro atualiza para a versão de patch com suporte mais recente na versão secundária N-1. Por exemplo, se um cluster executa a versão 1.17.7 e as versões 1.17.9, 1.18.4, 1.18.6 e 1.19.1 estiverem disponíveis, o cluster primeiro atualiza para 1.18.6, e depois atualiza para 1.19.1. |
node-image (herdado) |
atualiza automaticamente a imagem do nó para a versão mais recente disponível. | A Microsoft fornece patches e novas imagens para nós de imagem com frequência (geralmente semanal), mas os nós em execução não obterão as novas imagens, a menos que você faça uma atualização da imagem do nó. Ligar o canal node-image atualizará automaticamente as imagens do nó sempre que uma nova versão estiver disponível. Se você usar esse canal, as [atualizações autônomas] do Linux serão desabilitadas por padrão. As atualizações de imagem do nó funcionarão em versões de patch que foram preteridas, desde que ainda haja suporte para a versão secundária do Kubernetes. Esse canal não é mais recomendado e está planejado para ser preterido no futuro. Para obter uma opção que possa atualizar automaticamente as imagens de nó, consulte o canal NodeImage em atualização automática de imagem de nó. |
Observação
Tenha em mente as seguintes informações ao usar a atualização automática do cluster:
A atualização automática do cluster só atualiza para as versões de disponibilidade geral do Kubernetes, e não atualiza as versões preliminares.
Com o AKS, você pode criar um cluster sem especificar a versão exata do patch. Quando você cria um cluster sem designar um patch, o cluster executa o patch da GA mais recente da versão secundária. Para saber mais, consulte Janela de suporte do AKS.
A atualização automática exige que a versão de cluster do Kubernetes esteja dentro da janela de suporte do AKS, mesmo se estiver usando o canal
node-image
.Se você estiver usando a versão preliminar da API
11-02-preview
ou posterior e selecionar o canal de atualização automática de clusternode-image
, o canal de atualização automática da imagem do nó será automaticamente definido comoNodeImage
.Cada cluster só pode ser associado a um único canal de atualização automática. Isto ocorre porque o canal especificado determina a versão do Kubernetes que é executada no cluster.
Se o seu cluster não tiver um canal de atualização automática e você habilitá-lo para LTS (Suporte de Longo Prazo), ele será padronizado para um canal de atualização automática
patch
.
Usar a atualização automática do cluster com um novo cluster do AKS
Defina o canal de atualização automática ao criar um novo cluster usando o comando
az aks create
e o parâmetroauto-upgrade-channel
.az aks create --resource-group myResourceGroup --name myAKSCluster --auto-upgrade-channel stable --generate-ssh-keys
Usar a atualização automática do cluster com um cluster AKS existente
Defina o canal de atualização automática em um cluster existente usando o comando
az aks update
com o parâmetroauto-upgrade-channel
.az aks update --resource-group myResourceGroup --name myAKSCluster --auto-upgrade-channel stable
Use a atualização automática com a Manutenção Planejada
Se estiver usando a Manutenção Planejada e a atualização automática do cluster, sua atualização será iniciada durante a janela de manutenção especificada.
Observação
Para garantir a funcionalidade adequada, use uma janela de manutenção de quatro horas ou mais.
Para obter mais informações sobre como definir uma janela de manutenção com Manutenção Planeada, consulte Utilizar a Manutenção Planejada para agendar janelas de manutenção para o seu cluster dos Serviço de Kubernetes do Azure (AKS).
Práticas recomendadas para atualização automática do cluster
Use as seguintes práticas recomendada para maximizar o sucesso ao usar a atualização automática:
- Para garantir que seu cluster esteja sempre em uma versão compatível (ou seja, dentro da regra N-2), escolha os canais
stable
ourapid
. - Se você estiver interessado em obter os patches mais recentes o mais rápido possível, use o canal
patch
. O canalnode-image
é uma boa opção se você quiser que seus pools de agentes sempre executem as imagens de nó mais recentes. - Para atualizar automaticamente as imagens do nó ao usar um canal de atualização de cluster diferente, considere usar o canal de atualização automática da imagem do nó
NodeImage
. - Siga as melhores práticas do operador.
- Siga as melhores práticas do PDB.
- Para obter informações sobre a solução de problemas de atualização, consulte a Documentação de solução de problemas do AKS.
Para obter uma discussão detalhada sobre as melhores práticas de atualização e outras considerações, veja Diretrizes de patch e atualização do AKS.
Azure Kubernetes Service