Dépannage
Un guide orienté symptômes pour les problèmes les plus courants. Commencez par le contrôle de santé quotidien pour localiser le problème, puis passez à la section pertinente.
Premier tri
oc get pods -n duokey -o wide # qu'est-ce qui n'est pas Running/Ready ?
oc describe pod <pod> -n duokey # événements en bas
oc logs <pod> -n duokey --tail=200 # erreurs applicatives
Pods qui ne démarrent pas
| Symptôme | Cause probable | Résolution |
|---|---|---|
Pending | Ressources insuffisantes / aucun nœud planifiable | Vérifier oc describe pod ; ajouter de la capacité ou assouplir l'anti-affinité |
CrashLoopBackOff | Erreur applicative ou secret manquant | Vérifier oc logs ; confirmer que l'ExternalSecret s'est synchronisé |
CreateContainerConfigError | Secret/ConfigMap manquant | Confirmer qu'ESO a produit le Secret (ci-dessous) |
ImagePullBackOff | Registre inaccessible / image non signée | Vérifier le registre miroir et la politique de signature d'image |
Secrets non injectés
oc get externalsecret -n duokey
oc describe externalsecret <name> -n duokey # voir les raisons SecretSyncedError
oc get secretstore -n duokey
| Cause | Résolution |
|---|---|
| Échec de l'authentification auprès du gestionnaire de secrets | Vérifier le rôle d'authentification Kubernetes et le mappage du ServiceAccount dans Vault/OpenBao/CyberArk |
| OpenBao scellé | Déverrouiller le quorum : bao operator unseal |
| Chemin / clé introuvable | Confirmer le chemin du secret dans le SecretStore et que la valeur source existe |
Voir Intégration du gestionnaire de secrets.
Problèmes de base de données
# Santé de la réplication
oc exec -n duokey <pg-primary> -- psql -c "SELECT * FROM pg_stat_replication;"
| Symptôme | Cause | Résolution |
|---|---|---|
| Latence de réplica croissante | Pression réseau / IO | Vérifier la bande passante et l'IO disque sur les réplicas |
| Pas de primaire / en lecture seule | Basculement en cours | Laisser l'opérateur promouvoir un réplica ; vérifier le quorum |
| Connexion refusée | Pare-feu / max_connections | Vérifier la règle FW (5432) et le pool de connexions |
GitOps / ArgoCD
argocd app get duokey
argocd app sync duokey # forcer la réconciliation
argocd app diff duokey # voir la dérive
| Symptôme | Cause | Résolution |
|---|---|---|
OutOfSync | Changement manuel / dérive | Resynchroniser ; enquêter sur qui a modifié l'état du cluster |
Degraded | Mauvais manifeste / pod défaillant | Inspecter la ressource qu'ArgoCD signale comme non saine |
| Impossible d'atteindre le dépôt | GitLab inaccessible | Vérifier le FW (443/22) et les identifiants |
Ingress / TLS
| Symptôme | Cause | Résolution |
|---|---|---|
| 503 depuis le routeur | Aucun pod backend sain | Corriger d'abord les pods backend |
| Erreur de certificat | Certificat expiré / incorrect | Renouveler/remplacer le certificat de la route |
| Réinitialisation de la connexion | Incompatibilité de profil TLS / de suite de chiffrement | Aligner tlsSecurityProfile et les paramètres LB/WAF (Sécurité réseau) |
| Requêtes bloquées | Faux positif du WAF | Ajuster la règle WAF ; vérifier les journaux WAF |
Performance
- Vérifiez les métriques clés pour la saturation (CPU/mémoire, connexions BD, latence).
- Confirmez que les pods sont répartis sur les nœuds/zones (anti-affinité).
- Revoyez les comptes HPA / de réplicas si le débit de requêtes dépasse la capacité.
Reprise après sinistre
Pour les procédures de restauration complète ou partielle, voir Sauvegarde et reprise après sinistre.
Collecter un bundle de support
Lors d'une escalade vers le support DuoKey, joignez :
oc adm must-gather # diagnostics à l'échelle du cluster
oc get events -n duokey --sort-by=.lastTimestamp
oc logs <failing-pod> -n duokey --previous
argocd app get duokey -o yaml
Envoyez à [email protected] avec une description du symptôme, la chronologie et tout changement récent.