BUT3 · R502 Terminé
Monter un système d'information supervisé : deux VM, Docker et une chaîne d'observabilité
J'ai monté le système d'information d'un scénario aux Kerguelen : deux VM provisionnées avec Vagrant, des services en conteneurs et une chaîne de métriques et de journaux.
Contexte et objectif
Le module suit un scénario situé dans les Terres Australes et Antarctiques Françaises : le système d'information d'un district des Kerguelen, qu'il faut d'abord monter soi-même avant de le superviser. L'objectif de cet « Acte 0 » était de construire la cible : deux machines virtuelles distinctes, l'une hébergeant le système observé (PostgreSQL, Nextcloud), l'autre la chaîne d'observabilité (Grafana, Prometheus, Loki, Alertmanager). L'observateur n'habite pas la machine qu'il observe.
Ce que j'ai réalisé
- J'ai provisionné les deux VM avec Vagrant, à partir du fichier de description fourni par le module, piloté depuis WSL sur un poste Windows 11.
- J'ai déployé les services en conteneurs avec Docker Compose sur chaque machine.
- J'ai câblé les deux sens de la communication entre VM : collecte des métriques dans un sens, envoi des journaux dans l'autre.
- J'ai peuplé le scénario (base de données, documents Nextcloud).
- J'ai validé l'environnement point par point avec une checklist.
Difficultés rencontrées et solutions
- Dix incidents documentés, dont le temps de résolution dépasse celui du déploiement.
- Parmi eux : traduction des permissions entre WSL et NTFS, gestion des adaptateurs réseau de l'hyperviseur, réécriture d'URL par une image Docker, validation plus stricte introduite par une nouvelle version d'un outil suivi en
latest. - Le câblage réseau entre VM repose sur des adresses recopiées dans plusieurs fichiers, sans vérification automatique : j'ai vérifié chaque sens séparément.
Résultats
- Les huit points de la checklist de validation sont vérifiés.
- Sept cibles Prometheus actives dans un sens, environ cinquante-quatre mille lignes de journaux collectées dans l'autre.
Ce que j'en retiens
Décrire l'infrastructure dans un fichier versionné la rend reproductible : après un échec, détruire puis reconstruire donne un environnement propre. Les frictions réelles (versions, permissions, réseau) n'apparaissent pas dans un énoncé et seule la pratique les révèle. On ne supervise correctement que ce qu'on a soi-même monté.
Technologies
- Vagrant
- VirtualBox
- WSL
- Docker
- Docker Compose
- PostgreSQL
- Nextcloud
- Grafana
- Prometheus
- Loki
- Alertmanager
- Alloy
- cAdvisor
En images





