Computing/NAS/Software

From Cricalix.Net
Revision as of 07:48, 19 August 2026 by Cricalix (talk | contribs) (→‎VMs and Containers)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Hardware

Core is a https://nascompares.com/review/cwwk-q670-8-bay-gen5-nas-vpro-mobo-review/ (archive link); twin 2.5G network ports, a lot of SATA ports, and lots of compromises.

Network

Used https://mkdocs-4960c2.gitlab.io/lab/incus/incus_network_issues_walkthrough/ (archive link; apparently AI generated, but functional enough) as a guide to reconfiguring the Fedora OS that's running the NAS so that br0 is the primary interface for Incus to use directly. This enables host-container communication - macvlan doesn't allow this, and the default Incus bridge uses NAT (and I don't want to deal with port forwards)

Host

The host uses enp7s0 for connectivity

[connection]
id=enp7s0
uuid=4d354481-a088-3449-8d28-35b96ac1a3d4
type=ethernet
autoconnect-priority=-999
interface-name=enp7s0
timestamp=1775146834

[ethernet]

[ipv4]
address1=192.168.0.181/24
dns=192.168.0.1;
gateway=192.168.0.1
method=manual

[ipv6]
addr-gen-mode=default
method=auto

[proxy]

Host Bridge

The bridge is configured with br0 having a static IP, and a slave interface is set up for enp8s0 so that the bridge sits on physical network port.

[connection]
id=br0
type=bridge
interface-name=br0

[bridge]
forward-delay=0
stp=false

[ipv4]
address1=192.168.0.2/24
dns=192.168.0.1;
gateway=192.168.0.1
method=manual

[ipv6]
addr-gen-mode=default
method=auto
[connection]
id=br0-slave
type=ethernet
controller=br0
interface-name=enp8s0
port-type=bridge

[ethernet]

[bridge-port]

Incus Bridge

Incus's default bridge was removed when setting up the new configuration (older install where the default bridge had been accepted. A custom physical interface was added, based on the br0 bridge. Profiles were then changed to use the new ibr0.

incus network create ibr0 --type=physical parent=br0

VMs and Containers

Unraid VM (deprecated / removed)

Unraid needs a USB stick to boot from, as it uses the serial number of the stick as a license key. Ended up with plopkexec in the boot path for the qemu-backed VM (pc-q35)

devices:
  iso-volume:
    boot.priority: '10'
    pool: machines
    source: plopkexec64.iso
    type: disk
  bootdrive:
    required: 'true'
    serial: 20CF302E2382F150663CA637
    type: usb
  sata:
    address: '00:17.0'
    type: pci

Whole SATA controller is passed through, removing the devices from the view of the host OS.

2026-07: Unraid went out of maintenance contract, and I wasn't using the featureset. Migrated to Snapraid + Mergerfs. NFS exports from the homelab box, SMB exports from an incus system container (not an application container) that has the mergerfs volume bind mounted.

HomeAssistant (deprecated / removed)

Default HAOS setup, but with two USB devices passed through from the host for Zigbee and Matter support.

devices:
  matter-antenna:
    productid: 831a
    type: usb
    vendorid: 303a
  zigbee:
    productid: 55d4
    type: usb
    vendorid: 1a86

The Incus web UI can do very silly things when adding USB devices; doing it via the YAML editor is safer. Silly being defined as not allowing settings for the passed-through device, and 'usb' seemed to grab everything including the pass through for the Unraid VM (making Unraid unhappy).

2026-06: HA was moved to a Pi5 instead, so that I can fiddle with the homelab and not break HA at inopportune times.