Monitoring
Monitoring : ce que l'on surveille et comment
Métriques système, GPU, inférence et applicatives ; pile proposée (node_exporter, amd-smi, llama-server --metrics, Prometheus, Grafana, Uptime Kuma) et alternatives simples ; seuils d'alerte et tableau de bord type.
Hypothèse#monitoring#securite#sauvegarde#llama-cpp#amdPublié le 16 sept. 2026Mis à jour le 16 sept. 2026Vérifié le 16 sept. 2026À revérifier le 15 déc. 2026
L'essentiel
- Le monitoring sert trois objectifs : détecter les pannes avant les utilisateurs, détecter les incidents de sécurité, et mesurer ce que la Box fait réellement (utilisateurs, débit en tokens, temps de réponse) pour dimensionner les offres.
- Pile proposée : node_exporter + exportateur GPU AMD +
llama-server --metricscollectés par Prometheus, visualisés dans Grafana, alertes par Alertmanager ; Uptime Kuma pour la disponibilité vue de l'extérieur du LAN. - Alternative simple pour un prestataire seul : Netdata ou Cockpit, sans Prometheus.
- Les seuils d'alerte sont des hypothèses de départ, à ajuster après un mois de fonctionnement.
- Aucun de ces outils n'est publié sur le LAN : accès via VPN seulement.
Ce que l'on surveille
| Famille | Métrique | Pourquoi | Source de la donnée |
|---|---|---|---|
| CPU | Charge, utilisation par cœur, throttling | Saturation lors du parsing ou de l'OCR | node_exporter |
| GPU | Utilisation, fréquence, puissance, mémoire allouée (VRAM / GTT) | Le LLM vit sur le GPU ; une mémoire pleine = erreurs de chargement | amd-smi / rocm-smi / amdgpu_top ; exportateur Prometheus à choisir |
| Mémoire unifiée | Utilisation totale, part GPU, swap | Sur la machine candidate, mémoire partagée entre CPU et GPU : le dépassement provoque swap ou plantage | node_exporter + exportateur GPU |
| Températures | CPU/APU, SSD, ventilateur | Machine compacte dans un bureau : le throttling fait chuter le débit ; fiabilité | node_exporter (hwmon), smartctl |
| Stockage | Espace libre par volume, état du miroir, SMART, erreurs Btrfs | Disque plein = base corrompue ; disque dégradé = risque de perte | node_exporter, mdadm/btrfs, smartmontools |
| Réseau | Débit entrant/sortant, connexions sortantes inhabituelles, état du VPN | Détection d'exfiltration ou de télémétrie ; panne d'accès distant | node_exporter, pare-feu |
| Inférence | Requêtes, tokens de prompt traités, tokens générés, débit moyen (tokens/s), slots occupés, file d'attente | Capacité réelle multi-utilisateurs ; dimensionnement | llama-server --metrics |
| Temps de réponse | TTFT, durée totale par requête, p50/p95 | Expérience utilisateur ; détection de dégradation | reverse proxy + métriques du runtime |
| Erreurs | 5xx du reverse proxy, échecs du runtime, erreurs d'indexation | Panne partielle invisible pour l'admin | Journaux, reverse proxy |
| Utilisateurs | Connexions, échecs d'authentification, sessions actives, utilisateurs distincts par jour | Sécurité (force brute) et usage réel (q-001) | IdP, interface |
| Services | Chaque container « up », redémarrages, version | Service tombé | Docker, Uptime Kuma |
| Sauvegardes | Dernière sauvegarde réussie, durée, taille, résultat du check | La sauvegarde échoue silencieusement sinon | Script de sauvegarde vers Prometheus (textfile) |
| Sécurité | Connexions SSH, sessions admin ouvertes, ouverture du VPN prestataire, modifications de configuration | Traçabilité | journald, scripts |
| Temps | Dérive NTP | Journaux exploitables | node_exporter |
Outils
| Outil | Rôle | Faits vérifiés | Statut |
|---|---|---|---|
| node_exporter | Métriques système (cpu, meminfo, hwmon, filesystem, diskstats, netdev par défaut), port 9100, Apache 2.0 | 2 | Retenu |
| amd-smi / rocm-smi / amdgpu_top | Lecture de l'état du GPU AMD (utilisation, mémoire, température, puissance) | Outils AMD et communautaire ; l'exportateur Prometheus associé reste à choisir (à sourcer) | À tester sur la machine |
llama-server --metrics | Endpoint /metrics Prometheus : tokens de prompt traités, débit moyen, tokens générés ; /health (503 pendant le chargement, 200 prêt) ; /slots pour l'état des slots | 3 | Retenu si llama-server est le runtime |
| Prometheus | Collecte en mode pull, stockage de séries temporelles, Alertmanager pour les alertes, Apache 2.0 | 1 | Retenu |
| Grafana | Tableaux de bord | Non re-vérifié ici | Retenu |
| Alertmanager | Routage des alertes (mail, messagerie) | Composant Prometheus 1 | Retenu |
| Uptime Kuma | Supervision de disponibilité (HTTP, TCP, DNS, ping, Docker…), 90+ canaux de notification, MIT | 4 | Retenu, hébergé chez le prestataire pour voir la Box « de l'extérieur » via VPN |
| Netdata | Supervision tout-en-un, installation en une commande, alertes intégrées | Non vérifié ici | Alternative simple |
| Cockpit | Interface web d'administration Linux (services, journaux, stockage, mises à jour) | Non vérifié ici | Alternative simple pour le prestataire |
Seuils d'alerte proposés
Tous ces seuils sont des hypothèses de départ Hypothèse.
| Alerte | Seuil orange | Seuil rouge | Action attendue |
|---|---|---|---|
| Espace disque (volume données) | 80 % | 90 % | Nettoyage, extension, revue de la rétention |
| Espace disque (système) | 75 % | 85 % | Purge des images et journaux |
| Miroir SSD | — | Dégradé | Intervention sous 5 jours |
| SMART | Attribut en pré-échec | Erreurs non corrigées | Remplacement |
| Température APU | 85 °C soutenue 10 min | 95 °C | Vérifier ventilation, poussière ; seuils à confirmer avec les données constructeur (à sourcer) |
| Température SSD | 65 °C | 75 °C | Idem |
| Mémoire libre (hors GPU) | moins de 8 Go | moins de 4 Go ou swap actif | Revoir la répartition mémoire GPU/CPU |
| Service down | 1 échec | 3 échecs consécutifs (1 min) | Redémarrage automatique puis intervention |
| Sauvegarde | Absente depuis 26 h | Absente depuis 50 h ou check en erreur | Intervention |
| Échecs d'authentification | 10 en 10 min sur un compte | 50 en 10 min | Blocage, vérification |
| Connexion SSH hors fenêtre de maintenance | Toute connexion | — | Vérification avec la main courante |
| VPN prestataire ouvert | Plus de 8 h | Plus de 24 h | Fermeture, vérification |
| Temps de réponse p95 (prompt court) | 2 fois la référence mesurée | 4 fois | Vérifier charge, throttling |
| File d'attente llama-server | Requêtes en attente plus de 30 s | Plus de 2 min | Capacité insuffisante : voir Multi-utilisateurs |
| Dérive NTP | 1 s | 10 s | Vérifier la synchronisation |
| Erreurs 5xx | 1 % des requêtes | 5 % | Journaux |
Tableau de bord type
| Zone | Panneaux |
|---|---|
| En-tête | État global (vert/orange/rouge), dernière sauvegarde, version des composants, uptime |
| Utilisation | Utilisateurs actifs (jour, semaine), requêtes par heure, tokens générés par jour, dossiers les plus consultés (agrégé, sans contenu) |
| Performance | TTFT p50/p95, tokens/s moyen, slots occupés, file d'attente |
| Ressources | CPU, GPU, mémoire unifiée (part GPU/CPU), températures, puissance |
| Stockage | Espace par volume, état du miroir, SMART, croissance de l'index |
| Sécurité | Échecs d'authentification, sessions admin, ouvertures VPN prestataire, connexions sortantes par destination |
| Sauvegardes | Historique 30 jours (succès/échec), durée, taille, dernier check |
Les panneaux de la zone « Utilisation » ne montrent jamais le contenu des questions : uniquement des comptages.
Où tournent ces outils
Tout tourne sur la Box (containers dédiés, réseau interne, publication sur l'interface VPN seulement), sauf Uptime Kuma, hébergé chez le prestataire pour détecter une Box injoignable. Les alertes partent par mail ou messagerie vers le prestataire, et une sélection (disque, sauvegarde, service) vers le référent client. Rétention Prometheus : 90 jours (hypothèse).
Questions ouvertes
Ce qu'il reste à tester
Sources
- 1Prometheus — Overview (documentation officielle)Documentation officielleFiabilité hautePrometheus (CNCF) · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 2prometheus/node_exporter — dépôt officielGitHubFiabilité hautePrometheus (CNCF) · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 3llama.cpp — tools/server README (llama-server)GitHubFiabilité hauteggml-org / llama.cpp · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 4Uptime Kuma — dépôt officielGitHubFiabilité hautelouislam / Uptime Kuma · publié 2026 · consulté le 16 sept. 2026 · fiche source