Architektura Úložiště (Storage Design)
Tento dokument popisuje principy, hardware a logiku ukládání dat v našem Homelabu. Slouží jako referenční příručka pro rozhodování "kam co uložit".
1. Filosofie Úložiště (Tiering)
Ne všechna data jsou si rovna. Používáme třívrstvou architekturu (Tiering), která balancuje mezi rychlostí (IOPS), kapacitou (TB) a životností disků (TBW).
| Tier | Médium | Vlastnosti | Určení (Use Case) | Pool (TrueNAS) |
|---|---|---|---|---|
| Tier 1 (Hot) | NVMe | 🚀 Extrémní IOPS, Nízká latence | Databáze, VM disky, Aplikace, Metadata | tank |
| Tier 2 (Warm) | SSD (SATA) | ⚡ Rychlé čtení, Odolnost cache | Ingest (nová data), Cache, Náhledy, Transcoding | ssd-cache |
| Tier 3 (Cold) | HDD (3.5") | 🐢 Vysoká kapacita, Sekvenční zápis | Archiv, Média (Filmy/Fotky), NVR Záznam, Zálohy | archive |
Proč to dělíme?
- Výkon: Databáze (Home Assistant) na HDD by systém zpomalila k nepoužitelnosti.
- Hluk a Spotřeba: HDD se může uspávat, pokud se z něj nečte.
- Životnost: NVR (kamery) zapisuje nonstop. Nechceme opotřebovat drahé NVMe nebo systémový disk. HDD je na sekvenční zápis stavěné.
2. Hardware Implementace (TrueNAS Scale)
Server truenas (NUC8i3BEH + USB DAS) obsluhuje tyto fyzické disky:
- Boot (System): SATA SSD (Interní). Pouze pro OS. Žádná uživatelská data.
tank(NVMe): 1TB Intel (Interní).- Služby: PBS Datastore (Meta i Chunks).
[!WARNING] AI & Agent Note: Dataset
tank/pbs-dataleží fyzicky na čistém NVMe disku. Nepleťte si ho sarchive(HDD). Proxmox Backup Server (GC, Sync writes) na tomto tieru nemá žádný problém s IOPS a nepotřebuje SLOG.
- Služby: PBS Datastore (Meta i Chunks).
ssd-cache(SSD): 240GB Kingston (USB).- Služby: Cache pro Scrypted.
archive(HDD): 4TB WD Purple/Red (USB).- Služby: Dlouhodobé úložiště dokumentů, NVR záznamy (30+ dní).
3. Logická Struktura (ZFS Datasets)
V TrueNAS nepoužíváme "obyčejné složky", ale ZFS Datasety.
- Dataset se chová jako samostatný souborový systém. Může mít vlastní kompresi, kvóty, snapshoty a zálohovací pravidla.
- Pravidlo: Každá logická aplikace nebo typ dat má vlastní Dataset.
Struktura Datasetů
tank/
├── pbs-data (Zálohy VM z Proxmoxu - komprese LZ4)
└── docker (Persistentní data pro ostatní kontejnery)
ssd-cache/
└── nvr-buffer (Volitelně: Cache pro kamerový systém)
archive/
├── nvr (Záznamy z kamer - komprese OFF, recordsize=1M)
└── media (Filmy, Seriály, Hudba)
4. Proxmox Storage (ZFS)
Oba Proxmox nody používají ZFS (rpool) pro lokální VM/CT disky:
| Storage | Typ | Pool | Obsah | Poznámka |
|---|---|---|---|---|
local |
dir | /var/lib/vz |
ISO, šablony, zálohy | Malý (jen ISO) |
local-zfs |
zfspool | rpool/data |
VM disky, LXC rootfs | Hlavní storage |
[!NOTE] ZFS Replication je nastavena pro pfSense (VM 100) z pmx1 → pmx2 (RPO ~15 min).
5. Síťové Protokoly (Sharing)
Jak se k datům přistupuje zvenčí (z jiných VM nebo PC)?
A. NFS (Network File System) 🐧
- Použití: Linux-to-Linux, Server-to-Server.
- Vlastnosti: Rychlé, stabilní, zachovává unixová oprávnění (UID/GID).
Aktuální NFS mounty v Proxmoxu (z /etc/pve/storage.cfg):
| Název | NFS Export | Mount Path | Server | Použití |
|---|---|---|---|---|
nvr-truenas |
/mnt/archive/nvr |
/mnt/pve/nvr-truenas |
TrueNAS | Scrypted NVR záznamy |
PBS storage (ne NFS, ale Proxmox Backup protocol):
| Název | Server | Datastore | Použití |
|---|---|---|---|
pbs-truenas |
192.168.20.8 |
TrueNas |
Zálohy VM/CT |
B. SMB (Samba / CIFS) 🪟
- Použití: Klienti (Windows, macOS, iOS), Uživatelé.
- Vlastnosti: Kompatibilita, viditelné ve Finderu/Průzkumníku.
- Kdo to používá:
- Vy (Uživatel): Mapování disku
Dokumentydo Macu. - Scanner: Odesílání skenů do složky
consume(většina tiskáren umí jen SMB).
- Vy (Uživatel): Mapování disku
Tento dokument slouží jako "Source of Truth" pro konfiguraci úložiště. Jakákoliv změna musí být reflektována zde.