automation-suite
2023.10
false
UiPath logo, featuring letters U and I in white
Guide d'installation d'Automation Suite sur Linux
Last updated 11 nov. 2024

Démarrage et arrêt d’un nœud

Cette page explique le comportement de démarrage et d’arrêt manuels et automatiques d’Automation Suite.

Comportement de démarrage

Le rke2-service commence et est suivi de node-drainer et de node-uncordon. node-drainer n’effectue aucune action au démarrage et renvoie simplement la confirmation que le service est actif.
Le node-uncordon ne s’exécute qu’une fois et démarre /opt/node-drain.sh nodestart, ce qui déboucle le nœud. Dans le cadre de la procédure de drainage qui a lieu à l’arrêt, cela boucle le nœud, ce qui le rend non planifiable. Cet état persiste au démarrage du service rke2. Le nœud doit donc être débouclé après le redémarrage de rke2-service.

Démarrage manuel

Le service démarre automatiquement avec Automation Suite. Cependant, si rke2-service était arrêté manuellement, vous devez redémarrer le service en exécutant les commandes suivantes :
  1. Démarrez le processus Kubernetes en cours d’exécution sur le nœud du serveur :
    systemctl start rke2-serversystemctl start rke2-server
  2. Démarrez le processus Kubernetes en cours d’exécution sur le nœud du serveur :
    systemctl start rke2-agentsystemctl start rke2-agent
  3. Une fois le service rke2 démarré, débouclez le nœud pour vous assurer que Kubernetes peut désormais planifier des charges de travail sur ce nœud :
    systemctl restart node-uncordonsystemctl restart node-uncordon
  4. Une fois le nœud démarré, vous devez vider le nœud :
    systemctl start node-drain.servicesystemctl start node-drain.service
    Important :

    Si vous ignorez l’étape 4, le service Kubelet pourrait s’arrêter de manière incorrecte si le système est redémarré.

Comportement d'arrêt

Lors de l’arrêt, systemd arrête les services dans l’ordre dans lequel ils ont été démarrés. Étant donné que le service node-drain comporte la directive After=rke2-server.service ou After=rke2-agent.service, il exécute sa séquence d’arrêt avant l’arrêt de rke2-service. Cela signifie que dans un système correctement configuré, l’arrêt correct du nœud est une opération sécurisée.

Redémarrage manuel

Si vous prévoyez d’arrêter le service RKE2 et de redémarrer la machine, procédez comme suit :

  1. Pour vous assurer que le cluster est sain lors de l'exécution de l'activité de maintenance du nœud, vous devez drainer les charges de travail exécutées sur ce nœud vers d’autres nœuds. Pour drainer le nœud, exécutez la commande suivante :
    systemctl stop node-drain.servicesystemctl stop node-drain.service
  2. Arrêtez le processus Kubernetes en cours d’exécution sur le nœud du serveur :
    systemctl stop rke2-serversystemctl stop rke2-server
  3. Arrêtez le processus Kubernetes en cours d’exécution sur le nœud d’agent :
    systemctl stop rke2-agentsystemctl stop rke2-agent
  4. Forcez l’arrêt des services rke2 et containerd et tous les processus enfants :

    rke2-killall.shrke2-killall.sh
    Il devrait déjà se trouver dans le chemin d’accès, mais, il se trouve dans /bin/rke2-killall.sh.

Fichiers créés lors de l’installation

  1. Les fichiers d’unité suivants sont créés lors de l’installation :
    • rke2-server.service (serveur uniquement). Démarre le rke2-server, ce qui démarre le nœud de serveur.
    • rke2-agent.service (agent uniquement). Démarre le rke2-agent, ce qui démarre le nœud d’agent.
    • node-drain.service. Utilisé au moment de l’arrêt. Exécuté avant d’arrêter rke2-agent ou rke2-server et effectue un drainage. A un délai d’attente de 300 secondes.
    • node-uncordon.service. Utilisé au démarrage pour déboucler un nœud.
    • var-lib-kubelet.mount. Généré automatiquement par le générateur fstab.
    • var-lib-rancher-rke2-server-db.mount. Généré automatiquement par le générateur fstab.
    • var-lib-rancher.mount. Généré automatiquement par le générateur fstab.
Il n’y a pas de dépendances solides entre les fichiers d’unités. En revanche, node-drain et node-uncordon ont la directive After=rke2-server.service ou After=rke2-agent.service. Cela signifie que ces services démarreront après rke2-service.

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Uipath Logo White
Confiance et sécurité
© 2005-2024 UiPath Tous droits réservés.