43 lines
2.2 KiB
Markdown
43 lines
2.2 KiB
Markdown
|
|
# hosts_statiques
|
||
|
|
|
||
|
|
**Plancher de résolution** : génère `/etc/hosts` depuis l'inventaire, pour que tout
|
||
|
|
l'écosystème se résolve par nom **même DNS éteint**.
|
||
|
|
|
||
|
|
## Rôle
|
||
|
|
- Génère `/etc/hosts` (template `hosts.j2`) à partir des hôtes actifs de l'inventaire :
|
||
|
|
IP, nom court, FQDN interne.
|
||
|
|
- **Alias d'exposition** (optionnel, actif par défaut) : pose `<IP de l'edge> <FQDN exposé>`
|
||
|
|
pour chaque application qui déclare un `expose` dans le plan — la résolution des services
|
||
|
|
publiés ne dépend donc pas non plus du DNS.
|
||
|
|
|
||
|
|
## Pourquoi
|
||
|
|
C'est ce qui rend l'**ordre de reconstruction** possible : appliqué dans la couche **socle**
|
||
|
|
(via `playbooks/groupes/serveur_debian.yml`), il donne la résolution par nom avant que
|
||
|
|
`serveur_powerdns` n'existe. Sans lui, tout service référençant un FQDN interne
|
||
|
|
(`resoudre_base`, `resoudre_annuaire`, certificats step_ca…) échouerait au premier
|
||
|
|
déploiement d'une instance neuve.
|
||
|
|
|
||
|
|
Les trois couches de résolution : ce plancher → PowerDNS autoritatif → Unbound local
|
||
|
|
(`client_unbound`, opt-in). Cf. `docs/dns-interne.md`.
|
||
|
|
|
||
|
|
## Variables
|
||
|
|
| Variable | Défaut | Rôle |
|
||
|
|
| --- | --- | --- |
|
||
|
|
| `hosts_statiques_actif` | `true` | Génère (ou non) `/etc/hosts` |
|
||
|
|
| `hosts_statiques_domaine` | `{{ domaine_interne }}` | Suffixe des FQDN |
|
||
|
|
| `hosts_statiques_publier_expositions` | `true` | Ajoute les alias `expose` → edge |
|
||
|
|
| `hosts_statiques_expositions` | `[]` | Calculé par le rôle (filtre `expositions_des_applications`) |
|
||
|
|
|
||
|
|
## Notes / limites
|
||
|
|
- Les alias d'exposition sont **best-effort** : le rôle lit `applications.yml` et
|
||
|
|
`domaines.yml` sur le **nœud de contrôle** (`delegate_to: localhost`, `stat` d'abord).
|
||
|
|
Plan absent (ex. préparation du golden template) → alias simplement omis, pas d'échec.
|
||
|
|
- Le fichier est **entièrement géré** par Ansible : toute ligne ajoutée à la main sur un
|
||
|
|
nœud est écrasée au prochain passage. C'est voulu (source unique = le plan).
|
||
|
|
- Postfix tourne en chroot : `serveur_postfix` recopie ce `/etc/hosts` dans
|
||
|
|
`/var/spool/postfix/etc/` pour que le MTA bénéficie du même plancher.
|
||
|
|
|
||
|
|
## Prérequis
|
||
|
|
- `domaine_interne` défini ; `setops_plan_dir` pour les alias d'exposition.
|
||
|
|
- Filtre `expositions_des_applications` (`filter_plugins/`).
|