Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Neste tutorial, parte três de cinco, você migrará seus nós existentes para o Linux do Azure. Você pode migrar seus nós existentes do Ubuntu para o Linux do Azure usando um dos seguintes métodos:
- Remova os pools de nós existentes e adicione novos pools de nós do Linux do Azure.
- Migração in-loco do SKU do sistema operacional.
Se você não tiver nenhum nó existente para migrar para o Linux do Azure, vá para o próximo tutorial. Em tutoriais posteriores, você aprenderá a habilitar a telemetria e o monitoramento em seus clusters e atualizar os nós do Linux do Azure.
Importante
A partir de 30 de novembro de 2025, o AKS não oferecerá mais suporte ou fornecerá atualizações de segurança para o Azure Linux 2.0. A partir de 31 de março de 2026, as imagens dos nós serão removidas e, consequentemente, você não poderá dimensionar os pools de nós. Migre para uma versão do Azure Linux com suporte atualizando os pools de nós para uma versão do Kubernetes com suporte ou migrando para osSku AzureLinux3. Para obter mais informações, consulte [Desativação] Pools de nós do Azure Linux 2.0 no AKS.
Pré-requisitos
Nos tutoriais anteriores, você criou e implantou um Host de Contêiner do Linux do Azure para clusters do AKS. Para concluir este tutorial, você precisa adicionar um pool de nós do Linux do Azure ao cluster existente. Se você ainda não tiver feito isso, comece com o Tutorial 2: Adicionar um pool de nós do Linux do Azure ao cluster existente do AKS.
Observação
Ao adicionar um novo pool de nós do Azure Linux, você precisa adicionar pelo menos um como
--mode System. Caso contrário, o AKS não permitirá que você exclua o pool de nós existente.Você precisa instalar a versão mais recente da CLI do Azure. Execute
az --versionpara encontrar a versão. Se você precisa instalar ou atualizar, consulte Instalar a CLI do Azure.
Adicionar pools de nós do Linux do Azure e remover pools de nós existentes
- Adicione um novo pool de nós do Linux do Azure usando o comando
az aks nodepool add. Esse comando adiciona um novo pool de nós ao cluster com o sinalizador--mode System, o que o torna um pool de nós do sistema. Os pools de nós do sistema são necessários para clusters do Linux do Azure.
# Declare environment variables with a random suffix for uniqueness
export RANDOM_SUFFIX=$(openssl rand -hex 3)
export NODE_POOL_NAME="np$RANDOM_SUFFIX"
az aks nodepool add --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME --mode System --os-sku AzureLinux
Resultados:
{
"id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/systempool",
"name": "systempool",
"provisioningState": "Succeeded"
}
- Remova os nós existentes usando o comando
az aks nodepool delete.
Migração in-loco do SKU do sistema operacional
Agora você pode migrar seus pools de nós do Ubuntu existentes para o Linux do Azure alterando o SKU do sistema operacional do pool de nós, o que aciona o processo padrão de atualização da imagem do nó no cluster. Esse novo recurso não requer a criação de novos pools de nós.
Limitações
Há várias configurações que podem bloquear a solicitação de migração de SKU do sistema operacional. Para garantir uma migração bem-sucedida, examine as seguintes diretrizes e limitações:
- O recurso de migração de SKU do sistema operacional não está disponível por meio do PowerShell ou do portal do Azure.
- O recurso de migração de SKU do sistema operacional não pode renomear pools de nós existentes.
- O Ubuntu, o Azure Linux e o Linux do Azure com o OS Guard são os únicos destinos de migração de SKU do sistema operacional Linux com suporte.
- O início confiável é exigido por padrão para o Linux do Azure com o OS Guard, os clientes precisam ter a inicialização confiável habilitada para poder migrar para o Azure Linux com o OS Guard. Como o Início Confiável não pode ser habilitado em pools de nós existentes, isso pode exigir a criação de um novo pool de nós.
- Os clientes que usam tamanhos de VM somente Geração 1 não poderão migrar para o Azure Linux com proteção de SO, pois não há nenhuma imagem da Geração 1 com suporte. Eles precisarão criar novos pools de nós com um tamanho de VM que dê suporte à geração 2.
- Um SKU do sistema operacional Ubuntu com
UseGPUDedicatedVHDhabilitado não pode executar uma migração de SKU do sistema operacional. - Um SKU do sistema operacional Ubuntu com CVM 20.04 habilitado não pode executar uma migração de SKU do sistema operacional.
- Os pools de nós com o Kata habilitado não podem executar uma migração de SKU do sistema operacional.
- Não há suporte para a migração do SKU do sistema operacional Windows.
- Há suporte para a migração de SKU do SO do Mariner para o Linux do Azure, mas não há suporte para a reversão para o Mariner.
Pré-requisitos
- Um cluster do AKS existente com pelo menos um pool de nós do Ubuntu.
- É recomendável garantir que suas cargas de trabalho configurem e executem com sucesso no host de contêiner do Linux do Azure antes de tentar usar o recurso de migração de SKU do sistema operacional implantando um cluster do Linux do Azure no desenvolvimento/produção e verificando se o serviço permanece íntegro.
- Verifique se o recurso de migração está funcionando para você no teste/desenvolvimento antes de usar o processo em um cluster de produção.
- Verifique se os pods têm Orçamento de Interrupção de Pod suficiente para permitir que o AKS mova os pods entre as VMs durante a atualização.
- Você precisa da versão 2.61.0 ou posterior da CLI do Azure. Execute
az --versionpara encontrar a versão. Se você precisa instalar ou atualizar, consulte Instalar a CLI do Azure. - Se você estiver usando o Terraform, deverá ter v3.111.0 ou superior do módulo Terraform do AzureRM.
Migrar o SKU do sistema operacional do pool de nós do Ubuntu
- Migre o SKU do sistema operacional do pool de nós para o Linux do Azure usando o comando
az aks nodepool update. Esse comando atualiza o SKU do sistema operacional para o pool de nós do Ubuntu para o Linux do Azure. A alteração do SKU do sistema operacional dispara uma operação de atualização imediata, que leva vários minutos para ser concluída.
az aks nodepool update --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME --os-sku AzureLinux
Resultados:
{
"id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/nodepool1",
"name": "nodepool1",
"osSku": "AzureLinux",
"provisioningState": "Succeeded"
}
Observação
Se você tiver problemas durante a migração do SKU do sistema operacional, poderá reverter para o SKU do sistema operacional anterior.
Verificar a migração de SKU do sistema operacional
Depois que a migração for concluída em seus clusters de teste, você deverá verificar o seguinte para garantir uma migração bem-sucedida:
- Se o destino de migração for o Linux do Azure, execute o comando
kubectl get nodes -o wide. A saída deve mostrarMicrosoft Azure Linux 3.0como a imagem do sistema operacional e.azl3no final da versão do kernel. - Execute o comando
kubectl get pods -o wide -Apara verificar se todos os pods e daemonsets estão em execução no novo pool de nós. - Execute o comando
kubectl get nodes --show-labelspara verificar se todos os rótulos de nó no pool de nós atualizado são o que você espera.
Dica
É recomendável monitorar a integridade do serviço por algumas semanas antes de migrar os clusters de produção.
Executar a migração de SKU do sistema operacional nos clusters de produção
- Atualize os modelos existentes para definir
OSSKU=AzureLinux. Nos modelos do ARM, use"OSSKU": "AzureLinux"na seçãoagentPoolProfile. No Bicep, useosSku: "AzureLinux"na seçãoagentPoolProfile. Por fim, para o Terraform, você usaos_sku = "AzureLinux"na seçãodefault_node_pool. Verifique seapiVersionestá definido como2023-07-01ou posterior. - Reimplante o modelo do ARM, Bicep ou Terraform para que o cluster aplique a nova configuração
OSSKU. Durante a implantação, o cluster se comporta como se estivesse fazendo uma atualização de imagem de nó. O cluster aumenta a capacidade e reinicia os nós existentes um a um na imagem mais recente do AKS do novo SKU do sistema operacional.
Reversão
Se você tiver problemas durante a migração do SKU do sistema operacional, poderá reverter para o SKU do sistema operacional anterior. Para fazer isso, você precisa alterar o campo SKU do sistema operacional em seu modelo e reenviar a implantação, o que dispara outra operação de atualização e restaura o pool de nós para seu SKU anterior do sistema operacional.
Observação
A migração de SKU do SO não dá suporte à reversão para o SKU Mariner do SO.
- Reverta para o SKU do sistema operacional anterior usando o comando
az aks nodepool update. Esse comando atualiza o SKU do sistema operacional para o pool de nós do Linux do Azure de volta para o Ubuntu.
Próximas etapas
Neste tutorial, você migrou nós existentes para o Linux do Azure usando um dos seguintes métodos:
- Remova os pools de nós existentes e adicione novos pools de nós do Linux do Azure.
- Migração in-loco do SKU do sistema operacional.
No próximo tutorial, você aprenderá a habilitar a telemetria para monitorar os clusters.