Live data from Hacker News

How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

neil.computer

31–40 of 265 posts

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#31
post #7

Not a great time price-wise to be building a NAS, but I have been doing so for the last two weeks. Inside a Jonsbo N6 case, which is pretty nice with an 8x SATA backplane and drive bays (unlike the earlier Jonsbo variants). I ended up on shucking 4x the 14 TB WD Elements Desktop. They contain helium drives, the WD140EDGZ in my case, and are about a third cheaper than 4x the 12 TB WD Red Plus drives (which are air-fil…

I've been thinking about building my own NAS as well. Mind sharing how much did you pay for those hard drives, and what motherboard did you choose?

https://diskprices.com/ is great for this

You have SATA or SAS to pick from. The CPU requirements for a storage server are not high. On a typical ATX board you have motherboard SATA and can put SAS controllers in the spare PCIe slots.

My first "NAS" was two 22TB hard drives in a ZFS pool on my motherboard SATA

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#32
post #15

[flagged]

Run ZFS backed filestore on FreeBSD, have migrated it to/from Debian. At work and home, not petabyte scale but certainly multi hundred terrabyte. Over 15 years, on over 50 hosts/NAS/SAN instances, different hardware. Run ZFS on Raspberry Pi, on home builds, on Intel, on AMD, on other ARM chipsets. I think you're over-stating things. Debian is fine for this. I do think FreeBSD is a better platform for myself. The code…

> You can not do this with BTRFS

There is actually a btrfs driver for Windows [0]. I've used it a few times before, and it works surprisingly well. You probably wouldn't want to use it for any serious work, but that's not because it's technically flawed, but more because it isn't extensively tested or commercially-supported.

[0]: https://github.com/maharmstone/btrfs

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#33
post #23
post #8

Yeah no. When it comes to backups and data storage, I would rather use a proven reliable system that’s been used and tested by millions of other users, keep these hacky stuff for your hyperland set up.

> I would rather use a proven reliable system that’s been used and tested by millions of other users You're describing ZFS.

Not really, zfs is part of it, but not the whole picture, you as a user you need more than just a file system.

Truenas for example add replication, external cloud sync, gui (yes it’s important not to wipe your data with wrong command), HA, custom caching, containers to extend ot with other apps, raid-z expansion with openzfs, and other for monitoring, user management and a lot more.

Other solutions also add more than just a zfs with ssh access.

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#34

Tangential, but about this: > I am creating a RAIDZ1 (RAID 5) zpool. That means 1 drive redundancy in-case of failure A friend once told me that RAID5 has a high latency cost, because every Write requires a Read to update the stripes across all drives, and while this made sense when drives were expensive, nowadays you might as well do a RAID10 instead, and trade space for latency. Is this still true with ZFS RAIDZ1?

The RAID5 write hole is not present in RAIDZ1 I believe.

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#35

Tangential, but about this: > I am creating a RAIDZ1 (RAID 5) zpool. That means 1 drive redundancy in-case of failure A friend once told me that RAID5 has a high latency cost, because every Write requires a Read to update the stripes across all drives, and while this made sense when drives were expensive, nowadays you might as well do a RAID10 instead, and trade space for latency. Is this still true with ZFS RAIDZ1?

It's complicated, but https://jro.io/capacity/ actually walks you though how it works, towards the middle of the page.

``` Unlike traditional RAID5 and RAID6 implementations, ZFS supports partial-stripe writes. This has a number of important advantages but also presents some implications for space calculation that we'll need to consider. Supporting partial stripe writes means that in our 7wZ2 vdev example, we can support a write of 12 total sectors even though 12 is not an even multiple of our stripe width (7). 12 is evenly divisible by +1 (3 in this case), so we don't even need any padding. We would have a single full stripe of 7 sectors (2 parity sectors plus 5 data sectors) followed by a partial stripe with 2 parity sectors and 3 data sectors. This will be important because even though we can support partial stripe writes, every stripe (including those partial stripes) need a full set of p parity sectors. ```

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#36
post #7

Not a great time price-wise to be building a NAS, but I have been doing so for the last two weeks. Inside a Jonsbo N6 case, which is pretty nice with an 8x SATA backplane and drive bays (unlike the earlier Jonsbo variants). I ended up on shucking 4x the 14 TB WD Elements Desktop. They contain helium drives, the WD140EDGZ in my case, and are about a third cheaper than 4x the 12 TB WD Red Plus drives (which are air-fil…

I'm also planning a new home server build now and the prices are definitely relatively ass. So far I've spent 820€ on two 22 TB WD Elements HDDs, 375€ on 2x16 GB DDR5 kit, and 520€ on two 2 TB M.2 SSDs (cache). About 1700€ and I still have no server to show for it. Doesn't help that I've been procrastinating on picking the CPU and motherboard.

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#37

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…

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.

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#38
post #3

I still pay for snooty, and the reason for that is that when a disk goes bad (not if; when) I pop its tray out, replace the disk, pop the tray with the disk back in, click a couple of widgets, and that’s it. I know it will be rebuilt properly. (And I know I have to do that, because when the disk fails it beeps and lights a led near the bad disk) It’s easy to build a NAS such as the one described in this article, but…

ZFS makes this completely trivial except for the "beeps and lights a led" part

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#39
post #15

Earlier quoted context omitted.

Run ZFS backed filestore on FreeBSD, have migrated it to/from Debian. At work and home, not petabyte scale but certainly multi hundred terrabyte. Over 15 years, on over 50 hosts/NAS/SAN instances, different hardware. Run ZFS on Raspberry Pi, on home builds, on Intel, on AMD, on other ARM chipsets. I think you're over-stating things. Debian is fine for this. I do think FreeBSD is a better platform for myself. The code…

> You can not do this with BTRFS There is actually a btrfs driver for Windows [0]. I've used it a few times before, and it works surprisingly well. You probably wouldn't want to use it for any serious work, but that's not because it's technically flawed, but more because it isn't extensively tested or commercially-supported. [0]: https://github.com/maharmstone/btrfs

There is Fuse support in BSD. I don't consider that a good choice for this role.

Re: How to Build a Minimal ZFS NAS Without Synology, QNAP, TrueNAS (2024)

#40
I've been thinking about setting up something like this for a while. I have a Broadwell dual socket Xeon workstation that I'm going to upgrade to Proxmox. Would it be reasonable to run something like this as an LXC or VM or would you put it in the base kernel?
Post reply on HN