Runbook — Un serveur SaaS (.41-.44) est down¶
Sévérité : Majeure (plusieurs tenants impactés)
Temps de résolution attendu : 15 à 45 min
Symptômes¶
- Alerte Discord "Serveur 192.168.1.4X hors ligne"
- Plusieurs tenants
*.cavalmanager.frrépondent 502/504 - Uptime Kuma affiche le serveur en rouge
Diagnostic¶
```bash
1. Ping¶
ping -c 3 192.168.1.41
2. SSH¶
ssh -p 2222 lcdm@192.168.1.41 'uptime; df -h /; free -m'
3. Si SSH refusé, accès Proxmox console (NoVNC) :¶
https://192.168.1.10:8006 → VM → Console¶
```
Causes fréquentes¶
Cas 1 : Disque plein¶
```bash ssh -p 2222 lcdm@192.168.1.41 'df -h'
Si / >95% : nettoyer docker¶
sudo docker system prune -af --volumes sudo journalctl --vacuum-time=7d ```
Cas 2 : RAM saturée (OOM kill)¶
bash
sudo dmesg | grep -i "killed process"
sudo docker ps -a --filter status=exited
sudo docker compose -f /opt/cavalmanager/clients/{slug}/docker-compose.yml up -d
Cas 3 : VM bloquée (kernel panic, etc.)¶
- Proxmox UI → VM → Stop → Start
- Attendre 2 min, re-tester
Cas 4 : SSH socket cassé (piège Ubuntu 24.04)¶
- Cf.
change-ssh-port.sh v4—ssh.socketoverridesshd_config
Après résolution¶
```bash
Vérifier tous les containers tenants up¶
ssh -p 2222 lcdm@192.168.1.41 'sudo docker ps --filter name=cm- --format "{{.Names}} {{.Status}}"'
Notifier Discord manuellement¶
curl -X POST $DISCORD_WEBHOOK -d '{"content":"✅ .41 restauré, tenants OK"}' ```
Post-mortem¶
Documenter dans /docs/incidents/YYYY-MM-DD-serveur-X-down.md :
- Heure début / fin
- Cause racine
- Action prise
- Action préventive à mettre en place