Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Dans cet article, vous allez apprendre à migrer vos pools de nœuds AKS existants vers Azure ACL (Container Linux) pour AKS. Vous pouvez migrer vos nœuds existants à l’aide de l’une des méthodes suivantes :
- Migration sur place référence SKU du système d’exploitation : changez la référence SKU du système d’exploitation de vos pools de nœuds existants par ACL, ce qui réinitialise automatiquement les nœuds.
- Supprimez les pools de nœuds existants et ajoutez de nouveaux pools de nœuds ACL : créez des pools de nœuds ACL, déplacez vos charges de travail et supprimez les anciens pools de nœuds.
Important
Si vous utilisez Azure Container Linux (ACL) sur AKS, vérifiez les considérations et limitations suivantes :
- ACL est disponible de manière générale à partir d’AKS v1.34.
- ACL nécessite Trusted Launch avec démarrage sécurisé et vTPM. Les variantes de lancement non approuvées ne sont pas disponibles.
- ACL sur Arm64 nécessite des SKU basés sur Cobalt (v6) pour assurer la compatibilité avec Trusted Launch.
-
NodeImageetNonesont les seuls canaux de mise à niveau de système d’exploitation pris en charge.UnmanagedetSecurityPatchsont incompatibles avec la liste de contrôle d’accès en raison du répertoire immuable/usr. - Le streaming d’artéfacts n’est pas pris en charge.
- Le sandboxing des pods n’est pas pris en charge.
- Les machines virtuelles confidentielles ne sont pas prises en charge.
- Les machines virtuelles de génération 1 ne sont pas prises en charge.
Limitations de la migration sur place du SKU du système d’exploitation
Outre les limitations générales des ACL, les éléments suivants s’appliquent spécifiquement à la migration sur place de la référence SKU du système d’exploitation :
- La fonctionnalité de migration de la référence SKU du système d’exploitation n’est pas disponible via PowerShell ou le portail Azure.
- La fonctionnalité de migration des SKU du système d’exploitation ne prend pas en charge le renommage des pools de nœuds existants.
- Les pools de nœuds avec
UseGPUDedicatedVHDactivé ne peuvent pas effectuer une migration de référence SKU du système d’exploitation. - La migration de référence SKU du système d’exploitation Windows n’est pas prise en charge.
Prerequisites
- Un cluster AKS existant avec au moins un pool de nœuds Linux.
- Azure CLI version 2.86.0 ou ultérieure. Exécutez
az --versionpour trouver la version. Si vous devez installer ou mettre à niveau, voir Installer Azure CLI. - Nous vous recommandons de vérifier que vos charges de travail fonctionnent correctement sur ACL en déployant un cluster ACL dans un environnement de développement ou de préproduction avant de migrer vos clusters de production.
- Vérifiez que la fonctionnalité de migration fonctionne pour vous en test/développement avant d’utiliser le processus sur un cluster de production.
- Assurez-vous que vos pods ont suffisamment de budget d’interruption de pod (PDB) pour permettre à AKS de déplacer des pods entre des machines virtuelles pendant la migration.
Ajouter des pools de nœuds ACL et supprimer des pools de nœuds existants
Ajoutez un nouveau pool de nœuds ACL à l’aide de la
az aks nodepool addcommande. Utilisez--mode Systemce paramètre pour que le nouveau pool puisse servir de pool d’agents système, ce qui vous permet de supprimer le pool de nœuds d’origine à l’étape suivante.az aks nodepool add \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <new-node-pool-name> \ --os-sku AzureContainerLinux \ --mode System \ --node-count 3Exemple de sortie :
{ "id": "/subscriptions/xxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/myNewNodePool", "name": "myNewNodePool", "osSku": "AzureContainerLinux", "provisioningState": "Succeeded" }Supprimez votre pool de nœuds existant à l’aide de la
az aks nodepool deletecommande.az aks nodepool delete \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <existing-node-pool-name>
Migration de la référence SKU du système d’exploitation sur place
Vous pouvez migrer vos pools de nœuds Linux existants vers ACL en modifiant la référence SKU du système d’exploitation du pool de nœuds, ce qui fait passer le cluster par le processus standard de mise à niveau de l’image des nœuds. Cette méthode ne nécessite pas de création de pools de nœuds ; Au lieu de cela, vos pools de nœuds existants sont automatiquement réimageés.
Effectuer une migration de référence SKU de système d’exploitation sur place
Important
ACL requiert Trusted Launch. Vous devez inclure --enable-secure-boot et --enable-vtpm lors de la migration vers la référence SKU du système d’exploitation AzureContainerLinux . La taille de machine virtuelle (VM) de votre pool de nœuds doit aussi être compatible avec Trusted Launch. Si la taille actuelle de votre machine virtuelle ne la prend pas en charge, vous devez redimensionner ou recréer le pool de nœuds avec une taille de machine virtuelle prise en charge avant de migrer.
Migrez le SKU du système d’exploitation de votre pool de nœuds vers ACL à l’aide de la commande az aks nodepool update. Cette commande déclenche une réimage de votre pool de nœuds, en mettant à jour la référence SKU du système d’exploitation vers AzureContainerLinux. La modification de la référence SKU du système d’exploitation déclenche une opération de mise à niveau immédiate, ce qui prend plusieurs minutes.
az aks nodepool update \
--resource-group <resource-group> \
--cluster-name <cluster-name> \
--name <existing-node-pool-name> \
--os-sku AzureContainerLinux \
--enable-secure-boot \
--enable-vtpm
Exemple de sortie :
{
"id": "/subscriptions/xxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/nodepool1",
"name": "nodepool1",
"osSku": "AzureContainerLinux",
"provisioningState": "Succeeded"
}
Note
Si vous rencontrez des problèmes lors de la migration de la référence SKU du système d’exploitation, vous pouvez restaurer votre référence SKU de système d’exploitation précédente.
Vérifier la migration de la référence SKU de système d’exploitation
Conseil / Astuce
Nous vous recommandons de surveiller l’intégrité de votre service pendant quelques semaines avant de migrer vos clusters de production.
Une fois la migration terminée sur vos clusters de test, nous vous recommandons de surveiller le cluster et les charges de travail pendant quelques semaines pour confirmer que tout s’exécute comme prévu avant de migrer des clusters de production. Utilisez les commandes suivantes pour vérifier la migration et surveiller votre cluster :
Vérifiez que les nouveaux nœuds utilisent ACL à l’aide de la commande
kubectl get nodes -o wide. La sortie doit afficher l’image du système d’exploitation ACL.kubectl get nodes -o wideVérifiez que tous vos pods et vos DaemonSets s’exécutent sur le nouveau pool de nœuds à l’aide de la commande
kubectl get pods -o wide -A.kubectl get pods -o wide -AVérifiez que tous les libellés de nœud de votre pool de nœuds mis à niveau correspondent à vos attentes à l’aide de la commande
kubectl get nodes --show-labels.kubectl get nodes --show-labelsVérifiez la version de l’image de nœud à l’aide de la
az aks nodepool listcommande.az aks nodepool list \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --query '[].{name: name, osSku: osSku, nodeImageVersion: nodeImageVersion}'Exemple de sortie :
[ { "name": "myNodePool", "nodeImageVersion": "AKSAzureContainerLinux-202606.01.0", "osSku": "AzureContainerLinux" } ]
Revenir à votre référence SKU de système d’exploitation précédente
Si vous rencontrez des problèmes lors de la migration de la référence SKU du système d’exploitation, vous pouvez restaurer votre référence SKU de système d’exploitation précédente. Pour ce faire, remplacez le champ de référence SKU du système d’exploitation par votre valeur précédente et soumettez à nouveau le déploiement, ce qui déclenche une autre opération de mise à niveau et réimage le pool de nœuds à sa référence SKU de système d’exploitation précédente. Si vous revenez d’ACL à votre SKU de système d’exploitation précédent, le pool de nœuds utilise par défaut la version d’image Trusted Launch (Gen2), à moins que Trusted Launch ne soit explicitement désactivé.
Restaurez votre référence SKU de système d’exploitation précédente à l’aide de la commande az aks nodepool update. Cet exemple revient de ACL à Azure Linux :
az aks nodepool update \
--resource-group <resource-group> \
--cluster-name <cluster-name> \
--name <existing-node-pool-name> \
--os-sku AzureLinux
Contenu connexe
Pour plus d’informations sur ACL, consultez Qu’est-ce qu’Azure Container Linux (ACL) pour Azure Kubernetes Service (AKS) ?