Compartilhar via


Atualizar o Kubernetes e as imagens de nós em vários clusters usando o Gerenciador de Frota de Kubernetes do Azure

Os administradores de plataforma que gerenciam um grande número de clusters geralmente têm problemas para preparar as atualizações de vários clusters (por exemplo, atualizar a imagem do sistema operacional do nó ou as versões do Kubernetes) de forma segura e previsível. Para resolver esse desafio, o Gerenciador de Frota de Kubernetes do Azure (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 execuções de atualização (manuais ou automatizadas) respeitam as janelas de manutenção do cluster de membros.

Este guia aborda como configurar e executar manualmente as atualizações.

Pré-requisitos

  • Leia a visão geral conceitual desse recurso, que fornece uma explicação das estratégias de atualização, execuções, estágios e grupos mencionados neste guia.

  • Você tem um recurso de frota com um ou mais clusters membros. Caso contrário, siga o início rápido para criar um recurso de frota e adicionar clusters do AKS (Serviço de Kubernetes do Azure) como membros.

  • Defina as seguintes variáveis de ambiente:

    export GROUP=<resource-group>
    export FLEET=<fleet-name>
    
  • Se estiver seguindo as instruções da CLI do Azure neste artigo, você precisará da versão 2.58.0 ou posterior da CLI do Azure instalada. Para instalar ou atualizar, confira Instalar a CLI do Azure.

  • Você também precisará da extensão fleet da CLI do Azure, que pode ser instalada executando o seguinte comando:

    az extension add --name fleet
    

    Execute o comando az extension update para atualizar para a versão mais recente da extensão lançada:

    az extension update --name fleet
    

Definindo a sequência de atualização do cluster

A execução de atualização oferece suporte a duas opções para a sequência de atualização do cluster:

  • Um por um: Se você não se importa em controlar a sequência de atualização do cluster, o one-by-one oferece uma abordagem simples para atualizar todos os clusters membros da frota em sequência, um de cada vez.
  • Controle a sequência de clusters usando grupos e estágios de atualização: Se quiser controlar a sequência de atualização do cluster, você pode estruturar os 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.

Observação

As execuções de atualização respeitam as janelas de manutenção planejada que você definiu no nível do cluster do AKS. Para obter mais informações, consulte manutenção planejada em vários clusters membros, que explica como as execuções de atualização lidam com clusters membros configurados com janelas de manutenção planejada.

Atualizar todos os clusters individualmente

  1. No portal do Azure, navegue até o recurso do Gerenciador de Frota de Kubernetes do Azure.

  2. No menu de serviço, em Configurações, selecione Atualização de vários clusters>Criar uma execução.

  3. Insira um nome para a execução da atualização e selecione Um por um para o tipo de atualização.

    Captura de tela do painel de criação de execuções de atualização no portal do Azure, que atualizam clusters individualmente no Gerenciador de Frota de Kubernetes do Azure.

  4. Selecione uma das seguintes opções para o Escopo de atualização:

    • Versão do Kubernetes tanto para o plano de controle quanto para os pools de nós
    • Versão do Kubernetes somente para o plano de controle do cluster
    • Somente versão da imagem do nó
  5. 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 para uma execução de atualização ter clusters AKS em várias regiões em que as imagens de nó disponíveis mais recentes podem ser diferentes (confira o rastreador de versões para obter mais informações). A execução de atualização escolhe a imagem comum mais recente em todas essas regiões para obter consistência.

    Captura de tela do painel da criação de execuções de atualização no portal do Azure. A seção de escopo de atualização é mostrada.

  6. Selecione Criar para criar a execução de 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 poderá atualizar os clusters membros do ambiente de teste e, a seguir, um segundo estágio de atualização irá atualizar os clusters membros do ambiente de produção. Você também pode especificar quais aprovações são necessárias antes ou depois de cada estágio e 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.

  1. No portal do Azure, navegue até o recurso do Gerenciador de Frota de Kubernetes do Azure.

  2. No menu de serviço, em Configurações, selecione Atualização de vários clusters>Criar uma execução.

  3. Insira um nome para a execução da atualização e selecione Estágios para o tipo de sequência de atualização.

    Captura de tela da página do portal do Azure para escolher o modo de estágios na execução da atualização.

  4. Selecione Criar estágio e, em seguida, insira um nome para o estágio e defina aprovações e um tempo de espera entre os estágios, se desejado.

    Captura de tela da página de criação de em estágio e definição do tempo de espera no portal do Azure.

  5. Selecione os grupos de atualização que você deseja incluir neste estágio. Também é possível especificar a ordem dos grupos de atualização se quiser atualizá-los em uma sequência específica. Quando terminar, selecione Criar.

    Captura de tela da página de criação de estágio no portal do Azure, mostrando a seleção dos grupos de atualizações.

  6. Selecione uma das seguintes opções para o Escopo de atualização:

    • Versão do Kubernetes tanto para o plano de controle quanto para os pools de nós
    • Versão do Kubernetes somente para o plano de controle do cluster
    • Somente versão da imagem do nó
  7. 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 para uma execução de atualização ter clusters AKS em várias regiões em que as imagens de nó disponíveis mais recentes podem ser diferentes (confira o rastreador de versões para obter mais informações). A execução de atualização escolhe a imagem comum mais recente em todas essas regiões para obter consistência.

    Captura de tela do painel da criação de execuções de atualização no portal do Azure. A seção de escopo de atualização é mostrada.

  8. Selecione Criar para criar a execução de atualização.

    Especificar os estágios e sua ordem sempre que for preciso criar uma execução de atualização pode se tornar repetitivo e trabalhoso. As estratégias de atualização simplificam essa tarefa permitindo que você armazene modelos para as execuções da atualização. Para obter mais informações, confira criação e uso de estratégias de atualização.

  9. No menu Atualização de vários clusters, selecione a execução de atualização e, em seguida, Iniciar.

Criar uma execução da atualização usando estratégias de atualização

A criação de uma execução de atualização exige que você especifique os estágios, os grupos, a ordem a cada vez. As estratégias de atualização simplificam essa tarefa permitindo que você armazene modelos para as execuções da atualização.

Observação

É possível criar várias execuções da 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:

Salvar uma estratégia de atualização ao criar uma execução da atualização

  • Salve uma estratégia de atualização ao criar uma execução de atualização no portal do Azure:

    Uma captura de tela do portal do Azure mostrando os estágios de execução de atualização sendo salvas como uma estratégia 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 que esteja no estado Não iniciada ou Com falha:

    Captura de tela do portal do Azure mostrando como iniciar uma execução de atualização no estado

  • Na página Atualização de vários clusters do recurso de frota, você pode Parar uma execução de atualização atualmente Em execução ou Pendente:

    Captura de tela do portal do Azure mostrando como interromper uma execução de atualização no estado

  • Em qualquer execução de atualização nos estados Não iniciada, Com falha ou Em execução, você pode selecionar qualquer Estágio e Ignorar a atualização:

    Captura de tela do portal do Azure mostrando como ignorar a atualização em um estágio específico de uma execução de atualização.

    Da mesma forma, você também pode ignorar a atualização no nível de grupo de atualizações ou de cluster de membros.

Automatizar execuções de atualização usando perfis de atualização automática

Os perfis de atualização automática são usados para executar automaticamente as atualizações nos clusters membros quando novas versões do Kubernetes ou da imagem do nó são disponibilizadas.

Para obter mais informações sobre a configuração de perfis de atualização automática, consulte automatizar atualizações do Kubernetes e imagens de nó usando o Gerenciador de Frota de Kubernetes do Azure.

Gerar uma execução de atualização por meio de um perfil de atualização automática

Quando você cria um perfil de atualização automática, seus clusters podem estar em várias versões do Kubernetes ou da imagem do nó. Dependendo do canal de atualização automática selecionado, pode levar algum tempo até que uma nova versão dispare a atualização automática para criar e executar uma execução de atualização.

A atualização automática permite que você gere uma nova execução de atualização a qualquer momento usando o az fleet autoupgradeprofile generate-update-run comando. A execução de atualização resultante baseia-se na versão atual da imagem do Kubernetes ou do nó publicada pelo AKS.

az fleet autoupgradeprofile generate-update-run \ 
    --resource-group $GROUP \ 
    --fleet-name $FLEET \ 
    --name $AUTOUPGRADEPROFILE

A execução de atualização gerada não é iniciada automaticamente, permitindo que você a examine. Se você estiver satisfeito com a execução de atualização gerada, poderá iniciá-la e gerenciá-la seguindo as etapas para gerenciar uma execução de atualização.

Próximas etapas