Consolidation minimale post-diagnostic : menage documentaire
Catalogue : section "Etat d'implementation des roles" (implementes / echafaudages / roles-categories inertes) ; colonnes "Role futur" -> "Role". vm-lifecycle S8 : flux deploiement aligne sur le plan (au lieu de hote-ajouter, supplante). Refs inventories/lab laissees (golden template). Verifie : make verifier exit 0, ansible-lint 0 echec. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
e037b5fdb8
commit
ba8cbe87bf
3 changed files with 34 additions and 5 deletions
|
|
@ -1,5 +1,10 @@
|
|||
# CHANGELOG — Set-OPS
|
||||
|
||||
## 2026-06-24
|
||||
|
||||
### Modifié
|
||||
- **Consolidation minimale post-diagnostic (ménage documentaire, sans risque).** Suite à une relecture à froid « auteur » de l'état réel du dépôt. (1) **En-tête généré rafraîchi** : `instance/inventories/production/hosts.yml` pointait encore vers l'ancienne source `docs/` ; régénéré via `instancier-appliquer` (diff sémantique **vide** — contenu inchangé, seul l'en-tête a bougé ; commité côté instance `OPS-Chezlepro`). (2) **`docs/catalogue-services.md`** : nouvelle section **« État d'implémentation des rôles »** qui distingue sans ambiguïté les rôles **implémentés** (validés *en tant que code*, **non éprouvés en prod**), les **échafaudages** (playbooks-ancres `debug` sans rôle : `serveur_nextcloud`, `serveur_collabora`, `client_supervision`, `serveur_web_frontal`, `serveur_web_dorsal`) et les **rôles-catégories inertes** (`applications`, `backup`, `database`, `identity`, `monitoring`, `proxmox`, `storage`, `web` — vestiges d'un regroupement par catégorie abandonné, l'architecture réelle étant plate `serveur_*`/`client_*`) ; colonnes « Rôle futur » → « Rôle ». (3) **`docs/vm-lifecycle.md` §8** : flux de déploiement réaligné sur le plan (`instancier-appliquer` puis `deployer`) au lieu de la commande supplantée `hote-ajouter`. Vérifié : `make verifier` (exit 0), `ansible-lint` 0 échec. **Non touché à dessein** : les références `instance/inventories/lab/` des docs de template sont **correctes** (contexte golden template, distinct de `production`) ; le bas du `README.md` (« Premier chantier »/« Principe ») est daté mais **exact** (template = socle), donc laissé tel quel pour éviter le churn.
|
||||
|
||||
## 2026-06-23
|
||||
|
||||
### Corrigé
|
||||
|
|
|
|||
|
|
@ -16,9 +16,34 @@ Un service central peut partager un hôte avec d'autres services de la même fon
|
|||
|
||||
> Modèle à jour : chaque service est une **application** (`instance/plan/applications.yml`). Voir `docs/plan-et-generation.md`.
|
||||
|
||||
## État d'implémentation des rôles
|
||||
|
||||
> **Mise à jour (2026-06-24).** La plupart des rôles ci-dessous **existent désormais** —
|
||||
> écrits et validés *en tant que code*, **pas encore éprouvés sur des VM réelles**. Le rôle
|
||||
> effectif porte le nom du **groupe** (`serveur_keycloak`, `client_pki`…), pas le nom court
|
||||
> de la colonne « Rôle » des tables.
|
||||
|
||||
**Implémentés** (`tasks` + `templates` + `handlers`, validés) : `serveur_step_ca`,
|
||||
`client_pki`, `serveur_powerdns`, `client_dns`, `serveur_openldap`, `client_ldap`,
|
||||
`serveur_keycloak`, `serveur_postgresql`, `serveur_redis`, `serveur_nginx`,
|
||||
`serveur_sendmail`, `client_smtp`, `serveur_prometheus`, `client_metrique`, `serveur_loki`,
|
||||
`client_journal`, `serveur_grafana`, `serveur_icinga`, `serveur_forgejo`. Plus le socle et
|
||||
le durcissement, appliqués par `serveur_debian` / `serveur_durci`.
|
||||
|
||||
**Échafaudages** (playbook-ancre `debug` « reste à définir », **sans rôle**) :
|
||||
`serveur_nextcloud`, `serveur_collabora`, `client_supervision`, `serveur_web_frontal`,
|
||||
`serveur_web_dorsal`. Les capacités *collaboration* et *couche web applicative* sont câblées
|
||||
par convention mais pas encore implémentées.
|
||||
|
||||
**Rôles-catégories inertes** (dossiers `roles/<x>/` réduits à un `README.md`, jamais câblés) :
|
||||
`applications`, `backup`, `database`, `identity`, `monitoring`, `proxmox`, `storage`, `web`.
|
||||
L'architecture réelle est **plate** (`serveur_*` / `client_*`) ; ces dossiers sont des
|
||||
vestiges d'un regroupement par catégorie abandonné — à supprimer ou réactiver lors d'une
|
||||
consolidation ultérieure.
|
||||
|
||||
## Services centraux
|
||||
|
||||
| Service | Groupe | Playbook | Rôle futur |
|
||||
| Service | Groupe | Playbook | Rôle |
|
||||
| --- | --- | --- | --- |
|
||||
| Keycloak | `serveur_keycloak` | `playbooks/groupes/serveur_keycloak.yml` | `keycloak` |
|
||||
| OpenLDAP | `serveur_openldap` | `playbooks/groupes/serveur_openldap.yml` | `openldap` |
|
||||
|
|
@ -46,7 +71,7 @@ La couche applicative web est distincte de l'edge `serveur_nginx` :
|
|||
|
||||
Le « web » de ces deux groupes est implicite par leur position derrière `serveur_nginx`. Le jour où un service dorsal n'est pas web (worker batch, file, démon), créer un groupe dédié plutôt que d'élargir `serveur_web_dorsal`.
|
||||
|
||||
| Couche | Groupe | Playbook | Rôle futur |
|
||||
| Couche | Groupe | Playbook | Rôle |
|
||||
| --- | --- | --- | --- |
|
||||
| Présentation web (frontends) | `serveur_web_frontal` | `playbooks/groupes/serveur_web_frontal.yml` | `web_frontaux` |
|
||||
| Application web (backends) | `serveur_web_dorsal` | `playbooks/groupes/serveur_web_dorsal.yml` | `web_dorsaux` |
|
||||
|
|
@ -72,7 +97,7 @@ Dépendance d'intégration prévue : `serveur_web_frontal` devra publier via `se
|
|||
|
||||
## Intégrations clientes
|
||||
|
||||
| Intégration | Groupe | Playbook | Rôle futur |
|
||||
| Intégration | Groupe | Playbook | Rôle |
|
||||
| --- | --- | --- | --- |
|
||||
| Résolution DNS interne | `client_dns` | `playbooks/groupes/client_dns.yml` | `client_dns` |
|
||||
| Confiance PKI / ACME | `client_pki` | `playbooks/groupes/client_pki.yml` | `client_pki` |
|
||||
|
|
|
|||
|
|
@ -142,10 +142,9 @@ L'accès SSH par mot de passe est désactivé dès le socle. L'activation de nft
|
|||
|
||||
## 8. Déploiement par Makefile
|
||||
|
||||
Pour une VM déjà clonée et démarrée :
|
||||
L'hôte est d'abord déclaré dans le **plan** (`instance/plan/serveurs.yml`) et l'inventaire régénéré (`make instancier-appliquer`) — `hosts.yml` est généré, il ne s'édite plus à la main. Pour une VM déjà clonée et démarrée :
|
||||
|
||||
```bash
|
||||
make hote-ajouter HOTE=web-frontal-01 VMID=95301 ADRESSE_IP=10.1.15.31 GROUPES="serveur_debian serveur_durci"
|
||||
make deployer HOTE=web-frontal-01
|
||||
```
|
||||
|
||||
|
|
|
|||
Reference in a new issue