TrueNAS
TrueNAS
Retired. The TrueNAS VM is shut down. Storage now lives on ZFS pools directly on the Proxmox host, shared to the cluster over NFS (see NFS Subdir External Provisioner). This post is kept for reference.
TrueNAS Server Documentation
Hardware
| Component | Details |
|---|---|
| CPU | i5-13500 |
| RAM | 96 GB, DDR5 5600 |
| Storage Devices | 4x 4TB HDD, 2x 4TB NVMe, 2x 4TB SAS |
| Network Interfaces | 1x 10GbE (onboard), 2x 25Gb SFP28 (PCIe card) |
Add more details about your hardware specs above.
Storage Pools
| Pool Name | Type | Drives | Layout | VDEVs |
|---|---|---|---|---|
| archive | HDD | 4x 4TB | Mirror | 2 |
| fast_pool | NVMe | 2x 4TB | Mirror | 1 |
| sas_pool | SAS | 2x 4TB | Mirror | 1 |
Datasets
- archive: per-user shares, Docker, HomeAssistant, Jellyfin, Pictures, Proxmox
- fast_pool: per-user shares, Docker, HomeAssistant, Jellyfin, Pictures, HomeAssistantOS
- sas_pool: PVE-Storage
Snapshots
- Snapshots are scheduled nightly for critical datasets in all pools (archive, fast_pool, sas_pool).
- Retention policy: All snapshots are kept for 2 weeks (14 days).
- Snapshots are the basis for all replication tasks.
- Snapshots can be managed via the TrueNAS web UI under “Storage > Snapshots”.
Replication
- The archive pool serves as the replication target for both fast_pool and sas_pool.
- Replication tasks use daily snapshots to sync data from fast_pool and sas_pool to archive.
- Replication is performed locally between pools for fast recovery and redundancy.
- Additionally, a Cloud Sync Task runs daily to replicate many datasets from fast_pool to Storj S3 for offsite backup.
- There is also a replication task targeting an offsite TrueNAS system, accessible via Tailscale since both systems are within the same tailnet. This provides additional redundancy and disaster recovery.
- All replication and cloud sync tasks are managed and monitored via the TrueNAS web UI.
Virtual Machines
- Home Assistant: Runs as a VM for smart home automation.
- Resources: [CPU/RAM allocation]
- Storage: fast_pool/HomeAssistantOS
Docker Containers
| Container | Purpose |
|---|---|
| ai-stack | AI tools |
| authentik | Authentication |
| filebrowser | File management |
| immich | Photo management |
| tailscale | VPN |
| jellyfin | Media server |
| portainer | Docker management |
| nginx | Web server |
| tdarr | Media transcoding |
| gluetun | VPN container |
| prowlarr | Indexer manager |
| qbittorrent | Torrent client |
| radarr | Movie automation |
| sonarr | TV automation |
| wishparr | [Description] |
| open-webui | Web UI for containers |
| ollama | [Description] |
| searxng | Metasearch engine |
| wishper | [Description] |
Suggestions & Next Steps
- Document your network configuration (VLANs, IPs, etc.).
- Add backup strategies and disaster recovery plans.
- List user accounts and permissions.
- Detail monitoring and alerting setup.
- Describe update and maintenance procedures.
Questions to Consider
- What is your backup schedule and retention policy?
- How do you monitor disk health and performance?
TrueNAS provides alerts based on SMART metrics for each disk, allowing proactive monitoring and early detection of potential issues. - What is your upgrade process for TrueNAS and containers?
- Do you use any automation for maintenance tasks?
- How do you secure access to your TrueNAS
This post is licensed under CC BY 4.0 by the author.