main: doc: add release notes
Signed-off-by: GnomeZworc <nicolas.boufidjeline@g3e.fr>
This commit is contained in:
parent
2ec819377f
commit
9445bc087a
1 changed files with 54 additions and 0 deletions
54
release_notes/0.1.0.md
Normal file
54
release_notes/0.1.0.md
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
# Varion
|
||||
|
||||
Première version stable de **syonad/two**, orchestrateur réseau et VM mono-nœud.
|
||||
|
||||
## Fonctionnalités
|
||||
|
||||
**API et cycle de vie**
|
||||
|
||||
- API HTTP `/vpcs`, `/subnets`, `/vms` : création et suppression asynchrones (202 + état en base)
|
||||
- États unifiés pour les trois types de ressource : `creating` → `running` → `deleting` → `deleted`,
|
||||
avec `error` en cas d'échec d'exécution ; suppression autorisée depuis `running` et `error`
|
||||
- Migration au démarrage de l'agent : toute ressource restée dans un état transitoire est
|
||||
basculée en `error`, la file de travail étant en mémoire
|
||||
|
||||
**Réseau**
|
||||
|
||||
- VPC isolés par network namespace, subnets en mode `vxlan` ou `bridge`
|
||||
- DHCP par subnet via instances `dnsmasq@` dédiées, entrées ip→mac en base
|
||||
- Route par défaut et route du VPC distribuées par DHCP (`default_route` par subnet)
|
||||
- Isolation du DHCP par ebtables, redirection du service de metadata par iptables
|
||||
|
||||
**Machines virtuelles**
|
||||
|
||||
- Démarrage QEMU/KVM avec plusieurs disques et ordre de démarrage explicite
|
||||
- Amorçage UEFI optionnel (OVMF), avec magasin de variables par VM
|
||||
- Serveur de metadata cloud-init par VM (`metadata@`), sans base de données dans le processus
|
||||
- Les VMs survivent à l'arrêt de l'agent : QEMU est lancé hors de son cgroup via `systemd-run`
|
||||
|
||||
**Exploitation**
|
||||
|
||||
- Métriques Prometheus : nombre de VPC, subnets et VMs par état
|
||||
- `deploy.sh` avec profils d'host (`kvm`), préparation système déléguée à `bootstrap_kvm.sh`
|
||||
- Units systemd et scripts publiés comme assets de release, avec manifeste `SHA256SUMS`
|
||||
vérifié au déploiement
|
||||
|
||||
## Périmètre et limites connues
|
||||
|
||||
- Un seul nœud : pas d'ordonnanceur ni de placement entre hyperviseurs
|
||||
- Pas de rollback en cas d'échec partiel d'une création — les ressources réseau orphelines
|
||||
ne sont pas nettoyées automatiquement
|
||||
- API destinée à un appelant logiciel : la validation de cohérence des entrées (CIDR, VXLAN
|
||||
ID, format des noms) est à la charge de l'appelant
|
||||
- Les packages `internal/netns`, `netif`, `qemu`, `vm`, `iptables` et `ebtables` ne
|
||||
fonctionnent que sous Linux
|
||||
|
||||
## Installation
|
||||
|
||||
```
|
||||
curl -O https://git.g3e.fr/syonad/two/raw/branch/main/scripts/deploy.sh
|
||||
bash ./deploy.sh -t 0.1.0 -i # -i : préparation de l'host (paquets, kernel, bridges)
|
||||
```
|
||||
|
||||
`deploy.sh` se vérifie lui-même contre la branche et télécharge les binaires, les units et
|
||||
le manifeste depuis cette release.
|
||||
Loading…
Add table
Add a link
Reference in a new issue