Mon pod est en erreur
Votre pod apparaît dans kubectl get pods, mais son statut n’est pas Running
(ou il redémarre en boucle). Cette page couvre les trois cas les plus fréquents,
avec les causes propres à Kontainers qu’un habitué d’un autre cluster ne
devinerait pas.
Commencez toujours par :
kubectl describe pod <pod> -n <namespace>kubectl logs <pod> -n <namespace> --previousCrashLoopBackOff
Le conteneur démarre puis s’arrête, en boucle. Kubernetes espace les
redémarrages (back-off), d’où des périodes d’attente croissantes.
C’est presque toujours votre application qui se termine : configuration manquante,
dépendance injoignable, erreur au boot. Les logs de l’exécution précédente
(--previous) contiennent la vraie erreur.
Vérifiez notamment :
- une variable d’environnement ou un secret manquant (ConfigMaps et Secrets) ;
- une dépendance pas encore prête (base de données…) — ajoutez une
readinessProbeet laissez le pod redémarrer, ou uninitContainerd’attente ; - une dépendance dans un namespace d’une autre organisation : bloquée par design (isolation réseau).
ImagePullBackOff
L’image ne peut pas être téléchargée.
kubectl describe pod <pod> -n <namespace> | grep -A3 "Failed"Causes classiques : nom d’image mal orthographié, tag inexistant, registre privé sans pull secret.
OOMKilled
Le conteneur a dépassé sa mémoire allouée et a été tué. Repérable dans
describe pod :
Last State: Terminated Reason: OOMKilledDimensionnez la request sur le pic réel de consommation, visible dans votre monitoring ou via :
kubectl top pods -n <namespace>Ce n’est pas l’un de ces trois cas ?
- Aucun pod ne se crée du tout → Checklist de diagnostic ;
- Le pod tourne mais l’application est injoignable → Checklist : site injoignable ;
- Toujours bloqué → contactez le support avec
la sortie de
kubectl describe podet les logs.