Partilhar via


Solucionar problemas de versões desatualizadas do kernel em imagens de nó do Host de Contêiner do Azure Linux

Importante

Desde 30 de novembro de 2025, o Azure Kubernetes Service (AKS) já não suporta nem fornece atualizações de segurança para o Azure Linux 2.0. A imagem da máquina virtual do Azure Linux 2.0 está congelada na versão 202512.06.0. A partir de 31 de março de 2026, as imagens dos nós serão removidas e não conseguirá escalar os seus pools de nós. Migre para uma versão Azure Linux suportada atualizando os seus pools de nós para uma versão Kubernetes suportada ou migrando para o osSku AzureLinux3. Para obter mais informações, consulte Aposentadoria: pools de nós do Azure Linux 2.0 no AKS.

Durante a migração ou ao adicionar novos pools de nós ao seu Host de Contêiner Linux do Azure, você pode encontrar problemas com versões desatualizadas do kernel. O Serviço Kubernetes do Azure (AKS) disponibiliza uma nova imagem de nó do Azure Linux todos os meses. Essa imagem é utilizada para novos conjuntos de nós e serve como imagem inicial para o escalonamento. No entanto, pools de nós mais antigos podem não estar atualizando suas versões do kernel conforme o esperado.

Para verificar a KERNEL-VERSION dos seus conjuntos de nós, execute:

kubectl get nodes -o wide

Em seguida, compare a versão de kernel dos seus conjuntos de nós com o kernel mais recentemente publicado no packages.microsoft.com.

Sintoma

Um sintoma comum desse problema inclui:

  • Os nós do Azure Linux não estão usando a versão mais recente do kernel.

Causas

Há duas causas principais para esse problema:

  1. As atualizações automáticas de imagens de nós não foram ativadas quando o pool de nós foi criado.
  2. A imagem base que o AKS usa para iniciar clusters está duas semanas atrasada em relação às versões mais recentes do kernel devido ao seu procedimento de implementação.

Solução

Você pode habilitar atualizações automáticas usando as Ações do GitHub e reinicializar os nós para resolver esse problema.

Habilitar atualizações automáticas de imagem de nó usando a CLI do Azure

Para habilitar atualizações automáticas de imagem de nó ao implantar um cluster a partir da ferramenta de linha de comando az-cli, adicione o parâmetro --auto-upgrade-channel node-image.

az aks create --name testAzureLinuxCluster --resource-group testAzureLinuxResourceGroup --os-sku AzureLinux --auto-upgrade-channel node-image

Habilite atualizações automáticas de imagem de nó usando modelos ARM

Para habilitar atualizações automáticas da imagem do nó ao usar um modelo ARM, pode definir a propriedade upgradeChannel como autoUpgradeProfilenode-image.

    autoUpgradeProfile: {
      upgradeChannel: 'node-image'
    }

Reinicialize os nós

Ao atualizar a versão do kernel, você precisa reiniciar o nó para usar a nova versão do kernel. Recomendamos que o utilizador configure o kured daemonset. Kured para monitorar seus nós para o /var/run/reboot-required arquivo, drenar a carga de trabalho e reinicializar os nós.

Solução alternativa: Atualizações manuais

Se precisar de uma solução rápida, você pode atualizar manualmente a imagem do nó em um cluster usando az aks nodepool upgrade. Isso pode ser feito executando

az aks nodepool upgrade \
    --resource-group testAzureLinuxResourceGroup \
    --cluster-name testAzureLinuxCluster \
    --name myAzureLinuxNodepool \
    --node-image-only

Próximos passos

Se as etapas anteriores não resolverem o problema, abra um tíquete de suporte.