Création et configuration des systèmes Chezlepro Inc.
This repository has been archived on 2026-06-26. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
Daniel Allaire 33b1933a6d Rendre explicites les bindings appli<->BD (consommateur, multi-BD)
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>
2026-06-22 19:44:05 -04:00
docs Rendre explicites les bindings appli<->BD (consommateur, multi-BD) 2026-06-22 19:44:05 -04:00
inventories Construire l'ecosysteme de services et outiller l'inventaire 2026-06-22 18:06:11 -04:00
playbooks Construire l'ecosysteme de services et outiller l'inventaire 2026-06-22 18:06:11 -04:00
roles Rendre explicites les bindings appli<->BD (consommateur, multi-BD) 2026-06-22 19:44:05 -04:00
scripts Rendre explicites les bindings appli<->BD (consommateur, multi-BD) 2026-06-22 19:44:05 -04:00
.gitignore Structurer l'exploitation Ansible Chezlepro 2026-06-21 15:13:45 -04:00
AGENTS.md Construire l'ecosysteme de services et outiller l'inventaire 2026-06-22 18:06:11 -04:00
ansible.cfg Setup initial avec ansible 2026-06-19 23:31:49 -04:00
CHANGELOG.md Rendre explicites les bindings appli<->BD (consommateur, multi-BD) 2026-06-22 19:44:05 -04:00
CLAUDE.md Documente la reprise Codex Claude pour Set-OPS 2026-06-20 15:26:46 -04:00
LICENSE Initial commit 2026-06-19 18:05:01 -04:00
Makefile Gerer les bases de donnees par chaines de connexion (GUI + CLI) 2026-06-22 19:14:12 -04:00
README.md Construire l'ecosysteme de services et outiller l'inventaire 2026-06-22 18:06:11 -04:00
requirements.yml Construire l'ecosysteme de services et outiller l'inventaire 2026-06-22 18:06:11 -04:00
SOLUTION.md Ajout de nouveaux playbooke et rôles 2026-06-20 15:17:46 -04:00

Set-OPS — Votre artisan numérique

Dépôt Ansible central pour construire, configurer, maintenir et documenter les systèmes de Chezlepro Inc.

Domaines prévus

  • templates de VM Proxmox ;
  • groupes de conformité ;
  • maintenance ;
  • web ;
  • bases de données ;
  • monitoring ;
  • sauvegardes ;
  • identité ;
  • applications.

Premier chantier

Template Debian 13 Proxmox :

playbooks/modeles_vm/debian13_proxmox_preparer.yml
playbooks/modeles_vm/debian13_proxmox_verifier.yml
playbooks/modeles_vm/debian13_proxmox_nettoyer.yml

Principe

Le template contient seulement le socle commun.

Les services spécialisés seront installés ensuite sur les clones :

  • NGINX ;
  • PostgreSQL ;
  • MariaDB ;
  • Docker/Podman ;
  • monitoring complet ;
  • applications métier.

Exploitation courante

Un Makefile fournit les commandes d'exploitation principales.

Afficher l'aide :

make

Valider le dépôt :

make verifier

Inspecter les inventaires :

make inventaire
make hote-afficher HOTE=web-frontal-01

Ouvrir l'interface locale de gestion d'inventaire :

make inventaire-ui

Planifier une VM sans la créer ni la déployer :

make hote-planifier HOTE=obs-01 VMID=94101 GROUPES="serveurs_debian serveurs_durcis serveurs_prometheus serveurs_loki"

Ajouter une VM à l'inventaire production et l'associer aux groupes qui détermineront sa configuration :

make hote-ajouter HOTE=web-frontal-01 VMID=95301 ADRESSE_IP=10.1.15.31 GROUPES="serveurs_debian serveurs_durcis"
make hote-groupes HOTE=web-frontal-01 GROUPES="serveurs_debian serveurs_durcis"

Chaque groupe opérationnel doit avoir son playbook homonyme dans playbooks/groupes/.

La conformité normale des VM passe par ces playbooks de groupes. Les rôles de socle et de durcissement sont appliqués par serveurs_debian et serveurs_durcis, pas par des playbooks de couches séparés.

Les groupes opérationnels avec des hôtes, comme serveurs_web_frontaux ou clients_dns, sont validés contre playbooks/groupes/ par les commandes d'inventaire.

Le catalogue des services et intégrations prévus est dans docs/catalogue-services.md.

Les dépendances causales entre groupes sont dans docs/dependances-groupes.yml.

Le runbook du DNS interne initial est dans docs/dns-interne.md.

La nomenclature des noms de VM et des VMID est dans docs/nomenclature-vm.md.

Créer un clone depuis le modèle Debian 13 via l'API Proxmox :

make config
make creer-vm HOTE=web-frontal-01 VMID=95301 VLAN=15 ADRESSE_IP=10.1.15.31 PASSERELLE=10.1.15.1 GROUPES="serveurs_debian serveurs_durcis"
make deployer HOTE=web-frontal-01

Les valeurs Cloud-Init communes déjà présentes dans le modèle Proxmox sont héritées par les clones.

Préparer le golden template Debian 13 Proxmox :

make preparer-modele
make verifier-modele

Le nettoyage final du template est protégé :

make nettoyer-modele CONFIRMER=true

Déployer ou remettre en conformité une VM Debian clonée depuis le template :

make deployer HOTE=web-frontal-01

Déployer ou remettre en conformité un groupe :

make deployer-groupe GROUPE=serveurs_debian

Les déploiements de groupes ciblent automatiquement les hôtes actifs seulement.