Trois des cinq pieges restants avaient deja une page depuis que la semaine a avance : le connect() vers le vide (frontiere-opnsense.md + le controle porte par frontiere-mesurer), le `make prouver` vert (wiki « Verifier le deploye »), et le banner exchange. Les deux orphelins — kcadm -s sur une map, grafana-cli dans une base fantome — s'adressent a qui ECRIT du code, pas a qui reprend l'exploitation : ils n'ont rien a faire dans un chemin de reprise. Une page separee aurait redit ce que trois autres disent deja, et aurait donc vieilli mal — le reproche exact qu'on faisait a sa version longue. La section ⑤ de « Reprendre l'ecosysteme » porte desormais la REGLE qui les relie (verifier l'instrument avant d'accuser le composant) et un tableau de trois lignes qui renvoie chacune a son domicile. Plus de promesse en attente. Et le banner exchange n'avait AUCUN domicile : le savoir vivait dans un commentaire du Makefile et trois entrees du CHANGELOG — nulle part ou on le cherche, exactement le mal que la refonte traite. Ecrit en runbook §3, avec ses trois causes par frequence et ce qui tranche dans l'ordre. runbooks-exploitation.md declare aussi son lecteur, comme le veut la convention validee. Verifie : chaque renvoi controle un a un, prouver.py 0 (33 OK), plan-recette inchange. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
6.4 KiB
Reprendre l'écosystème — tu viens d'hériter de tout ça
Pour qui : l'exploitant qui reprend un écosystème Set-OPS déjà déployé — livraison, passation, ou retour après six mois. Ce n'est pas une unité d'apprentissage : c'est un ordre d'opérations. Il ne contient presque rien en propre, il t'envoie au bon endroit dans le bon ordre.
La règle avant toutes les autres : ce wiki est publié depuis le dépôt (wiki/). Une page
modifiée dans l'interface de la forge est détruite à la publication suivante. On lit ici,
on écrit dans le dépôt.
① Dans quel état hérites-tu ?
Avant de toucher à quoi que ce soit. Tu ne sais pas encore si tu reprends un système sain ou une panne déjà commencée, et personne ne te le dira. Ces commandes ne modifient rien et sortent en erreur s'il y a un écart entre ce qui tourne et ce que le plan décrit.
make instance-courante # vers quel écosystème pointe l'instance active ?
make prouver # le dépôt est-il cohérent avec lui-même ? (aucun appel réseau)
make identite-plan # realm, fédération LDAP, mappeurs, politique de mot de passe, comptes
make certificats-plan # ce que le disque porte contre ce que la mémoire sert
make expositions-plan # chaque service publié répond-il — depuis l'edge et depuis ton poste
make postgresql-plan # le chiffrement est-il imposé, et à quels réseaux
make courriel-plan # Postfix → LDAP → LMTP → Dovecot → IMAP, file d'attente comprise
make frontiere-mesurer # ce qui n'est pas déclaré à la frontière est-il refusé ?
Quelques minutes pour ce qui demandait une journée d'enquête à la main. C'est aussi le premier réflexe après la reprise : après tout changement, après une panne, avant d'appeler quelqu'un.
make prouverne suffit pas, et c'est important de le savoir tout de suite. Il lit le dépôt, jamais les machines. Le 2026-08-08, l'autorité de certification de la flotte est restée expirée huit heures sous un harnais entièrement vert. Voir Vérifier le déployé.
Détail de ce que chaque devis vérifie — et de ce qu'il ne vérifie pas : docs/devis-services.md.
② Entrer
Un prérequis et trois pièges, tous à la première connexion. Le runbook complet est dans
docs/autorisation.md §6 ; voici l'ordre et la raison de chaque geste.
1. La clé de voûte. Le mot de passe de la voûte est lu depuis
ANSIBLE_VAULT_PASSWORD_FILE (~/.config/setops-vault-pass par défaut). Sans ce fichier,
rien n'est possible — ni les devis ci-dessus, ni un déploiement. C'est la première chose à
sauvegarder hors de la machine, avec les vault.yml de chaque instance, qui ne sont pas
versionnés.
2. Le mot de passe d'amorçage, à changer avant tout le reste (§6.1). L'annuaire refuse toute opération tant qu'il n'est pas changé, sauf le changement lui-même. Ce n'est pas optionnel.
3. La racine mène à la mauvaise console (§6.2). https://auth.<domaine>/ redirige vers la
console du realm master, où ton compte n'existe pas. Keycloak répond « invalid username or
password » — exact, et parfaitement trompeur : le mot de passe est bon, c'est la porte qui ne
l'est pas.
4. Fais confiance à l'AC interne (§6.3), sinon ton navigateur criera sur chaque service.
make ca-racine récupère la racine et son empreinte, make ca-empreinte la relit sur l'AC
elle-même — c'est le témoin auquel comparer avant d'installer quoi que ce soit.
Et si tu te fermes dehors : §6.5.
③ De quoi c'est fait
Rien de tout ça n'est écrit à la main — tout se dérive du plan, et c'est le sujet de Le plan & l'adressage dérivé. Demande-le plutôt que de le lire quelque part :
make inventaire # vérifie l'inventaire et affiche le graphe des groupes
make hote-afficher HOTE=<nom> # tout ce que le plan dérive pour un hôte
make inventaire-ui # la même chose, en console web
| Pour comprendre | Va lire |
|---|---|
| ce que fait chaque service et pourquoi celui-là | Accueil du wiki, unités d'apprentissage |
| qui parle à qui, sur quel port | docs/flux-conception.md |
| comment un service en atteint un autre | Liaisons (bindings) |
| la carte du dépôt, pour modifier | docs/carte-set-ops.md |
④ Quand ça casse
Les procédures : docs/runbooks-exploitation.md.
Deux réflexes qui évitent la moitié des fausses pistes :
- Un certificat renouvelé sur disque n'est pas un certificat servi. Tant que nginx,
Postfix ou slapd n'ont pas été rechargés, ils servent l'ancien depuis la mémoire.
make certificats-plancompare les deux, justement. - Répare avec
make deployer, constate avec les devis. Ce sont deux gestes différents, et les confondre fait perdre l'information au moment où elle sert.
⑤ Ce qui va te mentir
Un écosystème ne tombe pas en panne franchement : il te donne d'abord un signal faux. Et un signal faux coûte une demi-journée à qui n'est pas prévenu.
La règle qui les couvre tous : quand une mesure accuse un composant, vérifie d'abord que ton instrument mesure ce que tu crois. Une sonde porte toujours un contrôle — une cible dont tu connais déjà la réponse. Si le contrôle ment, ne conclus rien.
Les trois que tu rencontreras, et où chacun est traité :
| Le signal | Ce qu'il te fera croire | Où c'est expliqué |
|---|---|---|
un connect() TCP qui réussit vers le vide |
que le port est ouvert | docs/frontiere-opnsense.md — la frontière répond à la poignée sans jamais relayer. Le contrôle : sonder 172.31.99.99, et n'accepter que la livraison. C'est ce que fait make frontiere-mesurer. |
make prouver tout vert |
que le système va bien | Vérifier le déployé — les preuves lisent le dépôt, jamais les machines. |
Connection timed out during banner exchange |
que le réseau est en cause | docs/runbooks-exploitation.md §3 — c'est le plus souvent une VM pas encore là, ou sshd qui refuse une rafale. |
Ce que tu dois changer en priorité
Avant d'oublier, et c'est dans docs/autorisation.md §6.8 : le mot de passe d'amorçage
(section ② ci-dessus), les secrets restants de la voûte, et tout accès hérité de la livraison
qui n'est pas à toi.