Tous les produits
Search
Centre de documentation

Container Service for Kubernetes:Enable node auto repair

Dernière mise à jour :Sep 12, 2026

ACK surveille et répare automatiquement les nœuds défectueux au sein des pools de nœuds gérés, réduisant ainsi la charge opérationnelle manuelle. Toutefois, la réparation automatique ne résout pas tous les scénarios de panne. Certaines pannes complexes peuvent encore nécessiter une intervention manuelle.

Pour les pools de nœuds LINGJUN, consultez Activer la réparation automatique des nœuds .

Fonctionnement

Le processus de réparation automatique comprend :

Flux d'exécution

Voici le workflow, de la détection de la panne à la notification puis à la réparation automatique :

image
  1. Diagnostic et détection des pannes

Le module complémentaire ack-node-problem-detector (NPD) vérifie la présence d'anomalies sur les nœuds. Si un nœud reste dans un état défectueux pendant une période spécifiée, ACK l'identifie comme étant en panne.

  1. Notification de la panne

ACK génère une condition de nœud (Node Condition) et un événement Kubernetes. Configurez des alertes dans le centre d'événements (Event Center) pour recevoir des notifications.

  1. (Pour les scénarios GPU dédiés) Isolation de la panne

Après la détection d'une anomalie GPU, ACK isole la carte GPU défectueuse.

Consultez Détection des exceptions GPU et isolation automatique.
  1. Réparation automatique des anomalies système et des composants Kubernetes

ACK détermine s'il faut lancer une tâche de réparation en fonction de la condition du nœud et d'autres informations. Exécutez kubectl describe node pour vérifier le champ condition.

Lorsqu'une anomalie système ou liée à un composant Kubernetes persiste au-delà du seuil configuré, ACK exécute une tâche de réparation :

  1. ACK répare les composants système et Kubernetes défectueux, par exemple en redémarrant kubelet ou le runtime de conteneurs.

  2. Si vous sélectionnez Enable self-healing for system and node components only (node reboots allowed), ACK effectue les étapes supplémentaires suivantes si les réparations initiales échouent :

    1. ACK définit automatiquement le nœud défectueux comme non planifiable (unschedulable).

    2. ACK draine le nœud. Le délai d'expiration du drainage est de 10 minutes ou la valeur maximale de TerminationGracePeriodSeconds de tous les Pods à évacuer, selon la valeur la plus élevée, dans la limite de 30 minutes.

      ACK évacue les Pods vers d'autres nœuds conformément au Pod Disruption Budget (PDB). Pour garantir la haute disponibilité, utilisez des déploiements multi-réplicas, répartissez les charges de travail sur plusieurs nœuds et configurez des PDB pour les services critiques.

      Si le drainage échoue, ACK poursuit la réparation.

    3. ACK redémarre le nœud.

    4. Une fois le nœud récupéré, ACK le rétablit en état planifiable (schedulable).

      Les nœuds déjà définis comme non planifiables avant la réparation automatique restent non planifiables une fois la réparation terminée.

Dans les clusters comportant plusieurs pools de nœuds, la réparation automatique s'exécute un pool de nœuds à la fois.

Conditions de nœud déclenchant la réparation automatique

Condition de nœud

Description

Niveau de risque

Seuil

Action de réparation

KubeletNotReady(KubeletHung)

Le kubelet ne répond pas, ce qui entraîne le passage du nœud à l'état NotReady.

Élevé

180 s

  1. Redémarrez le kubelet.

  2. Si l'option Enable self-healing for system and node components only (node reboots allowed) est activée, redémarrez l'instance ECS.

KubeletNotReady(PLEG)

La vérification de l'intégrité du générateur d'événements du cycle de vie des Pods (PLEG) a échoué, ce qui entraîne le signalement de l'état NotReady par le nœud.

Moyen

180 s

  1. Redémarrez containerd ou Docker.

  2. Redémarrez le kubelet.

  3. Si l'option Enable self-healing for system and node components only (node reboots allowed) est activée, redémarrez l'instance ECS.

KubeletNotReady(SandboxError)

PodSandbox introuvable, empêchant le démarrage correct du kubelet.

Élevé

180 s

  1. Supprimez le conteneur sandbox correspondant.

  2. Redémarrez le kubelet.

RuntimeOffline

Le runtime de conteneurs (containerd ou Docker) s'est arrêté, rendant le nœud indisponible.

Élevé

90 s

  1. Redémarrez containerd ou Docker.

  2. Si l'option Enable self-healing for system and node components only (node reboots allowed) est activée, redémarrez l'instance ECS.

NTPProblem

Le service de synchronisation horaire (ntpd ou chronyd) ne fonctionne pas correctement.

Élevé

10 s

Redémarrez ntpd ou chronyd.

SystemdOffline

Un état systemd anormal empêche le démarrage ou la destruction des conteneurs.

Élevé

90 s

Si l'option Enable self-healing for system and node components only (node reboots allowed) est activée, redémarrez l'instance ECS.

ReadonlyFilesystem

Le système de fichiers du nœud est passé en lecture seule.

Élevé

90 s

Si l'option Enable self-healing for system and node components only (node reboots allowed) est activée, redémarrez l'instance ECS.

Statut du nœud pendant la réparation automatique

  • Pendant la réparation, le statut du nœud est Repairing.

  • Si la panne est résolue après la réparation, le nœud revient à un état normal.

  • Si la panne persiste après la réparation, le statut du nœud devient Recovery failed.

    Un nœud dont le statut est Recovery failed ne déclenche pas une autre réparation automatique tant que la panne n'est pas résolue.

Remarques d'utilisation

  • Cette fonctionnalité nécessite le centre d'événements (Event Center) pour les alertes et ack-node-problem-detector (NPD) pour la détection des anomalies. Consultez Surveillance des événements.

  • Disponible uniquement dans les clusters gérés ACK pour les pools de nœuds gérés.

  • Les fonctionnalités suivantes font l'objet d'un déploiement progressif. Pour demander l'accès, soumettez un ticket.

    • Réparation automatique des anomalies d'instances de nœuds : soumise à une liste d'autorisation.

    • Ensembles de règles d'alerte : après avoir activé la réparation automatique des nœuds, activez la gestion des alertes et activez les ensembles Cluster Node Auto Repair Alert Rule Set et GPU monitoring and alert rules pour recevoir des alertes d'anomalies. Ces ensembles de règles font l'objet d'une version progressive.

      Consultez Gestion des alertes Container Service .
    • Version NPD : la réparation automatique des anomalies d'instances de nœuds nécessite ack-node-problem-detector (NPD) version 1.2.26 ou ultérieure, actuellement en déploiement progressif.

Activer la réparation automatique des nœuds

Activez la réparation automatique des nœuds lors de la création d'un pool de nœuds ou pour un pool de nœuds géré existant.

Nouveau pool de nœuds

  1. Sur la page Clusters ACK, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur Nodes > Node Pools.

  2. Cliquez sur Create Node Pool. Dans la section Configure Managed Node Pool, sélectionnez Managed Node Pool, activez la réparation automatique des nœuds, configurez la politique de redémarrage des nœuds pour la réparation des composants et créez le pool de nœuds.

    Pour plus de détails sur la configuration, consultez Créer et gérer un pool de nœuds. Pour les considérations relatives au redémarrage des nœuds, voir ci-dessous.

Pool de nœuds existant

  1. Sur la page Clusters ACK, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur Nodes > Node Pools.

  2. Dans la liste des pools de nœuds, localisez le pool de nœuds cible. Dans la colonne Actions, cliquez sur l'icône image et sélectionnez Enable Managed Node Pool (pour un pool de nœuds standard) ou Configure Managed Node Pool (pour un pool de nœuds géré). Définissez le mode Configure Managed Node Pool sur Managed Node Pool et activez la réparation automatique des nœuds.

    Pour plus de détails sur la configuration, consultez Créer et gérer un pool de nœuds. Pour les considérations relatives au redémarrage des nœuds, voir ci-dessous.

Événements de réparation automatique

ACK écrit les événements de réparation automatique dans le Event Center. Sur la page des détails du cluster, choisissez Operations > Event Center. Sous l'onglet Node Events, consultez les enregistrements de réparation automatique. Abonnez-vous à ces événements via Surveillance des événements.

Événement

Niveau

Description

NodeRepairStart

Normal

La réparation automatique des nœuds a commencé.

NodeRepairAction

Normal

Une action de réparation a été effectuée, telle que le redémarrage du kubelet.

NodeRepairSucceed

Normal

La réparation automatique des nœuds a réussi.

NodeRepairFailed

Avertissement

Échec de la réparation. Consultez la FAQ.

NodeRepairIgnore

Normal

Ignoré car l'instance ECS n'était pas en cours d'exécution.

FAQ

Échec de la réparation automatique

La réparation automatique ne peut pas résoudre toutes les pannes. Si la réparation échoue ou si la panne persiste, ACK définit le statut du nœud sur Recovery failed.

Si la réparation automatique d'un nœud échoue, les réparations ultérieures pour ce pool de nœuds sont suspendues jusqu'à ce que la panne soit résolue. Vous pouvez soumettre un ticket pour obtenir de l'aide.

Références