artefacts : la forge sert aussi les binaires
serveur_artefacts colocalise sur forge-01. Toute la flotte prend ses paquets Debian dans l'ecosysteme. Eprouve en coupant l'amont. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
aeb0e1635a
commit
163383185c
3 changed files with 26 additions and 7 deletions
14
README.md
14
README.md
|
|
@ -48,7 +48,7 @@ Les cinq machines tournent. L'adressage dérive du seul seed `index: 29` — sup
|
|||
| `infra-dns-01` | infra-dns | `10.29.19.11` | PowerDNS autoritatif |
|
||||
| `infra-pki-01` | infra-pki | `10.29.19.21` | step-ca — l'autorité interne |
|
||||
| `ops-01` | ops | `10.29.19.41` | le **poste d'exploitation** |
|
||||
| `forge-01` | forge | `10.29.21.11` | Forgejo — le génome |
|
||||
| `forge-01` | forge | `10.29.21.11` | Forgejo — le génome, **et** le cache d'artefacts |
|
||||
|
||||
**Forgejo tourne sur SQLite**, pas sur une VM PostgreSQL dédiée : une base qu'une
|
||||
poignée de personnes sollicite ne justifie pas un serveur, une zone, un secret et une
|
||||
|
|
@ -64,6 +64,11 @@ d'irremplaçable (les clés de l'AC, les dépôts).
|
|||
**Il est hébergé par la fabric de Chezlepro** (`SITE-Chezlepro`), au même titre qu'un
|
||||
autre tenant. Il n'a pas d'underlay à lui.
|
||||
|
||||
**Il sert ses propres binaires.** `forge-01` porte aussi la source d'artefacts
|
||||
(apt-cacher-ng) : toute la flotte y prend ses paquets Debian au lieu d'aller chez Debian.
|
||||
La forge est la source, du code **et** des binaires. Éprouvé en coupant l'amont — un
|
||||
paquet en cache est servi en `0 o/s`, un paquet absent est refusé par un `503`.
|
||||
|
||||
**Il résout par lui-même.** Les quatre hôtes clients interrogent un Unbound local, qui
|
||||
tient la zone `genese.internal` de `infra-dns-01` et **récurse depuis les serveurs
|
||||
racine** pour le reste — `forward-addr` = 0, aucun résolveur tiers n'est consulté.
|
||||
|
|
@ -154,7 +159,6 @@ ses VLAN n'auraient existé nulle part.
|
|||
déménagement tient en **trois** valeurs de `group_vars/proxmox.yml` — nœud, stockage,
|
||||
gabarit. Le pont n'en fait pas partie : chaque VM atterrit sur le VNet dérivé de sa
|
||||
zone.
|
||||
- [ ] **Une source d'artefacts.** Sa forge héberge du code, pas des binaires. Les
|
||||
collections Ansible sont réglées (cache du contrôleur, poussé par SSH) ; Forgejo,
|
||||
step-ca et les autres viennent encore du dehors. Un enfant coupé de l'internet ne
|
||||
se construit pas.
|
||||
- [ ] **Les dépôts tiers en HTTPS** (Smallstep, Grafana, Icinga) vont encore en direct :
|
||||
les faire passer par le cache demande de réécrire leurs sources en
|
||||
`http://cache/<remap>/…`. Les dépôts Debian, eux, sont couverts.
|
||||
|
|
|
|||
|
|
@ -3,6 +3,13 @@
|
|||
# Source : instance/plan/serveurs.yml + instance/plan/applications.yml + instance/plan/nomenclature.yml.
|
||||
all:
|
||||
children:
|
||||
client_artefacts:
|
||||
hosts:
|
||||
forge-01: null
|
||||
infra-dns-01: null
|
||||
infra-edge-01: null
|
||||
infra-pki-01: null
|
||||
ops-01: null
|
||||
client_backup:
|
||||
hosts:
|
||||
forge-01: null
|
||||
|
|
@ -26,10 +33,10 @@ all:
|
|||
ansible_host: 10.29.21.11
|
||||
ansible_user: ansible
|
||||
proxmox_cidr: 24
|
||||
proxmox_coeurs: 1
|
||||
proxmox_coeurs: 2
|
||||
proxmox_disque_taille: 80G
|
||||
proxmox_etiquette_vlan: ''
|
||||
proxmox_memoire: 2048
|
||||
proxmox_memoire: 2560
|
||||
proxmox_passerelle: 10.29.21.1
|
||||
proxmox_pont: t29appl
|
||||
proxmox_vlan: 1296
|
||||
|
|
@ -93,6 +100,9 @@ all:
|
|||
hosts: {}
|
||||
modeles_vm:
|
||||
hosts: {}
|
||||
serveur_artefacts:
|
||||
hosts:
|
||||
forge-01: null
|
||||
serveur_debian:
|
||||
hosts:
|
||||
forge-01: null
|
||||
|
|
|
|||
|
|
@ -5,3 +5,8 @@ applications:
|
|||
powerdns: { groupe: serveur_powerdns, hote: infra-dns-01 }
|
||||
forgejo: { groupe: serveur_forgejo, hote: forge-01, port: 3000, expose: [forge.genese.internal] }
|
||||
ops: { groupe: serveur_ops, hote: ops-01 }
|
||||
# LA FORGE EST LA SOURCE — du code ET des binaires. Colocalise sur forge-01 plutot
|
||||
# que sur une VM a elle : c'est la meme fonction (servir a ses enfants ce dont ils
|
||||
# ont besoin pour exister), et patient 0 est deliberement le plus petit ecosysteme
|
||||
# complet. Un autre ecosysteme peut le placer ou il veut.
|
||||
artefacts: { groupe: serveur_artefacts, hote: forge-01 }
|
||||
|
|
|
|||
Loading…
Reference in a new issue