Beszel — métriques d'hôtes (retiré)
Doublon de Pulse (agents sur les quatre machines) et de Prometheus/Grafana. La carte Machines de Homepage lit désormais l'API de Pulse, avec un jeton en lecture seule.
- Données conservées : volume
config_beszel-dataet/mnt/ssd/backups/beszel/(dump final, et l'ancien compose de 2025 avec sa clé SSH). - Retirés : conteneurs de penny, agents de galahad et lancelot (désactivés), port 45876 (pare-feu du cluster et de penny), client OIDC Authelia, sauvegarde restic du volume, sonde d'outillage.
La suite décrit le service tel qu'il était.
Supervision légère des trois machines : CPU, RAM, disque, température, conteneurs. Complémentaire de Grafana, qui porte les logs.
| Image | henrygd/beszel:latest + beszel-agent |
| URL | monitor.home.gabin-simond.fr |
| Auth | OIDC Authelia (two_factor) — mot de passe local désactivé |
| Agent | réseau host, port 45876 |
| Données | volume Docker config_beszel-data → /beszel_data |
| Socket | répertoire /mnt/ssd/data/beszel/beszel_socket → /beszel_socket |
| Limite mémoire | 128 Mo |
Relevé le 2026-09-25. La page annonçait one_factor : le client est en two_factor
comme les neuf autres, voir Authelia.
/mnt/ssd/data/beszel/ est un vestige, sauf son sous-répertoire beszel_socketCe répertoire contient un data.db, un auxiliary.db et un storage/ qui ne sont pas
montés dans le conteneur. Leur data.db date du 2025-04-14 et pèse 237 Ko.
La base vivante est ailleurs, dans le volume config_beszel-data : 2,8 Mo, écrite à la
minute. Seul beszel_socket/ — un répertoire, pas un fichier socket — est encore
bind-monté.
Conséquence avant tout diagnostic : ouvrir /mnt/ssd/data/beszel/data.db en croyant lire
l'état de Beszel donne une photo vieille de dix-sept mois, sans que rien ne le signale.
Demander au conteneur plutôt que deviner :
docker inspect beszel --format '{{range .Mounts}}{{.Source}} -> {{.Destination}}{{println}}{{end}}'
L'agent est en réseau host parce qu'il doit voir les interfaces et les disques
réels, pas ceux d'un bridge Docker.
La régression qui revient
meta.appURL à zéro à chaque redémarrageSymptôme : page blanche après le flux d'authentification Authelia. Le
conteneur est running et son healthcheck est vert — l'état de santé Docker ne
sert donc à rien ici.
Correctif idempotent, sans perte de données :
docker exec beszel sqlite3 /pb_data/data.db \
"UPDATE _params SET value='https://monitor.home.gabin-simond.fr' WHERE key='meta.appURL';"
docker compose restart beszel
Quatre invariants à garder en tête, parce que chacun a déjà cassé l'OIDC :
meta.appURL doit être l'URL publique complète en HTTPS ; le client OIDC doit
exister côté Authelia avec la bonne méthode d'authentification ; le conteneur doit
résoudre auth.home… (d'où le dns: 192.168.1.28) ; et le mot de passe local
reste désactivé, sinon on a deux chemins d'authentification à sécuriser.
Ce que Beszel ne couvre pas
Il mesure des hôtes. Il ne détecte ni une sauvegarde muette, ni une dérive de
configuration, ni un service qui répond 200 en servant du vide. Ces angles-là sont
couverts par homelab_monitor.sh et les règles
Grafana en espace négatif.