Atualizar Kubernetes e imagens de nó em vários clusters usando o Azure Kubernetes Fleet Manager
Os administradores de plataforma que gerenciam um grande número de clusters geralmente têm problemas com o preparo das atualizações de vários clusters (por exemplo, atualizando a imagem do sistema operacional do nó ou as versões do Kubernetes) de forma segura e previsível. Para enfrentar esse desafio, o Azure Kubernetes Fleet Manager (Fleet) permite orquestrar atualizações em vários clusters usando execuções de atualização.
As execuções de atualização consistem em estágios, grupos e estratégias e podem ser aplicadas manualmente para atualizações únicas ou automaticamente, para atualizações regulares contínuas usando perfis de atualização automática. Todas as atualizações são executadas (manuais ou automatizadas) pelas janelas de manutenção do cluster de membros de honra.
Este guia aborda como configurar e executar manualmente execuções de atualização.
Pré-requisitos
Leia a visão geral conceitual desse recurso, que fornece uma explicação sobre estratégias de atualização, execuções, estágios e grupos referenciados neste guia.
Você deve ter um recurso de frota com um ou mais clusters de membros. Caso contrário, siga o início rápido para criar um recurso do Fleet e ingressar em clusters do Serviço Kubernetes do Azure (AKS) como membros.
Defina as seguintes variáveis de ambiente:
export GROUP=<resource-group> export FLEET=<fleet-name> export AKS_CLUSTER_ID=<aks-cluster-resource-id>
Se você estiver seguindo as instruções da CLI do Azure neste artigo, precisará da CLI do Azure versão 2.58.0 ou posterior instalada. Para instalar ou atualizar, consulte Instalar a CLI do Azure.
Você também precisa da extensão CLI do
fleet
Azure, que pode ser instalada executando o seguinte comando:az extension add --name fleet
Execute o
az extension update
comando para atualizar para a versão mais recente da extensão lançada:az extension update --name fleet
Criando execuções de atualização
A execução da atualização oferece suporte a duas opções para a sequência de atualização do cluster:
- Um a um: Se você não se importa em controlar a sequência de atualização de cluster, fornece uma abordagem simples para atualizar todos os clusters membros da frota em sequência,
one-by-one
um de cada vez. - Controlar a sequência de clusters usando grupos e estágios de atualização: se quiser controlar a sequência de atualização de cluster, você pode estruturar clusters membros em grupos de atualização e estágios de atualização. Você pode armazenar essa sequência como um modelo na forma de uma estratégia de atualização. Você pode criar execuções de atualização posteriormente usando as estratégias de atualização em vez de definir a sequência sempre que precisar criar uma execução de atualização.
Nota
As execuções de atualização respeitam as janelas de manutenção planejadas definidas no nível do cluster AKS. Para obter mais informações, consulte Manutenção planejada em vários clusters de membros, que explica como as execuções de atualização lidam com clusters de membros configurados com janelas de manutenção planejada.
Atualizar todos os clusters um a um
No portal do Azure, navegue até o recurso do Azure Kubernetes Fleet Manager.
No menu de serviço, em Configurações, selecione Atualização de vários clusters>Criar uma execução.
Insira um nome para a execução da atualização e selecione Um por um para o tipo de atualização.
Selecione uma das seguintes opções para o escopo Atualizar:
- Versão do Kubernetes para o plano de controle e pools de nós
- Versão do Kubernetes apenas para o plano de controle do cluster
- Apenas versão da imagem do nó
Selecione uma das seguintes opções para a imagem do Nó:
- Imagem mais recente: atualiza cada cluster AKS na execução de atualização para a imagem mais recente disponível para esse cluster em sua região.
- Imagem consistente: Como é possível que uma execução de atualização tenha clusters AKS em várias regiões onde as imagens de nó disponíveis mais recentes podem ser diferentes (verifique o rastreador de liberação para obter mais informações). A execução da atualização seleciona a imagem comum mais recente em todas essas regiões para obter consistência.
Selecione Criar para criar a execução da atualização.
Atualizar clusters usando grupos e estágios
Você pode definir uma execução de atualização usando estágios de atualização para ordenar sequencialmente a aplicação de atualizações a diferentes grupos de atualização. Por exemplo, um primeiro estágio de atualização pode atualizar clusters de membros do ambiente de teste e um segundo estágio de atualização atualiza clusters de membros do ambiente de produção. Você também pode especificar um tempo de espera entre os estágios de atualização. Você pode armazenar essa sequência como um modelo na forma de uma estratégia de atualização.
No portal do Azure, navegue até o recurso do Azure Kubernetes Fleet Manager.
No menu de serviço, em Configurações, selecione Atualização de vários clusters>Criar uma execução.
Insira um nome para a execução da atualização e selecione Estágios para o tipo de sequência de atualização.
Selecione Criar estágio e insira um nome para o estágio e o tempo de espera entre os estágios.
Selecione os grupos de atualização que você deseja incluir nesta etapa. Você também pode especificar a ordem dos grupos de atualização se quiser atualizá-los em uma sequência específica. Quando tiver terminado, selecione Criar.
Selecione uma das seguintes opções para o escopo Atualizar:
- Versão do Kubernetes para o plano de controle e pools de nós
- Versão do Kubernetes apenas para o plano de controle do cluster
- Apenas versão da imagem do nó
Selecione uma das seguintes opções para a imagem do Nó:
- Imagem mais recente: atualiza cada cluster AKS na execução de atualização para a imagem mais recente disponível para esse cluster em sua região.
- Imagem consistente: Como é possível que uma execução de atualização tenha clusters AKS em várias regiões onde as imagens de nó disponíveis mais recentes podem ser diferentes (verifique o rastreador de liberação para obter mais informações). A execução da atualização seleciona a imagem comum mais recente em todas essas regiões para obter consistência.
Selecione Criar para criar a execução da atualização.
Especificar estágios e sua ordem sempre que criar uma execução de atualização pode se tornar repetitivo e complicado. As estratégias de atualização simplificam esse processo, permitindo que você armazene modelos para execuções de atualização. Para obter mais informações, consulte Criação e uso da estratégia de atualização.
No menu Atualização de vários clusters, selecione a execução da atualização e, em seguida, selecione Iniciar.
Criar uma execução de atualização usando estratégias de atualização
Criar uma execução de atualização requer que você especifique os estágios, grupos, ordem de cada vez. As estratégias de atualização simplificam esse processo, permitindo que você armazene modelos para execuções de atualização.
Nota
É possível criar várias execuções de atualização com nomes exclusivos da mesma estratégia de atualização.
Você pode criar uma estratégia de atualização usando um dos seguintes métodos:
- Crie uma nova estratégia de atualização e, em seguida, faça referência a ela ao criar uma execução de atualização.
- Salve uma estratégia de atualização ao criar uma execução de atualização usando o portal do Azure.
Salvar uma estratégia de atualização ao criar uma execução de atualização
Gerenciar uma execução de atualização
As seções a seguir explicam como gerenciar uma execução de atualização usando o portal do Azure e a CLI do Azure.
Na página Atualização de vários clusters do recurso de frota, você pode Iniciar uma execução de atualização no estado Não iniciado ou Falha:
Na página Atualização de vários clusters do recurso de frota, você pode Parar uma execução de atualização em execução no momento:
Em qualquer execução de atualização no estado Não iniciado, Falha ou Em execução , você pode selecionar qualquer Estágio e Ignorar a atualização:
Da mesma forma, você também pode ignorar a atualização no nível do grupo de atualização ou do cluster de membros.
Para obter mais informações, consulte a visão geral conceitual sobre os estados de execução de atualização e o comportamento de ignorar em execuções/estágios/grupos.
Próximos passos
Azure Kubernetes Service