Tutoriel : Mettre à niveau les nœuds de l’hôte de conteneur Azure Linux

L’hôte de conteneur Azure Linux propose deux mécanismes de mise à jour : au moyen d’images de nœud Azure Linux mises à jour et au moyen de mises à jour automatiques des packages.

Dans le cadre du cycle de vie de l’application et du cluster, nous vous recommandons de tenir vos clusters à jour et sécurisés en activant les mises à niveau pour votre cluster. Vous pouvez activer les mises à niveau automatiques des images des nœuds afin de garantir que vos clusters utilisent la dernière image Azure Linux Container Host lors de la mise à l’échelle. Vous pouvez également mettre à niveau manuellement l’image de nœud sur un cluster.

Dans ce tutoriel, partie cinq sur cinq, vous apprendrez à :

  • Mettez à niveau manuellement l’image de nœud sur un cluster.
  • Mettre à niveau automatiquement un cluster hôte de conteneur Azure Linux.
  • Déployer Kured dans un cluster hôte de conteneur Azure Linux.

Les commandes de ce didacticiel utilisent les variables d’environnement définies dans Tutorial 1 : Créez un cluster avec l’hôte de conteneur Linux Azure pour AKS et Tutorial 2 : ajoutez un pool de nœuds Linux Azure à votre cluster AKS existant.

Note

Toute opération de mise à niveau, effectuée manuellement ou automatiquement, met à niveau la version de l’image de nœud si elle n’est pas la plus récente. La dernière version est subordonnée à une version complète d’AKS, et peut être déterminée en visitant le suivi des mises en production AKS.

Prerequisites

  • Dans les tutoriels précédents, vous avez créé et déployé un cluster hôte de conteneur Azure Linux. Pour suivre ce tutoriel, vous avez besoin d’un cluster existant. Si vous n’avez pas effectué cette étape et que vous souhaitez suivre la procédure, commencez par le Tutoriel 1 : Créer un cluster avec l’hôte de conteneur Azure Linux pour AKS.
  • Vous devez disposer de la dernière version d’Azure CLI. Recherchez la version en utilisant la commande az --version. Si vous devez installer ou mettre à niveau, voir Installer Azure CLI.

Mettre à niveau manuellement votre cluster

Mettez à niveau manuellement l’image de nœud sur un cluster à l’aide de la az aks nodepool upgrade commande.

az aks nodepool upgrade --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --name $NODE_POOL_NAME

Mettre à niveau automatiquement votre cluster

Les mises à niveau automatiques sont fonctionnellement identiques aux mises à niveau manuelles. Le canal sélectionné détermine la planification des mises à niveau. Lorsque vous apportez des modifications à la mise à niveau automatique, prévoyez 24 heures pour que les modifications prennent effet.

Définissez le canal de mise à niveau automatique sur un cluster existant à l’aide de la commande az aks update avec le paramètre --auto-upgrade-channel. L’exemple suivant configure le canal de mise à niveau automatique à stable pour un cluster existant :

az aks update --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --auto-upgrade-channel stable

Exemple de sortie :

{
  "id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup",
  "location": "WestUS2",
  "name": "testAzureLinuxCluster",
  "properties": {
    "autoUpgradeChannel": "stable",
    "provisioningState": "Succeeded"
  }
}

Pour plus d’informations sur les canaux de mise à niveau, consultez Utilisation de la mise à niveau automatique de cluster.

Activer les mises à niveau automatiques des packages

Vous pouvez également activer les mises à niveau automatiques des packages. Si les mises à niveau automatiques des packages sont activées, le service système automatique dnf s’exécute quotidiennement et installe tous les packages mis à jour qui ont été publiés.

Définissez le canal de mise à niveau du système d’exploitation du nœud sur un cluster existant en utilisant la commande az aks update avec le paramètre --node-os-upgrade-channel. L’exemple suivant définit le canal de mise à niveau du système d’exploitation des nœuds sur Unmanaged pour un cluster existant :

az aks update --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --node-os-upgrade-channel Unmanaged

Exemple de sortie :

{
  "id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup",
  "location": "WestUS2",
  "name": "testAzureLinuxCluster",
  "properties": {
    "nodeOsUpgradeChannel": "Unmanaged",
    "provisioningState": "Succeeded"
  }
}

Activer un démon de redémarrage automatique

Pour protéger vos clusters, les mises à jour de sécurité sont automatiquement appliquées aux nœuds Azure Linux. Ces mises à jour incluent les correctifs de sécurité du système d’exploitation, les mises à jour du noyau et les mises à niveau de package. Certaines de ces mises à jour nécessitent un redémarrage du nœud pour terminer le processus. AKS ne redémarre pas automatiquement ces nœuds pour terminer le processus de mise à jour.

Nous vous recommandons d’activer un démon de redémarrage automatique, tel que Kured, pour que votre cluster puisse redémarrer les nœuds qui ont fait l’objet de mises à jour du noyau. Pour déployer le DaemonSet Kured dans un cluster hôte du conteneur Azure Linux, consultez Déployer Kured dans un cluster AKS.

Nettoyer les ressources

Comme ce tutoriel est la dernière partie de la série, vous pouvez supprimer votre cluster hôte de conteneur Linux Azure. Les nœuds Kubernetes s'exécutent sur Azure machines virtuelles et continuent à entraîner des frais même si vous n'utilisez pas le cluster.

Supprimez le groupe de ressources Azure et toutes les ressources associées à l’aide de la commande az group delete.

az group delete --name $RESOURCE_GROUP --yes --no-wait

Étapes suivantes

Dans ce tutoriel, vous avez mis à niveau votre cluster hôte de conteneur Azure Linux.

Pour plus d’informations, consultez la vue d’ensemble de l’hôte de conteneur Azure Linux.