Terra (Primary Compute)

Deep dive into the main workhorse of the homelab, covering hardware specs, ZFS storage architecture, and container standards.

Hardware & OS

Hardware & OS

Terra is the primary compute node for the Flora Family homelab, designed for high-concurrency tasks like AI processing, media transcoding, and ZFS storage management.

๐Ÿ–ฅ๏ธ Physical Specs

๐ŸŒฌ๏ธ Cooling (Noctua Standards)

Fan Connectivity Map

Sensor Description Connection
fan1 CHA_FAN1 back exhaust fans (2x80mm)
fan2 CPU_FAN bottom CPU fan (1x120mm)
fan3 CHA_FAN2 SDD drive cage fan (1x40mm)
fan4 CHA_FAN3 front intake fans (2x80mm)
fan5 ? Shows 0 rpm
fan6 W_PUMP HBA & NVMe fans (1x40mm + 2x20mm)
fan7 ? Shows 0 rpm
? CPU_OPT top CPU fan (1x120mm)
? AIO_PUMP empty
- - HDD drive cage fan (1x80mm)

๐Ÿ’พ Storage Media

โš™๏ธ OS & Software

ZFS Storage Architecture

ZFS Storage Architecture

Terra utilizes ZFS for primary data storage, leveraging its advanced features for data integrity, snapshots, and caching.

๐ŸŠ Pools

๐Ÿš€ main (SSD Pool)

๐Ÿ˜ bulk (HDD Pool)

๐Ÿ“‚ Key Datasets & Mounts

๐Ÿ›ก๏ธ Health & Maintenance

๐Ÿ” Automated Monitoring (smartd)

Drive health is monitored via smartmontools with automated short and long self-tests configured to email results. Test schedules are staggered to prevent resource contention.

๐Ÿงน ZFS Scrubbing

A scrub is performed automatically on the 3rd Sunday of every month to ensure data integrity and prevent bitrot.

Scrub Schedule (Cron): 24 0 15-21 * * root if [ $(date +\%w) -eq 0 ] && [ -x /usr/lib/zfs-linux/scrub ]; then /usr/lib/zfs-linux/scrub; fi

Container Architecture

Container Architecture

The Flora Family homelab relies on a standardized Docker deployment pattern to ensure security, portability, and ease of management.

๐Ÿ“‚ Directory Layout

To maintain a clean separation between configuration and state, Terra uses two primary directories:

๐Ÿ› ๏ธ Deployment Standards

๐Ÿ” Non-Root Execution

Every service is configured to run as a non-privileged user, with the specific exceptions of Watchtower and Beszel Agent (which require root/host socket access to monitor system health and container status).

Non-root execution is achieved through one of three methods:

  1. Standard user: flag: For images that support it (e.g., user: "51100:61100").
  2. Environment Variables: Many linuxserver.io images use PUID/PGID variables.
  3. Custom Dockerfile Builds: Used for "scratch" images or minimalist images (like OpenWebUI and SearXNG) to manually inject the desired UID/GID and install local CA certificates.

๐Ÿ”— Shared Infrastructure

Common backend services are standardized to simplify inter-container networking and permissions:

๐Ÿ”„ Lifecycle Management

Performance & Stability Optimizations

Performance & Stability Optimizations

This page documents the specific kernel and hardware tweaks applied to Terra (Ryzen 5950X / Ubuntu 24.04) to optimize for container performance, storage throughput, and long-term stability.

๐Ÿ›ก๏ธ Stability & Power Management (The "Golden Config")

Typical Current Idle (UEFI)

Processor C-State Limit (Kernel)

65W Eco Mode (Manual PBO)

โšก CPU & Power Performance

AMD P-State (Active Mode)

IRQ Balancing

๐Ÿง  Memory Tuning

Speed & Stability

Static Hugepages

๐Ÿ’พ I/O & Network Tuning (sysctl)

ZFS Write Buffering

Fluent-bit Batching (ClickHouse)

๐ŸŽฎ GPU Optimization (Quadro P2200)

Persistence Mode

Luna (Backup Server)

Luna (Backup Server)

Luna is the secondary compute and backup node for the Flora Family homelab. It serves as the primary replication target for Terra.

๐Ÿ–ฅ๏ธ System Status

๐Ÿ’พ Storage Architecture (ZFS)

๐ŸŒก๏ธ Monitoring

โš™๏ธ Software & Management

๐Ÿ› ๏ธ Recovery Notes (Feb 2026)