Comment by bradley13

14 hours ago

Just yesterday I was brainstorming with ChatGPT about this. I have an ancient QNAP plus a slightly less ancient NUC running PiHole, Wireguard and other services. Both need replaced, so why not combine them?

I don't know much about ZFS, but it sounds like I need to learn. Docker may have conquered the world, but I plan to stay with LXD for services.

The one thing I take issue with: an appliance like this runs 24/7. It should be low power and fanless. A processor like the N100 seems like the obvious choice.

I run zfs as the storage pool for my incus (next lxd) services. It is the ideal fit. Here is a list:

- Instant, zero-copy container cloning from images via Copy-on-Write. If you boot a new image like the existing ones it's seconds.

- Atomic, millisecond-level instance snapshots regardless of storage size

- Block-level container migration using native 'zfs send' and 'zfs receive', very short command lines and seems to work perfectly.

- Granular dataset nesting (every instance, image, and custom volume gets its own ZFS dataset). You can see every filesystem even on the host.

- Transparent, inline data compression (LZ4/ZSTD) enabled automatically per dataset. For services that don't change much, you might as well use a compressed image to make them even smaller.

- Mirroring / Raid

- Sub-volume sharing and direct management via native ZFS administration tools. If my home directory has a build area and a million files, I can just save time and put my home, pre cooked into a new machine and not copy or even rebuild on my new machine.

- Dedup keeps blocks with the same data as a reference. This costs a lot of memory and has not saved much for me as a lot of my images are similar and already shared I think, but it's cool.

  • > - Dedup keeps blocks with the same data as a reference. This costs a lot of memory

    To get around this you can add an SSD mirror as "Special" vdev, the dedup table will then be saved there, freeing up your memory.

It also surprised me that the author said "4 Cores, Xeon Server CPU can be had for cheap".

But the specs also said ECC RAM and I don't think the N100 supports that.

  • The N100 supports "In-band ECC" (IBECC), which uses regular non-ECC RAM at the cost of less available memory and a 10-20% performance drop. It’s unclear how well it works, and almost nobody uses it.

  • > But the specs also said ECC RAM and I don't think the N100 supports that.

    If I remember correctly it can in theory but in practice I have never seen a N100 with ECC.