mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 12:44:41 +02:00
Audit complet des rôles vs état réel du cluster. Chaque rôle a maintenant un README.md : but, variables (défauts + surcharges host_vars/vault), handlers, vérifications, caveats. Gaps découverts et documentés : - minio : rôle VIDE (tasks/main.yml sans aucune tâche), service inactif — placeholder à implémenter ou retirer (ports 9000/9001 ouverts pour rien) - llama_server : ne gère que l'instance GPU :1234 — les services CPU llama-server-system :1236 et llama-server-monitor :1237 sont créés à la main sur gpu-01, non reproductibles par make apply-gpu (+ un llama-server-dev.service non documenté présent sur l'hôte) - hermes_auto_improve : defaults port/repo/branch/log non consommés (valeurs en dur dans les scripts), défaut branch obsolète - lm_studio : README de dépréciation, candidat suppression Tables admin/ops/ansible.md, README.md et CLAUDE.md corrigées en conséquence. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
29 lines
1.2 KiB
Markdown
29 lines
1.2 KiB
Markdown
# hermes_user
|
|
|
|
Crée le user `hermes` (uid/gid 1002) sur **les deux hôtes** avec SSH partagé : la clé générée sur storage-01 est autorisée sur gpu-01, ce qui permet à l'agent de lancer des commandes read-only sur le nœud GPU.
|
|
|
|
## Ce que fait le rôle
|
|
|
|
- User/groupe `hermes` (1002:1002, home `/opt/hermes`)
|
|
- Sudo **limité** (listes blanches différentes storage-01 / gpu-01)
|
|
- Génération clé ed25519 sur storage-01 → poussée dans `authorized_keys` de gpu-01
|
|
- `~/.ssh/config` + known_hosts pré-remplis (gpu-01)
|
|
- Copie du kubeconfig dans `~hermes/.kube/` si présent (accès kubectl read-only)
|
|
- Ajout au groupe `systemd-journal`
|
|
|
|
## Variables principales
|
|
|
|
| Variable | Défaut |
|
|
|---|---|
|
|
| `hermes_user` / `hermes_group` | `hermes` |
|
|
| `hermes_uid` / `hermes_gid` | 1002 |
|
|
| `hermes_home` | `/opt/hermes` |
|
|
| `hermes_ssh_key_type` | ed25519 |
|
|
|
|
## Ordre d'exécution
|
|
|
|
Doit passer **avant** `hermes_agent` (qui suppose le user existant). C'est le premier rôle des deux playbooks.
|
|
|
|
## Caveat
|
|
|
|
Le rôle touche les deux machines mais avec des branches conditionnelles (`inventory_hostname`) — un run sur storage-01 seul ne pousse pas la clé sur gpu-01 : lancer les **deux** playbooks après régénération de clé.
|