Modele: - Chaque base porte un "consommateur" (le groupe applicatif qui l'utilise) et un "usage" (principale/cache...). Une application peut avoir plusieurs bases. - Le binding appli<->base n'est plus une convention de nom mais un champ gere. Regles partagees (inventory_rules): consommateur requis a la validation; helper bases_du_groupe(registre, groupe). GUI (make inventaire-ui): - Vue "Bases": menu deroulant Consommateur + champ Usage par base -> on fait les connexions ici; plusieurs bases par appli supportees. - Vue "Chaine" detaillee: chaque groupe affiche ses roles ET ses bases avec leur chaine de connexion (appli -> base -> serveur de BD -> hote). CLI (bases_donnees.py): ajouter-base --consommateur --usage; lister affiche "base <- consommateur (usage): DSN". Roles serveurs_keycloak / serveurs_forgejo / serveurs_icinga: resolution de leur base par consommateur (groupe), plus de cle codee en dur. Valide: ansible-lint (roles), node --check (JS), round-trips GUI et CLI, multi-BD verifie (serveurs_web_dorsaux -> 2 bases), make inventaire-verifier. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| defaults | ||
| handlers | ||
| tasks | ||
| templates | ||
| README.md | ||
serveurs_icinga
Supervision active Icinga — cœur de surveillance. Portée actuelle : Icinga 2 + Icinga DB (avec son Redis dédié et sa base PostgreSQL). Icinga Web 2 est différé à une phase dédiée.
Rôle (cœur)
- Ajoute le dépôt apt officiel Icinga (trousseau + source signée) et installe
icinga2,icingadb,icingadb-redis. icinga2 api setup+ activation de la fonctionnalitéicingadb.- Base PostgreSQL via le registre (
docs/bases-donnees.yml, entréeicingadb) : PostgreSQL crée la base/compte, ce rôle importe le schéma et écrit/etc/icingadb/config.yml(BD + Redis).
Base de données
Entrée registre icingadb (PostgreSQL sur data-01). Mot de passe partagé via Vault
(vault_bd_icingadb), comme Keycloak. Dépendance serveurs_icinga requiert serveurs_postgresql actif (déjà dans docs/dependances-groupes.yml).
Différé (phase Icinga Web 2)
icingaweb2+ sa 2e base (icingaweb) + PHP-FPM + vhost nginx + assistant de configuration (jeton de setup). À faire proprement avec sa doc verbatim.
Limites / caveats honnêtes
- Les pages détaillées Icinga DB/Web ont renvoyé des 404 ; la config Icinga DB
(
config.yml, chemin du schéma/usr/share/icingadb/schema/pgsql/schema.sql, port Redis6380) suit la structure documentée standard mais n'a pas pu être vérifiée verbatim — à confirmer/ajuster selon la version installée (variables prévues). - Non testé live (mon-01 planifié).
- L'import de schéma s'exécute une seule fois (marqueur
/etc/icingadb/.schema-imported).
Prérequis
serveurs_postgresqlactif (baseicingadbcréée), accès réseau à data-01:5432.