Aller au contenu
TAAF-OPS --:-- UTC

Acte 0 · Phase 3 — Déployer les services observés

Acte 0 · Mise en place Phase 3 — Services observés

La VM monitoring est nue (Phase 2). Vous y déployez vous-même l’infrastructure que les Actes 1-3 vont observer. Tout est décrit dans un seul dépôt, monitoring : il monte d’un coup le SI observé (PostgreSQL base_af, NextCloud) et la stack d’observabilité (Grafana, Prometheus, Loki, Alloy, exporters, Caddy).

3.1 — Déployer sur deux VMs : apps puis monitoring

Section intitulée « 3.1 — Déployer sur deux VMs : apps puis monitoring »

Depuis l’Acte 1, le SI observé et l’observabilité vivent sur deux machines distinctes — comme dans la vraie vie, l’observateur n’habite pas la machine qu’il observe. Relevez d’abord les deux IP (hostname -I sur chaque VM), vous en aurez besoin pour les câbler.

Fenêtre de terminal
vagrant ssh apps
sudo -iu taaf-engineer
# Les dépôts, côte à côte : monitoring monte ../sql (seeds base_af) et ../data (scénario, Phase 4)
git clone https://gitlab.com/kds-formation/sql.git
git clone https://gitlab.com/kds-formation/data.git
git clone https://gitlab.com/kds-formation/monitoring.git
cd monitoring
# Câbler vers la VM monitoring (Alloy y pousse les logs)
cp .env.example .env
# éditez .env : IP_MONITORING = l'IP de la VM monitoring
# PostgreSQL base_af, exporters, Alloy, cAdvisor…
docker compose -f docker-compose-apps.yml up -d
# NextCloud (compose dédié)
docker compose -f docker-compose-nextcloud.yml up -d
Fenêtre de terminal
vagrant ssh monitoring
sudo -iu taaf-engineer
git clone https://gitlab.com/kds-formation/monitoring.git
cd monitoring
# Câbler vers la VM apps : remplacez IP_APPS_A_RENSEIGNER par l'IP de la VM apps
# - config/prometheus/prometheus.yml (cibles des exporters)
# - config/grafana/provisioning/datasources/datasources.yml (datasource PostgreSQL)
sed -i "s/IP_APPS_A_RENSEIGNER/<IP de la VM apps>/g" \
config/prometheus/prometheus.yml config/grafana/provisioning/datasources/datasources.yml
# Grafana, Prometheus, Loki, Alertmanager
docker compose up -d

Checkpoint — les conteneurs tournent sur chaque VM :

Fenêtre de terminal
docker compose ps # (et `docker compose -f docker-compose-apps.yml ps` sur la VM apps)

Base métier de Port-aux-Français / Alfred Faure (RH, météo, comms) — et, plus tard, la table sensible genetic_samples.

Fenêtre de terminal
# sur la VM apps :
docker exec -it postgres-af psql -U taaf_admin -d base_af -c '\dt'
# → la connexion répond, la base base_af existe (tables métier listées)

Partage de fichiers ; hébergera le coffre CLASSIFIED-VAULT-X. Exposé en :8081.

Fenêtre de terminal
curl -f http://localhost:8081/status.php # sur la VM apps → {"installed":true,...}
  • UI : http://IP_APPS:8081 — admin admin.cloud.af / AdminCloudAF2024!.

La même stack expose déjà Grafana, Prometheus et Loki : ce sont vos outils pour les Actes 1-2.

Fenêtre de terminal
curl -f http://localhost:3000/api/health # Grafana → {"database":"ok",...}
curl -f http://localhost:9090/-/healthy # Prometheus → Healthy
curl -f http://localhost:3100/ready # Loki → ready
  • Grafana : http://IP_VM1:3000 (VM monitoring) — admin admin / AdminTAAF2024!.

→ Le SI observé et l’observabilité tournent et sont vérifiés. Ils sont vides du scénario : on les peuple en Phase 4.