nixfred hexagon logo

hex

A self-hosted AI and homelab platform, delivered.
Written by Proxmox Expert and Larry for Fred Nix · data captured live 2026-11-13 10:47 PM EST · milestone 1 draft
36 guests32 threads123 GiB4 backup copies7.2% avg CPU
Chapter 01

Executive summary

This is the delivery document for hex: one Minisforum MS-S1 MAX running Proxmox VE 9.2.26, one Beelink running Proxmox Backup Server 4.2.9-1, and everything that lives on them. We built it, we run it, and every number on these pages was pulled live from the machines on 2026-11-13 at 10:47 PM EST.

Proxmox Expert

I run the iron: the hypervisor, the backup server, the storage pools, the UPS logic and the four-copy backup chain. hex is carrying 24 running guests and it is bored. Seven-day average CPU is 7.2%. Load average 4.20 / 4.14 / 3.47 on 32 threads.

Larry

I live in this machine. I built NixNet, the hex.sessions spawner that hands out throwaway NixOS agent containers, Larry Live, ears, qgate and onionbox. When something on hex breaks at 3 AM, I am usually the one already logged in.

36
guests on one box
12 VMs, 24 containers; 24 running, 7 templates
7.2%
average CPU, last 7 days
peak 30-min bucket 55% on 32 threads
123 GiB
unified memory
39 GiB average in use over the week
3.5 TiB
NVMe thin pools
local-lvm 20% / fast-lvm 40% used
4
independent backup copies
PBS primary, 8TB vault, SanDisk go disk, Backblaze B2
20.1x
PBS dedup factor
5.4 TiB of logical backups in 276 GiB on the go disk
1138
snapshots across 6 datastores
last 400 PBS tasks: 388 OK, 10 reader disconnects, 1 owner-check sync error (fixed)
0
failed systemd units
on both hex and back at capture

The week in one chart

Source: PVE RRD /nodes/hex/rrddata timeframe=week cf=AVERAGE, 336 buckets

What you are getting

Honest caveats

Memory is overcommitted on paper: running guests are assigned 208 GiB against 123 GiB physical, mostly because CT 300 is allowed 80 GiB for model loading. Actual use averaged 39 GiB. Swap shows 12.1 GiB in use (16 GiB zram + 8 GiB disk). The old OWC copy reports 4 ZFS data errors and is being retired into the vault. Anything we could not prove live is tagged unverified and collected in Appendix: unverified facts.

Chapter 02

Who built this: the delivery team

In progress. This chapter is generated from the same data model and lands in batch 2. Its cross-links already resolve to the inventory.
Chapter 03

Hardware

Proxmox Expert

Two boxes. One does the work, one remembers everything. The work box has more memory than most racks I have touched, and it idles at single-digit CPU.

hex

Chassis
Minisforum MS-S1 MAX
CPU
AMD Ryzen AI MAX+ 395 w/ Radeon 8060S, 16 cores / 32 threads, boost to 5188 MHz, L2 16 MiB, L3 64 MiB (2 instances)
Memory
123.5 GiB usable unified LPDDR (128 GB fitted). GPU sees 2 GiB carve-out + 80 GiB GTT.
GPU
AMD Radeon 8060S (Strix Halo iGPU), passed to CT 300 ai and CT 320 ears as /dev/dri/renderD128 (and /dev/kfd for CT 300)
Platform
pve-manager 9.2.26 (proxmox-ve 9.2.0), kernel 7.0.14-28-pve, pve-qemu-kvm 11.1.3-1, lxc-pve 7.0.0-2, zfsutils 2.4.4-pve1; EFI, Secure Boot off; cluster nixnet (single node, quorate)
I/O
2x Thunderbolt 5 (Intel JHL9580 Barlow Ridge 80G) + USB4 host routers
Uptime
7.2 days

back

Chassis
Beelink EQ (DMI: AZW EQ)
CPU
Intel Core i5-1235U (10 cores, 12 threads)
Memory
31 GiB, about 28 GiB of it page cache serving chunk reads
Platform
proxmox-backup-server 4.2.9-1, kernel 7.0.14-26-pve, zfsutils 2.4.4-pve1
Uptime
6 days, 10:32
hex · Minisforum MS-S1 MAX Ryzen AI MAX+ 395 · 16C/32T · 123 GiB unified · Radeon 8060S nvme1 Kingston 2TBboot · local · local-lvm nvme0 Samsung 980 PROfast-lvm nic0 RTL8127 10GbEvmbr0 LAN · links at 1G nic1 RTL8127 10GbEx.x.x.x/30 direct USB-C: Seagate FireCuda X Vault 8TBZFS pool vault · NFS vault/pbs to back back · Beelink EQ Core i5-1235U · 10C/12T · 31 GiB · PBS 4.2.9 nvme0 Crucial P310 1TB · datastore hex USB SanDisk Extreme 1TB · usb-sandisk USB FireCuda 1TB HDD · usb-copy (retiring) USB OWC Express 1M2 · owc (retiring) x.x.x.x/30 · 1 Gbps NFS 4.2 vault/pbs

Every disk

HostModelDevSizeRole and healthStorage / datastore
hexKINGSTON OM8TAP42048K1-A00
NVMe PCIe 4 QLC, DRAM-less
nvme1n11.86 TiBboot + VG pve (root 50G, swap 8G, thin pool pve/data -> local, local-lvm)
wear 0% · 21.6 TB read / 3.5 TB written · 13 power-on h counter suspect · 22 °C
local, local-lvm
hexSamsung SSD 980 PRO with Heatsink 2TB
NVMe PCIe 4 TLC
nvme0n11.82 TiBVG fast, thin pool fast/data -> fast-lvm (ex-PS5 drive per brief)
wear 0% · 46.4 TB read / 8.6 TB written · 3,488 power-on h · 29 °C
fast-lvm
hexSeagate FireCuda X Vault
8TB external USB-C drive, bus-powered (in hex's powered USB-C port)
sda7.27 TiBZFS pool vault (ashift 12, lz4): vault/pbs (NFS to back), vault/archive, vault/pve (vault-iso)
SMART not readable over this USB bridge
vault-iso, vault (8TB)
backCrucial P310 1TB (CT1000P310SSD8)
NVMe, DRAM-less
nvme0n1932 GiBPBS root (ext4 pbs-root 906.5G): datastore hex at /datastore/hex, B2 cache loop file
hex (primary), B2 offsite
backSanDisk Extreme 1TB USB SSD (Extreme 55AE, WD SN580E inside)
USB 3.2 Gen 2 SSD, removable
sda931 GiBremovable PBS datastore usb-sandisk, the grab-and-go disk
fio tested on hex Nov 13 11:45 AM-12:15 PM EST; 100 GiB crc32c verify, 0 errors
usb-sandisk (go disk)
backSeagate FireCuda HDD 1TB (USB)
USB HDD
sdb932 GiBext4 /mnt/firecuda: PBS datastore usb-copy (85% full), being retired into vault
retiring
usb-copy (retiring)
backOWC Express 1M2 (USB NVMe enclosure, 1TB)
USB SSD
sdd932 GiBZFS pool owc (zstd): datastore owc, being retired into vault
retiring
pool ONLINE but zpool status reports 4 data errors (after the Nov 13 18:18 USB re-enumeration suspend)
owc (retiring)
Source: smartctl -i -A, lsblk, zpool status, proxmox-backup-manager; SanDisk numbers from the Nov 13 fio log

Network interfaces

HostNICChipLinkNotes
hexnic0Realtek RTL8127 10GbE1000Mb/s full10G-capable port negotiates 1G (switch or cable side, per brief)
hexnic1Realtek RTL8127 10GbE1000Mb/s fulldirect cable to back, x.x.x.x/30 (back side is 1G only)
hexwlp99s0MediaTek MT7925 Wi-Fi 7downunused
backnic0Realtek RTL8111/8168 Gigabit1000Mb/s fullLAN
backnic1Realtek RTL8111/8168 Gigabit1000Mb/s fulldirect link to hex; the 1 Gbps ceiling of every backup

hex ships two 10GbE ports and both negotiate at 1 Gbps: nic0 because of the LAN switch side, nic1 because back's Realtek RTL8111 tops out at gigabit. That 1 Gbps direct link is the ceiling of every backup, sync and NFS byte on this platform, and it never touches the LAN. The router is a UniFi Dream Router at x.x.x.x model from Fred; router not queried; the switch model is not captured.

Go disk benchmark

Source: fio 3.39 on hex, Nov 13 2026 11:45 AM-12:15 PM EST

Temperatures at capture

Source: /sys/class/hwmon at 10:48 PM EST

The CPU package read 86 °C at capture with load around 4; that is within AMD's limits for this part but it is the warmest number on the page, so it goes on the roadmap as something to watch.

Power

hex, back and the router sit on a GoldenMate 1000VA LiFePO4 UPS model and the ~45-60 min at ~120 W runtime are from Fred. The UPS has no data port, so power-watch detects mains loss by asking two laptops that are not on the UPS whether their chargers are live.

Chapter 04

What Proxmox VE is

In progress. This chapter is generated from the same data model and lands in batch 2. Its cross-links already resolve to the inventory.
Chapter 05

What Proxmox Backup Server is

In progress. This chapter is generated from the same data model and lands in batch 2. Its cross-links already resolve to the inventory.
Chapter 06

Network map

In progress. This chapter is generated from the same data model and lands in batch 2. Its cross-links already resolve to the inventory.
Chapter 07

Storage architecture

Proxmox Expert

Three physical tiers, one rule: guest disks live on NVMe thin pools, backups never live on the box they protect, and the two old USB copies on back are being retired into the 8TB vault.

Kingston 2TB NVMe (nvme1) Samsung 980 PRO 2TB (nvme0) FireCuda X Vault 8TB (USB-C) LVM VG pve LVM VG fast ZFS pool vault (lz4) root+local thin data = local-lvm thin data = fast-lvm vault/pbs vault/archive vault/pve 32 guests incl. templates, /srv/sessions CT 103 · CT 300 · VM 301 · CT 410 NFS 4.2 over x.x.x.x/30 → back datastore vault vault-iso

Storage inventory

StorageTypePhysical diskBackingSizeUsedAllocated to guestsGuests
localdirKINGSTON OM8TAP42048K1-A00/var/lib/vz (pve-root ext4 50G)48.9 GiB11.2 GiB (22.9%)-none
local-lvmlvmthinKINGSTON OM8TAP42048K1-A00VG pve, thin pool data (<1.76 TiB)1.76 TiB356 GiB (19.8%)1.34 TiB100 104 106 110 111 120 121 200 310 320 330 340 350 351 352 353 354 355 360 370 380 381 382 390 391 392 393 395 396 397 400 490
fast-lvmlvmthinSamsung SSD 980 PRO with Heatsink 2TBVG fast, thin pool data (<1.70 TiB)1.70 TiB694 GiB (39.9%)1.73 TiB103 300 301 410
vault-isodirSeagate FireCuda X Vault/vault/pve (ZFS vault/pve)6.44 TiB8.5 GiB (0.1%)-none
pbs-backpbsCrucial P310 1TB (CT1000P310SSD8)PBS x.x.x.x datastore hex891 GiB573 GiB (64.3%)-none
pbs-sandiskpbsSanDisk Extreme 1TB USB SSD (Extreme 55AE, WD SN580E inside)PBS x.x.x.x datastore usb-sandisk (read-only token role DatastoreReader)916 GiB308 GiB (33.7%)-none
Source: pvesm status, lvs, storage.cfg (credentials stripped)

Thin provisioning: what guests asked for versus what they wrote

local-lvm holds 50 guest volumes (including 4 MiB EFI and cloud-init volumes) for 32 guests. Guests were promised 1.34 TiB on a 1.76 TiB pool, and have actually written 356 GiB. fast-lvm is the fast tier: 1.73 TiB promised on 1.70 TiB, 694 GiB written. Thin metadata is at 0.86% and 1.47%. Overcommit is deliberate; the 900G rootfs of CT 300 ai is mostly model cache that is never backed up ("never back up what we can download").

local-lvm (Kingston)

fast-lvm (Samsung)

LVM snapshots held

Source: lvs Data% per thin volume x LSize; snapshots excluded

ZFS pool vault

Pool vault: 7.27T, 728G allocated, 9% full, 0% fragmentation, ONLINE, "No known data errors". Single-disk by design: it is a copy target, never the only copy.

DatasetUsedCompressPurpose
vault/pbs566G1.02xNFS export to back (x.x.x.x/32, rw, sync, no_root_squash) = PBS datastore vault sync=disabled (temporary, for the bulk fill; to be reset to standard)
vault/archive154G1.11xarchive of old back FireCuda non-PBS files (190.36 GB rsynced Nov 13)
vault/pve8.45G1.00xPVE dir storage vault-iso (ISOs + CT templates)

The NFS export is pinned to one client: /vault/pbs x.x.x.x/32(rw,sync,no_root_squash,no_subtree_check). back mounts it with a systemd automount (nfs4.2, hard, nofail), so a missing vault never blocks back's boot.

Backup datastores (on back)

DatastoreDiskUsedDedupGroups / snapshotsStatus
hex (primary)Crucial P310 1TB (CT1000P310SSD8)573 GiB of 891 GiB16.92x48 / 216active
vault (8TB)Seagate FireCuda X Vault566 GiB of 6.98 TiBGC not run yet48 / 216active, created Nov 13; first full verify running at capture (29/48 groups, 60.42%)
usb-sandisk (go disk)SanDisk Extreme 1TB USB SSD (Extreme 55AE, WD SN580E inside)308 GiB of 916 GiB20.08x29 / 157active, mounted
B2 offsiteBackblaze B25.0 GiB of 62.4 GiB19.35x43 / 206active
owc (retiring)OWC Express 1M2 (USB NVMe enclosure, 1TB)562 GiB of 893 GiB16.92x43 / 206retiring; pool reports 4 data errors
usb-copy (retiring)Seagate FireCuda HDD 1TB (USB)735 GiB of 916 GiB15.39x43 / 137retiring; 85% full
Source: PBS /admin/datastore/*/status and /gc (index-data-bytes ÷ disk-bytes)
Larry

Dedup is the party trick. Every guest backs up every night, and PBS only keeps chunks it has never seen. That is why ten-plus TiB of logical backups fit on a 1TB thumb-sized SSD with room to spare.

Chapter 08

Guest register overview

In progress. This chapter is generated from the same data model and lands in batch 2. Its cross-links already resolve to the inventory.
Chapter 09

Cognition Mesh: VMs 104, 110, 111, 120, 121

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 10

VM 301 umbrel: the fleet NAS

VM 301runningumbrelonboot

umbrelOS 2.0.1. Serves NFSv4/SMB for the fleet from ZFS pool tank on the 600G scsi1 disk (Projects, Sessions, scratch, Google Drive share, /srv/git). LAN x.x.x.x + x.x.x.x, tailnet nas x.x.x.x.

Proxmox Expert

On Nov 11 at 11:15 PM I created this VM from the official umbrelOS raw image, sha256 verified. By 12:52 AM on Nov 12 it had taken over as the fleet NAS: same IP, same export names, same uid, a 2-minute outage (12:46-12:48 AM) plus a 3-minute reboot test. The old NAS VM 501 was destroyed at 1:21 AM only after a verified final PBS snapshot.

Fleet clientsgus · vic · fnix · whi · red · hexNFSv4 / SMB / ssh nas VM 301 umbrel = nasx.x.x.x + x.x.x.x · tailnet x.x.x.x4 vCPU · 8 GiB · umbrelOS 2.0.1 scsi0 256G OSfast-lvm scsi1 600G tankZFS in guest Samsung 980 PRO 2TBVG fast · thin pool Nightly 03:00 vzdump→ PBS hex → vault · go disk · B2

Resources

vCPU
4
Memory
8 GiB (balloon 0), 7.8 GiB in use now
CPU now
2.4% of its vCPUs
Uptime
1.9 days
Guest agent
none (umbrelOS ships no qemu-guest-agent)
Host
hex

Disks

SlotStoragePhysicalVolumeSizeThin usedBacked up
scsi0fast-lvmSamsung SSD 980 PRO with Heatsink 2TBvm-301-disk-1256G7.0%yes
scsi1fast-lvmSamsung SSD 980 PRO with Heatsink 2TBvm-301-disk-2600G33.0%yes

The 600G tank disk (serial UMBRELTANK01) carries a native ZFS pool inside the guest holding Projects, Sessions, scratch, the Google Drive share and the git remotes. It is 33.0% written. Compression was switched to zstd on Nov 12; ZFS dedup stays off because zdb -S measured only 1.33x and the VM has 8 GiB. hex itself mounts the shares at /mnt/nas/Projects, /mnt/nas/Sessions and /mnt/nas/scratch, which is how hex.sessions containers reach project folders.

Network

NICBridgeNetworkAddress
net0vmbr0Home LANdhcp/unset

DHCP on the Home LAN hands it x.x.x.x; a second address x.x.x.x carries the legacy NAS IP so old clients never noticed the swap. On the Tailscale tailnet it owns the MagicDNS name nas at x.x.x.x.

Backup coverage

Jobs: hex-pbs-nightly (03:00, snapshot mode). Both disks are included (backup=0 was removed from scsi1 on Nov 12). On the go disk filter: yes.

DatastoreStateSnapshotsNewest
hex (primary)held22026-11-13 03:00 EST
vault (8TB)held22026-11-13 03:00 EST
usb-sandisk (go disk)held22026-11-13 03:00 EST
B2 offsiteheld22026-11-13 03:00 EST
owc (retiring)held22026-11-13 03:00 EST
usb-copy (retiring)held22026-11-13 03:00 EST

Restore proof: on Nov 13 at 3:42 PM EST its qemu-server.conf was restored from the go disk and matched the live config. The full rollback for the old NAS, vm/501/2026-11-12T06:07:31Z, is still on hex (primary) and verified ok.

Source: qm config 301, cluster/resources, lvs, PBS groups on all 6 datastores; history from change logs Nov 11-13

Why it exists

The NAS used to be its own FygoOS VM whose ZFS features umbrelOS could not import read-write. Rather than gamble on an in-place upgrade, we copied 225 GB into a fresh pool in 21 minutes, cut over on the LAN, then moved the tailnet identity. Every client mounts by name, so the next migration is just as boring.

Chapter 11

Core VMs at rest: mind 100 and box 200

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 12

CT 300 ai: Ollama and ComfyUI on the 8060S

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 13

NixNet.dev: GPU sharing for coworkers (CT 310, 340, 490)

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 14

CT 103 Pi-hole DNS

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 15

Flox labs: CT 350, 352-355 and VM 351

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 16

VM 360 nixos

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 17

HyperNix: CT 370 and stamp-lab CT 382

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 18

CT 381 Larry Live

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 19

CT 380 rig

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 20

CT 320 ears

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 21

Quarantine VM 400 and qgate CT 330

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 22

CT 410 onionbox

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 23

VM 106 imprint-lab

In progress. This chapter is generated from the same data model and lands in batch 3. Its cross-links already resolve to the inventory.
Chapter 24

hex.sessions: ephemeral NixOS agent containers (390-397, 395)

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 25

Larry lives in the machine

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 26

Infisical secrets vault on whi

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 27

Forgejo code forge

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 28

An AI system that backs itself up

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 29

Backup architecture and data flow

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 30

Offsite: Backblaze B2

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 31

The go disk and the 8TB vault

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 32

Recovery keys and restore tests

In progress. This chapter is generated from the same data model and lands in batch 4. Its cross-links already resolve to the inventory.
Chapter 33

Power resilience: UPS and power-watch

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 34

Monitoring, alerts and watchdogs

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 35

The bot fleet that runs it

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 36

Security posture

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 37

Resource headroom: the box is yawning

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 38

Costs and power

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 39

DR runbook

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 40

Timeline: November 2026

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 41

Roadmap

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 42

Appendix A: full inventory (generated)

Generated straight from the data model. Each row is a link target for the cross-references in this document; guests with a full chapter link onward.

IDNameStatevCPUGiBStorageNetworkBackup
100VMmind
mind
stopped811.7local-lvmHome LANweekly, 6/6 stores
103CTpihole
Pi-hole DNS
running10.5fast-lvmHome LANnightly, 6/6 stores
104VMcm
Cognition Mesh gateway (cm-gw)
running212.0local-lvmHome LANnightly, 6/6 stores
106VMimprint-lab
Imprint lab
stopped23.0local-lvmHome LANweekly, 5/6 stores
110VMcm-pro
Cognition Mesh customer stack (cm-pro)
running48.0local-lvmHome LANnightly, 6/6 stores
111VMcm-pro-upg
Cognition Mesh solo (cm-pro-upg)
running46.0local-lvmHome LANnightly, 6/6 stores
120VMcm-t1
Cognition Mesh test tier 1 (cm-t1)
running45.0local-lvmHome LANnightly, 6/6 stores
121VMcm-t2
Cognition Mesh test tier 2 (cm-t2)
running45.0local-lvmHome LANnightly, 6/6 stores
200VMbox
box
stopped27.8local-lvmHome LANweekly, 6/6 stores
300CTai
ai: Ollama + ComfyUI
running1680.0fast-lvmHome LANnightly, 6/6 stores
301VMumbrel
umbrel = the NAS "nas"
running48.0fast-lvmHome LANnightly, 6/6 stores
310CTnixnet
nixnet: NixNet.dev portal
running48.0local-lvmNixNet / labs isolated bridge NixNet sandbox bridgenightly, 6/6 stores
320CTears
ears: speech to text
running46.0local-lvmHome LANnightly, 6/6 stores
330CTqgate
qgate
running10.2local-lvmHome LAN Quarantine bridgenightly, 6/6 stores
340CTnixnet-jupyter
nixnet-jupyter
running23.0local-lvmNixNet sandbox bridgenightly, 6/6 stores
350CTflox-lab
flox-lab
running24.0local-lvmNixNet / labs isolated bridgenightly, 6/6 stores
351VMflox-mgmt
flox-mgmt
running46.0local-lvmNixNet / labs isolated bridgenightly, 6/6 stores
352CTflox-builder
flox-builder
running44.0local-lvmNixNet / labs isolated bridgenightly, 6/6 stores
353CTacme-canary-1
acme-canary-1
running12.0local-lvmNixNet / labs isolated bridgenightly, 6/6 stores
354CTacme-prod-1
acme-prod-1
running12.0local-lvmNixNet / labs isolated bridgenightly, 6/6 stores
355CTacme-prod-2
acme-prod-2
running12.0local-lvmNixNet / labs isolated bridgenightly, 6/6 stores
360VMnixos
nixos
running616.0local-lvmHome LANnightly, 6/6 stores
370CThypernix
hypernix
running48.0local-lvmHyperNix bridgenightly, 6/6 stores
380CTrig
rig
stopped1216.0local-lvmNixNet / labs isolated bridgenightly, 5/6 stores
381CTlarrylive
larrylive
running12.0local-lvmLarry Live bridgenightly, 6/6 stores
382CTstamp-lab
stamp-lab
running88.0local-lvmNixNet / labs isolated bridgenightly, 5/6 stores
390CTsession-template
hex.sessions template v2
template22.0local-lvmweekly, 5/6 stores
391CTsession-template-nas
hex.sessions NAS template v1
template22.0local-lvmweekly, 5/6 stores
392CTsession-template
hex.sessions template
template22.0local-lvmnone, 5/6 stores
393CTsession-template-nas
hex.sessions NAS template
template22.0local-lvmnone, 5/6 stores
395CTsessions-builder
sessions-builder
stopped812.0local-lvmNixNet / labs isolated bridgeweekly, 5/6 stores
396CTsession-template
hex.sessions template (current)
template22.0local-lvmnone, 5/6 stores
397CTsession-template-nas
hex.sessions NAS template (current)
template22.0local-lvmnone, 5/6 stores
400VMquarantine
quarantine
running48.0local-lvmQuarantine bridgenightly, 5/6 stores
410CTonionbox
onionbox
running24.0fast-lvmHome LANnightly, 6/6 stores
490CTsbx-base
sbx-base
template21.5local-lvmNixNet sandbox bridgeweekly, 5/6 stores

Networks

NetworkCIDRhex addressGuests
Home LAN
Flat home LAN behind the UniFi Dream Router; hex nic0 bridged as vmbr0 at 1 Gbps
x.x.x.x/24x.x.x.x100 103 104 106 110 111 120 121 200 300 301 320 330 360 410
hex <-> back direct link
Point-to-point cable for all backup traffic, NFS vault export and power-watch shutdown of back. 1 Gbps (back NIC limit).
x.x.x.x/30x.x.x.x
NixNet / labs isolated bridge
No physical port. NAT out vmbr0; nftables table inet nixnet drops private/CGNAT ranges except Ollama x.x.x.x:port.
x.x.x.x/24x.x.x.x310 350 351 352 353 354 355 380 382 395
Quarantine bridge
Host has no IP here. Only egress is CT 330 qgate (x.x.x.x), which blocks LAN, tailnet and hex.
x.x.x.x/24-330 400
HyperNix bridge
HyperNix control plane, rules /etc/nixnet/hypernix.nft
x.x.x.x/24x.x.x.x370
Larry Live bridge
Larry Live hub, rules /etc/nixnet/larrylive.nft
x.x.x.x/24x.x.x.x381
vmbr5 (unassigned)
Defined on hex, state UNKNOWN, no guest NIC attached in any config (purpose unverified)
x.x.x.x/24x.x.x.x
NixNet sandbox bridge
Code-interpreter sandboxes; CT 340 reachable only from CT 310 on :port, no outbound
x.x.x.x/24x.x.x.x310 340 490
Tailscale tailnet
[tailnet name redacted]. 36 nodes listed in hex tailscale status at capture time.
x.x.x.x/10x.x.x.x

Backup datastores

DatastorePathRoleGroups held
hex (primary)/datastore/hex (ext4 on back NVMe)Primary target of every nightly vzdump; verify-new onct/103 ct/300 ct/310 ct/320 ct/330 ct/340 ct/350 ct/352 ct/353 ct/354 ct/355 ct/370 ct/380 ct/381 ct/382 ct/390 ct/391 ct/392 ct/393 ct/395 ct/396 ct/397 ct/410 ct/490 host/back host/gus-config host/hex host/vic-config host/whi vm/100 vm/101 vm/102 vm/104 vm/105 vm/106 vm/107 vm/110 vm/111 vm/120 vm/121 vm/200 vm/301 vm/351 vm/360 vm/365 vm/400 vm/501 vm/502
vault (8TB)/mnt/vault/store over NFS 4.2 from hex vault/pbsDaily local copy (sync vault-from-hex 06:30); replaces owc + usb-copyct/103 ct/300 ct/310 ct/320 ct/330 ct/340 ct/350 ct/352 ct/353 ct/354 ct/355 ct/370 ct/380 ct/381 ct/382 ct/390 ct/391 ct/392 ct/393 ct/395 ct/396 ct/397 ct/410 ct/490 host/back host/gus-config host/hex host/vic-config host/whi vm/100 vm/101 vm/102 vm/104 vm/105 vm/106 vm/107 vm/110 vm/111 vm/120 vm/121 vm/200 vm/301 vm/351 vm/360 vm/365 vm/400 vm/501 vm/502
usb-sandisk (go disk)removable, /mnt/datastore/usb-sandiskGrab-and-go copy of important guests + host configs (sync 07:00 + run-on-mount)ct/103 ct/300 ct/310 ct/320 ct/330 ct/340 ct/350 ct/352 ct/353 ct/354 ct/355 ct/370 ct/381 ct/410 host/back host/gus-config host/hex host/vic-config host/whi vm/100 vm/104 vm/110 vm/111 vm/120 vm/121 vm/200 vm/301 vm/351 vm/360
B2 offsiteBackblaze B2 S3 bucket nixnet-hex-vms, prefix pbs-hex-offsite/, region us-east-005; 64G local cacheOffsite copy, sync hex-to-b2 09:00 (all groups), rate-out 20 MiBct/103 ct/300 ct/310 ct/320 ct/330 ct/340 ct/350 ct/352 ct/353 ct/354 ct/355 ct/370 ct/380 ct/381 ct/382 ct/390 ct/391 ct/392 ct/393 ct/395 ct/396 ct/397 ct/410 ct/490 vm/100 vm/101 vm/102 vm/104 vm/105 vm/106 vm/107 vm/110 vm/111 vm/120 vm/121 vm/200 vm/301 vm/351 vm/360 vm/365 vm/400 vm/501 vm/502
owc (retiring)/owc/pbs (ZFS)Old local copy, sync owc-from-hex 06:30; retiring after vault verifyct/103 ct/300 ct/310 ct/320 ct/330 ct/340 ct/350 ct/352 ct/353 ct/354 ct/355 ct/370 ct/380 ct/381 ct/382 ct/390 ct/391 ct/392 ct/393 ct/395 ct/396 ct/397 ct/410 ct/490 vm/100 vm/101 vm/102 vm/104 vm/105 vm/106 vm/107 vm/110 vm/111 vm/120 vm/121 vm/200 vm/301 vm/351 vm/360 vm/365 vm/400 vm/501 vm/502
usb-copy (retiring)/mnt/firecuda/pbs (ext4 HDD)Old local copy, sync hex-to-usb 06:00; retiring after vault verifyct/103 ct/300 ct/310 ct/320 ct/330 ct/340 ct/350 ct/352 ct/353 ct/354 ct/355 ct/370 ct/380 ct/381 ct/382 ct/390 ct/391 ct/392 ct/393 ct/395 ct/396 ct/397 ct/410 ct/490 vm/100 vm/101 vm/102 vm/104 vm/105 vm/106 vm/107 vm/110 vm/111 vm/120 vm/121 vm/200 vm/301 vm/351 vm/360 vm/365 vm/400 vm/501 vm/502
Chapter 43

Appendix B: glossary

In progress. This chapter is generated from the same data model and lands in batch 5. Its cross-links already resolve to the inventory.
Chapter 44

Appendix C: unverified facts