GNU/Linux >> Tutoriels Linux >  >> Linux

Comment redémarrer les pods Kubernetes

Présentation

Kubernetes est un système open source conçu pour orchestrer, mettre à l'échelle et déployer des applications conteneurisées. Si vous avez déjà travaillé avec Kubernetes, vous savez à quel point il est utile pour gérer les conteneurs.

Vous saurez également que les conteneurs ne fonctionnent pas toujours comme ils le devraient. Si une erreur apparaît, vous avez besoin d'un moyen rapide et facile de résoudre le problème.

Ce didacticiel explique comment redémarrer les pods dans Kubernetes.

Prérequis

  • Accès à une fenêtre de terminal/ligne de commande
  • Un cluster Kubernetes
  • L'outil de ligne de commande Kubernetes kubectl

Redémarrage des pods Kubernetes

Supposons que l'un des pods de votre conteneur signale une erreur. En fonction de la stratégie de redémarrage, Kubernetes peut essayer de redémarrer automatiquement le pod pour le faire fonctionner à nouveau. Cependant, cela ne résout pas toujours le problème.

Si Kubernetes n'est pas en mesure de résoudre le problème par lui-même et que vous ne trouvez pas la source de l'erreur, le redémarrage du pod est le moyen le plus rapide de faire fonctionner à nouveau votre application.

Méthode 1 :redémarrage progressif

Depuis la mise à jour 1.15, Kubernetes vous permet d'effectuer un redémarrage progressif de votre déploiement. En tant que nouvel ajout à Kubernetes, il s'agit de la méthode de redémarrage la plus rapide.

kubectl rollout restart deployment [deployment_name]

La commande mentionnée ci-dessus effectue un arrêt pas à pas et redémarre chaque conteneur de votre déploiement. Votre application sera toujours disponible car la plupart des conteneurs seront toujours en cours d'exécution.

Méthode 2 :Utilisation de variables d'environnement

Une autre méthode consiste à définir ou à modifier une variable d'environnement pour forcer les pods à redémarrer et à se synchroniser avec les modifications que vous avez apportées.

Par exemple, vous pouvez modifier la date de déploiement du conteneur :

kubectl set env deployment [deployment_name] DEPLOY_DATE="$(date)"

Dans l'exemple ci-dessus, la commande set env configure un changement dans les variables d'environnement, deployment [deployment_name] sélectionne votre déploiement, et DEPLOY_DATE="$(date)" modifie la date de déploiement et force le redémarrage du pod.

Méthode 3 :Mise à l'échelle du nombre de répliques

Enfin, vous pouvez utiliser l'scale commande pour modifier le nombre de répliques du pod défectueux. Définir ce montant sur zéro éteint essentiellement le pod :

kubectl scale deployment [deployment_name] --replicas=0

Pour redémarrer le pod, utilisez la même commande pour définir le nombre de répliques sur une valeur supérieure à zéro :

kubectl scale deployment [deployment_name] --replicas=1

Lorsque vous définissez le nombre de répliques sur zéro, Kubernetes détruit les répliques dont il n'a plus besoin.

Une fois que vous avez défini un nombre supérieur à zéro, Kubernetes crée de nouvelles répliques. Les nouvelles répliques porteront des noms différents des anciennes. Vous pouvez utiliser la commande kubectl get pods pour vérifier l'état des pods et voir quels sont les nouveaux noms.


Linux
  1. Comment redémarrer Webmin

  2. Comment redémarrer Webmin

  3. Comment supprimer des pods dans Kubernetes [Quick K8s Tips]

  4. Comment redémarrer les pods dans Kubernetes [Quick K8s Tip]

  5. Comment supprimer un service dans Kubernetes

Comment créer un déploiement dans Kubernetes

Comment créer un StatefulSet dans Kubernetes

Comment installer Kubernetes sur Ubuntu 20.04

Comment créer et gérer des pods Kubernetes sous Linux

Comment redémarrer le réseau sur Ubuntu 20.04

Comment redémarrer le réseau sur Ubuntu 22.04