Some questions about building a primitive NAS with ZFS/FreeNAS

Discussion in 'PC Hardware' started by johnye_pt, Jan 7, 2018.

  1. johnye_pt

    johnye_pt MDL Addicted

    Aug 26, 2010
    741
    377
    30
    Since I'm on a very limited budget, I'm going to try to build a very primitive NAS with the hardware I currently have. I'll be using 6x1TB HDDs, FreeNAS (never used it) and ZFS (also never used it) where 2 of the 6 HDDs will be for redundancy, so if my math is correct about 3.63TB usable (4x 939GB per drive).

    The computer I have available has an Intel D945PSN board with 4 sATA2 ports (will require a card with extra sATA ports), Pentium D 940 3.2Ghz, 4GB RAM non-ECC (2GB+2GB, it has 4 slots but 2 don't work) and an OEM 500w power supply. Since it will be used only to backup files, It will only be powered on once in a while.


    So the questions are:
    1. Is the computer "good" enough for the job? I read that ZFS requires at least 1GB ram per 1TB storage, is this for storage capacity (in this case 4x1TB) or total storage including redundancy (6x1TB)? I'm not worried about speed for now, only redundancy/safety. I know, I need a better power supply for that ;)

    2. Should the FreeNAS run from a USB2 flash drive or from a 7th HDD? And is the ZFS data safe in case the FreeNAS flash drive / HDD fails, or do I need to backup some kind of ZFS index?
     
  2. Joe C

    Joe C MDL Guru

    Jan 12, 2012
    3,522
    2,093
    120
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  3. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,763
    450
    From the official page i linked to (don't know if it also is meant for the older x86 edition):
    8GB* Boot Drive (USB Flash Drive suffices)
     
  4. johnye_pt

    johnye_pt MDL Addicted

    Aug 26, 2010
    741
    377
    30
    Yup! And Joe C's link also explains that the OS runs in memory and copies itself to the hard drives, so the flash drive only works as a boot drive, and I can buy a 2nd one to use as mirror in case one of them fails.
     
  5. Joe C

    Joe C MDL Guru

    Jan 12, 2012
    3,522
    2,093
    120
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  6. johnye_pt

    johnye_pt MDL Addicted

    Aug 26, 2010
    741
    377
    30
    As usual, nothing goes according to plan. FreeNAS 9.2.1.9 x86 fails to boot with an hardware error introduced in v9 that was only solved in v10, so the only option is to use older x86 versions with worse support and probably buggier, or newer x64 versions with higher hardware (namely RAM) requirements.

    Since the main reason I wanted to try ZFS was RAIDZ2 and protection against data corruption, an identical solution can be obtained with ReFS + Storage Spaces + Parity if using Windows 10 Pro 1703 (and only 1703), Windows 10 Pro for Workstations, and Windows Server 2016. Since I'm a total noob with Linux/FreeBSD but quite at home with Windows, I thought I finally had it all worked out...

    And here's where everything goes boinkers again: I wanted RAIDZ2 / RAID6, but Single Parity is "equivalent" to RAID5. For Dual Parity / RAID6, Windows Server 2016 is required. Guess what? My CPU doesn't support x64 Windows 8.1 and above because it's missing the CMPXCHG16B instruction. It's an Athlon 64 X2 4400+ 2x1024KB socket 939 (Toledo), which means it's either a ADA4400DAA6CD or a ADV4400DAA6CD. Some AM2 CPUs might include CMPXCHG16B, so I'll have to check every CPU for sale against the instructions listed in cpu-world, and hope that the instruction is detected by the OS when using the AM2CPU board.

    Since the NAS purpose is mostly offline storage, I'll probably be better served with Windows Server 2016 because Storage Spaces are much easier to work with (from a regular user's stand point) and much more flexible than ZFS regarding future pool expansions.
     
  7. Joe C

    Joe C MDL Guru

    Jan 12, 2012
    3,522
    2,093
    120
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  8. Joe C

    Joe C MDL Guru

    Jan 12, 2012
    3,522
    2,093
    120
    #14 Joe C, Jan 14, 2018
    Last edited: Jan 14, 2018
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  9. johnye_pt

    johnye_pt MDL Addicted

    Aug 26, 2010
    741
    377
    30
    #15 johnye_pt, Jan 15, 2018
    Last edited: Jan 15, 2018
    (OP)
    I went for the used AM2 CPU + AM2CPU board addon for the 939SLI-eSata2 (about 20€/$ both) because I already have the DDR2 memory. If going for a AM3+ board I'll have to buy the DDR3 memory too. The Phenom II is AM2+ and unfortunately is not supported by the AM2CPU addon, according to a mail sent from Asrock to a member in another forum.

    I am still missing 3 sATA ports though, maybe a cheap PCIe sATA card or sATA to IDE adapters? Oh, and a "slightly" better PSU than the current OEM I'm using :D

    It's only for "cold" storage, so as long as I get a working computer with a relatively better archive system than saving files over individual drives, it works for me. Power on, copy files, power off. That's basically what it's for ;)
     
  10. GodHand

    GodHand MDL Addicted

    Jul 15, 2016
    534
    926
    30
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  11. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,763
    450
    Ahhh, wish we could all have your knowledge and bedside manners.
     
  12. johnye_pt

    johnye_pt MDL Addicted

    Aug 26, 2010
    741
    377
    30
    #18 johnye_pt, Feb 6, 2018
    Last edited: Feb 6, 2018
    (OP)
    Off topic aside, I decided to go with Windows Server 2016 v1709 + Storage Spaces which supports the ReFS filesystem (bit rot resilience) and dual parity (up to 2 drives can fail), which is basically what I wanted FreeNAS + ZFS for, plus I know my way around in a Windows environment. Also Storage Spaces allow me to add more drives to the pool at any time without needing to delete / rebuild the pool. Windows Server 2016 was required because Windows 8.x/10 only allow NTFS + single parity, and it had to be v1709 because it has the "Desktop Experience" option, the latest version has no GUI / Explorer, only a command prompt.

    The motherboard is an Intel D945PSN/GNT (not sure which one) with 4xsATA, and an expansion card with 2xsATA3 + 2xUSB3 (1 USB for the 7th hdd), plus 2x2GB DDR2. The first step to take in the future is adding a better board/cpu/ram setup, but for now it suffices :)

    Currently working with a pool of 7x 1TB (7x 0.909GB = 6.363GB) with 4.22GB available after setting up resilience.

    EDIT: the only real purchases I made with this setup was a "Tier 2" Seasonic S12-II power supply, the PCI-e sATA adapter and a couple of used 1TB hdds with almost no use at all and no bad sectors. Yeah, I'm a cheap bastard...
     
  13. Joe C

    Joe C MDL Guru

    Jan 12, 2012
    3,522
    2,093
    120
    If it;'s cheap and having fun while you get to learn something...
    Enjoy
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...