Comment gérer Kubernetes Crashloopbackoff

Comment gérer Kubernetes Crashloopbackoff

Vous avez sans aucun doute rencontré le terrible crashloopbackoff si vous avez utilisé Kubernetes (K8S). Plusieurs formes d'erreurs de configuration K8S peuvent entraîner un crashloopbackoff. Un crashloopbackoff fait référence à une pod qui démarre, s'écrase et redémarre à nouveau. Un crashloopbackoff se produit lorsqu'un programme dans votre conteneur échoue. Le programme dans votre conteneur pourrait se terminer pour plusieurs raisons. Peut-être que vous essayez d'exécuter votre serveur qui ne chargera pas le fichier de configuration connexe. Vous essayez peut-être de déployer une application qui se bloque en raison de l'incapacité de se connecter à un autre service. Kubernetes redémarrera à plusieurs reprises le pod dans le but de récupérer des problèmes de crashloopbackoff, et bien qu'il y ait quelque chose de profondément mal avec votre programme qu'une simple réinitialisation ne le réparera pas. Presque tout le temps, vous devrez corriger votre image ou l'application que vous essayez d'exécuter.

Causes de l'état de crashloopbackoff à Kubernetes

Crashloopbackoff est terrible car il s'agit d'un conteneur qui contient un grand nombre de défauts qui sont tous soigneusement masqués sous la même condition d'erreur. Il pourrait y avoir beaucoup de secrets de Kubernetes mis en place dans le cluster. La limite de mémoire actuelle définie dans le pod de l'observateur secret est insuffisante pour gérer les secrets de Kubernetes. En raison d'un manque de mémoire, Kubernetes a détruit le pod. La vérification des pods dans l'état Crashloopbackoff est comparable à l'examen des pods à l'état en attente. Pourtant, cela peut prendre un peu de compréhension supplémentaire de la charge de travail des conteneurs que vous créez.

Mais pour l'instant, nous allons vous aider à gérer l'État de Kubernetes Crashloopbackoff.

Conditions préalables

Pour gérer Crashloopbackoff à Kubernetes, nous avons utilisé l'Ubuntu 20.04 Système d'exploitation. Cependant, vous pouvez également utiliser n'importe quelle autre distribution Linux préférée. De plus, pour exécuter le service Kubernetes sur le système d'exploitation Linux, vous devez avoir installé un cluster Minikube dessus.

Méthode pour afficher et gérer l'état de crashloopbackoff

Il est maintenant temps de lancer le terminal de votre distribution Linux. Cette tâche est la plus simple. Vous pouvez l'ouvrir en visitant la section d'application et en le recherchant ou en utilisant la clé de raccourci la plus courante de "Ctrl + Alt + T". En enregistrant l'une de ces méthodes, vous pourrez lancer le terminal de la ligne de commande. Après avoir lancé le terminal de la ligne de commande, vous devez démarrer le cluster Minikube; Vous devez taper la commande ci-dessous dans le shell de ligne de commande à ce but particulier. Appuyez sur la touche «Entrée» pour son exécution.

$ minikube start

Vous obtiendrez la sortie identique à l'image ci-dessus. Il affichera la version du cluster Minikube. Vous pouvez également le mettre à jour en fonction de vos exigences. Tout ce processus prendra quelques minutes, alors veuillez ne pas quitter le terminal; Sinon, le processus sera terminé et vous devrez le recommencer. Vous devez maintenant afficher toutes les espaces de noms à l'aide de la commande kubectl. Alors, exécutez la commande apposée pour le vérifier.

$ kubectl obtenir un espace de noms

Dans la sortie de cette commande, vous pouvez vérifier l'état, l'âge et les noms de l'espace de noms. Maintenant, l'étape la plus importante est ici qui est essentielle pour le guide. Vous devez vérifier l'état des pods qui peuvent être soit «en cours d'exécution», «échoué» ou «crashloopbackoff». Pour afficher leur statut, vous devez exécuter la commande ci-dessous dans le terminal.

$ kubectl obtenir des pods

Vous pouvez afficher l'état du pod à partir de l'exécution de la commande si vous avez besoin d'informations complètes sur le pod en utilisant la commande annexe suivante.

$ kubectl décrire le pod

La sortie de cette commande a une grande importance. Il vous montrera la principale raison de la «Crashloopbackoff» et des pods défaillants. En analysant la raison, vous pouvez facilement le réparer. Supposons que nous ayons un pod avec un statut de «crashloopbackoff», vous pouvez obtenir ses informations en exécutant cette commande. Cela vous aidera à le réparer.

$ kubectl get pods -Namespace nginx-crashloop

La sortie affichera les informations complètes concernant ce pod.

Conclusion

Dans ce tutoriel, nous avons essayé d'expliquer le concept de base de Kubernetes «Crashloopbackoff». De plus, nous avons développé comment voir son statut et comment le réparer. J'espère maintenant que vous pouvez facilement gérer «Crashloopbackoff» à Kubernetes.