Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Neste tutorial, parte três de cinco, você migra seus nós existentes para o Azure Linux com o OS Guard. Você pode migrar seus nós existentes usando um dos seguintes métodos:
- Remova os pools de nós existentes e adicione novos pools de nós do Azure Linux com o OS Guard.
- Migração de SKU do SO no local.
Se você não tiver nenhum nó existente para migrar, pule para o próximo tutorial. Em tutoriais posteriores, você aprenderá a habilitar a telemetria e o monitoramento em seus clusters e atualizar o Azure Linux com nós do OS Guard.
Considerações e limitações
Antes de começar, revise as seguintes considerações e limitações para o Azure Linux com o OS Guard (visualização):
- O Kubernetes versão 1.32.0 ou superior é necessário para o Azure Linux com OS Guard.
- Todas as imagens do Azure Linux com OS Guard têm o Federal Information Process Standard (FIPS) e o Trusted Launch habilitados.
- O Azure CLI e os modelos ARM são os únicos métodos de implementação com suporte para o Azure Linux com o OS Guard no AKS em pré-visualização. O PowerShell e o Terraform não são suportados.
- As imagens Arm64 não são suportadas com o Azure Linux com o OS Guard no AKS na versão de pré-lançamento.
-
NodeImageeNonesão os únicos canais de Atualização do SO suportados para o Azure Linux com o OS Guard no AKS.UnmanagedeSecurityPatchsão incompatíveis com o Azure Linux com o OS Guard devido ao diretório /usr imutável. - O Streaming de Artefactos não é suportado.
- O Pod Sandboxing não é suportado.
- Não há suporte para Máquinas Virtuais Confidenciais (CVMs).
- Não há suporte para máquinas virtuais (VMs) de geração 1.
Pré-requisitos
- No tutorial anterior, você criou e implantou um cluster do Azure Linux com o OS Guard. Se você não concluiu essas etapas e deseja acompanhar, consulte Tutorial 1: Criar um cluster com o Azure Linux com o OS Guard for AKS.
- Você precisa da versão mais recente da CLI do Azure. Use o
az versioncomando para localizar a versão. Para atualizar para a versão mais recente, use oaz upgradecomando.
Instalar a extensão aks-preview da CLI do Azure
Importante
Os recursos de pré-visualização do AKS estão disponíveis numa base de autosserviço e adesão voluntária. As visualizações prévias são fornecidas "como estão" e "conforme disponíveis" e são excluídas dos contratos de nível de serviço e da garantia limitada. As versões de teste do AKS são parcialmente cobertas pelo suporte ao cliente numa base de melhor esforço. Assim sendo, estas funcionalidades não se destinam ao uso em produção. Para obter mais informações, consulte os seguintes artigos de suporte:
Instale a
aks-previewextensão usando oaz extension addcomando.az extension add --name aks-previewAtualize para a versão mais recente da extensão usando o
az extension updatecomando.az extension update --name aks-preview
Registe o sinalizador de função do Azure Linux OS Guard Preview
Registe o sinalizador de funcionalidade
AzureLinuxOSGuardPreviewcom o comandoaz feature register.az feature register --namespace "Microsoft.ContainerService" --name "AzureLinuxOSGuardPreview"Leva alguns minutos para que o status mostre Registrado.
Verifique o status do registro usando o
az feature showcomando.az feature show --namespace "Microsoft.ContainerService" --name "AzureLinuxOSGuardPreview"Quando o status refletir Registrado, atualize o
Microsoft.ContainerServiceregistro do provedor de recursos usando oaz provider registercomando.az provider register --namespace "Microsoft.ContainerService"
Adicionar pools de nós do Azure Linux com o OS Guard e remover pools de nós existentes
Adicione um novo pool de nós do Azure Linux com OS Guard usando o
az aks nodepool addcomando. Este comando adiciona um novo pool de nós ao cluster com o sinalizador--mode System, tornando-o um pool de nós do sistema. Pools de nós de sistema são necessários para clusters OS Guard no Azure Linux.# 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 AzureLinuxOSGuard --node-osdisk-type Managed --enable-fips-image --enable-secure-boot --enable-vtpmExemplo de saída:
{ "id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/systempool", "name": "systempool", "provisioningState": "Succeeded" }Remova os nós existentes usando o
az aks nodepool deletecomando.az aks nodepool delete --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME
Limitações para migração in-place de SKU do SO local
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, revise 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. Ao usar o recurso de migração de SKU do sistema operacional com o Azure Linux com o OS Guard (Visualização), ele não está disponível por meio do Terraform, PowerShell ou do portal do Azure.
- O recurso de migração de SKU do sistema operacional não suporta a renomeação de conjuntos de nós existentes.
- Ubuntu, Azure Linux e Azure Linux com OS Guard são os únicos destinos de migração de SKU do sistema operacional Linux suportados.
- A Inicialização Confiável é necessária por padrão para o Azure Linux com o OS Guard. Você precisa ter o Trusted Launch habilitado para migrar para o Azure Linux com o OS Guard. Pode exigir a criação de novos clusters de nós.
- O FIPS é necessário ao habilitar o Azure Linux com o OS Guard. Se não estiver a usar uma imagem FIPS no momento, pode incluir
--enable-fipsno comando de atualização do pool de nós. - Não há suporte para máquinas virtuais (VMs) de geração 1.
- Um SKU do sistema operacional Ubuntu com
UseGPUDedicatedVHDativado não pode executar uma migração de SKU do sistema operacional. - Não há suporte para Máquinas Virtuais Confidenciais (CVMs).
- O Pod Sandboxing não é suportado.
- A migração de SKU do sistema operacional Windows não é suportada.
- A migração de SKU do sistema operativo do Mariner para o Azure Linux é suportada, mas a reversão para o Mariner não é possível.
Requisitos prévios para migração de SKU do sistema operativo no local
- Um cluster AKS existente com pelo menos um pool de nós Linux do Microsoft Azure.
- Recomendamos que você garanta que suas cargas de trabalho sejam configuradas e executadas com êxito no host de contêiner do Azure Linux with OS Guard antes de tentar usar o recurso de migração SKU do SO implantando um cluster do Azure Linux com OS Guard no dev/prod e verificando se o serviço permanece íntegro.
- Verifique se o recurso de migração está funcionando para você em teste/desenvolvimento antes de usar o processo em um cluster de produção.
- Certifique-se de que os seus pods tenham um Pod Disruption Budget suficiente para permitir que o Azure Kubernetes Service mova pods entre VMs durante a atualização.
- Você precisa da CLI do Azure versão 2.61.0 ou superior. Use o
az versioncomando para localizar a versão. Para atualizar para a versão mais recente, use oaz upgradecomando.
Executar uma migração de SKU do sistema operacional in-loco
Você pode migrar os seus pools de nós existentes do Ubuntu ou do Azure Linux para o Azure Linux com o OS Guard, alterando a SKU do sistema operacional do pool de nós, o que atualiza o cluster através do processo padrão de atualização de imagem do nó. Esse novo recurso não requer a criação de novos pools de nós; em vez disso, os pools de nós existentes recriam automaticamente a imagem.
- Azure CLI
- Modelo ARM
Migrar a SKU do SO do seu pool de nós do Azure Linux Container Host para o Azure Linux com o OS Guard
Migre a SKU do sistema operativo do seu pool de nós para o Azure Linux com o OS Guard usando o comando
az aks nodepool update. Este comando dispara uma nova imagem do pool de nós, atualizando a SKU do sistema operacional do pool de nós do Azure Linux para o Azure Linux com o OS Guard. A alteração do SKU do sistema operacional aciona 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 AzureLinuxOSGuard --node-osdisk-type Managed --enable-fips-image --enable-secure-boot --enable-vtpmExemplo de saída:
{ "id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/nodepool1", "name": "nodepool1", "osSku": "AzureLinuxOSGuard", "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 do SKU do Sistema Operativo
Quando a migração estiver concluída em seus clusters de teste, você deve verificar o seguinte para garantir uma migração bem-sucedida:
- Se o seu destino de migração for o Azure Linux com OS Guard, execute o
kubectl get nodes -o widecomando. A saída deve aparecerMicrosoft Azure Linux 3.0como sua imagem do sistema operacional e.azl3no final da sua versão do kernel. - Execute o comando
kubectl get pods -o wide -Apara verificar se todos os pods e daemonsets estão a funcionar no novo pool de nós. - Execute o
kubectl get nodes --show-labelscomando para verificar se todos os rótulos de nó no grupo de nós atualizado correspondem ao que é esperado.
Sugestão
Recomendamos monitorar a integridade do serviço por algumas semanas antes de migrar os clusters de produção.
Retroceder para o SKU anterior do sistema operativo (SO)
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, o utilizador precisa alterar o campo SKU do sistema operativo no seu modelo e reenviar a implementação, o que desencadeia outra operação de atualização e recria a imagem do pool de nós para o SKU anterior do sistema operativo.
Observação
A migração do OS SKU não suporta a reversão para o OS SKU Mariner.
- Volte para o SKU do sistema operacional anterior usando o comando
az aks nodepool update. Este comando atualiza a SKU do sistema operativo para o seu pool de nós, mudando do Azure Linux com OS Guard de volta para o Azure Linux.
Próximos passos
Neste tutorial, você migrou nós existentes para o Azure Linux com o OS Guard. No próximo tutorial, você aprenderá a habilitar a telemetria para monitorar seus clusters.