homelab-codex-ws/docs/sessions/2026-06-30-fleet-inventory.md

57 lines
3.3 KiB
Markdown

# Sesja 2026-06-30 — Inwentaryzacja floty + gaszenie dysku SATURN
## Cel
Pełna inwentaryzacja floty (repo↔rzeczywistość) jako fundament przed dalszą
architekturą dokumentów KB. Start od weryfikacji stanu faktycznego wszystkich nodów.
## Zrobione
### Inwentaryzacja floty (główna robota)
- CC (Sonnet 4.6) w worktree `fleet-inventory` zebrał stan faktyczny (docker ps +
free/df/nproc) z 4 dostępnych nodów: PIHA, VPS, SOLARIA, SATURN. LUSTRO+CHELSTY
offline (timeout :22) -> oznaczone UNREACHABLE.
- Wynik: `docs/infra/inventory-2026-06-30.md` — 23 zpriorytetyzowane rozjazdy.
- Kluczowe ustalenia:
- **forgejo** biega na PIHA (always-on), ale `service.yaml owner_node=saturn` — rozjazd
- **mosquitto** biega na VPS, `service.yaml owner=piha`, na PIHA go nie ma
- **npm** — dwie instancje: PIHA (LAN ingress :80/:443) + VPS (public); repo zna jedna
- **homeassistant5** na PIHA (HA "ken", :8123) niedeklarowany w repo
- **control-plane** biega na VPS (healthy) I SATURN (control-plane-ui UNHEALTHY)
- **PIHA: 40 kontenerow, ~6 w GitOps, 33 "shadow" poza repo** (immich, vaultwarden,
wikijs, actual, audiobookshelf, elasticsearch, grafana, prom, portainer...)
- capabilities nieaktualne: SATURN RAM 8->14GiB, dysk 64->159GB; SOLARIA CPU 24->32
- ollama zadeklarowana (owner=solaria) ale NIE biega
### Gaszenie dysku SATURN (pilne — ugaszone)
- SATURN dysk 91% (15G wolne) = jedyne realne ryzyko awarii.
- `docker image prune -a -f` -> +4.1G (k3s/k3d sprzed 4 lat, stary HA 2.3G, postgresy)
- `journalctl --vacuum-size=200M` -> +3.7G
- `rm syslog.1 + rotacje` -> +4.2G
- Wynik: **91% -> 83%** (27G wolne), poza strefa ryzyka.
- Bonus diagnostyczny: przyczyna `control-plane-ui UNHEALTHY` = healthcheck uzywa
`curl`, ktorego NIE MA w obrazie -> failuje w kolko -> log spam (4.2G syslog).
- `/opt/anaconda3` 16G = najwiekszy pojedynczy zjadacz dysku (env-y Pythona, decyzja Oskara).
### safeclean.sh — 3 bugi naprawione (repo ubuntu-scripts, osobne)
- BUG #1: dry-run pokazywal reclaimable z `docker system df` (bez filtra), a apply
prune'owal z `--filter until=168h` -> dry-run obiecywal 4.8G, apply robil 0B. Fix:
dry-run pokazuje teraz realny reclaim z filtrem + tip o `--docker-all`.
- BUG #2: `du` podwojnie liczyl eCryptfs home -> warning dodany.
- BUG #3: rotated rsyslog (`syslog.1` 4.2G) byl poza zakresem -> dodana kategoria
"rotated system logs" (kasuje tylko zrotowane, nigdy aktywne).
- Commit `37233f0` na main (ubuntu-scripts).
## Nastepna sesja — naprawa 23 rozjazdow (pogrupowana)
- **Grupa A** (czyste docs, zero ryzyka): capabilities SATURN/SOLARIA, forgejo
owner_node->piha, mosquitto->vps, brakujace `hosts/saturn/services.yaml`
- **Grupa B** (wymaga decyzji): npm x2 (zostawic oba czy usunac PIHA?), control-plane
na SATURN (dev-instance czy usunac? + healthcheck curl fix), ollama nie biega
- **Grupa C** (sprzatanie): postgres:18->17, anonimowy outline-postgres image,
humanai/umami do repo, audyt 33 shadow kontenerow PIHA
## Watek wstrzymany (z poprzedniej sesji)
Architektura dokumentow KB — decyzje zamkniete (SSO=Forgejo-OIDC, ingress LAN-only,
archiwum hybryda Nextcloud-kopia/Paperless-referencja), host OTWARTY (PIHA ~0.5G wolne
RAM -> Nextcloud sie nie zmiesci). Wrocic po naprawie rozjazdow — inwentaryzacja
potwierdzila ze PIHA przeciazona (40 kontenerow), wiec host dokumentow wymaga decyzji.