Goal: Add a large amount of storage to my existing home server, using zfs and a bunch of big, cheap HDDs. Not interested in booting into zfs. My home server already runs 24/7 as it has a mail server and DHCP server running, too.
My H/W (you want pretty fast and mostly LOTS OF RAM)
Running FreeBSD 8.x AMD64 (64 bit version).
Kudos to sub.mesa and the many, many other folks who know so much more than I and especially to Pawel for porting zfs to FreeBSD. Sub.mesa's website has a very good how-to install FreeBSD and other stuff.
This isn't *the* way to do it, just *a* way to do it.
Install FreeBSD on one of the Brand X HDDs, then gmirror(8) that drive to the other identical drive. Edit rc.conf to enable zfs and reboot.
Identify the 8 HDDs for the zfs array watching the bootup process, doing a dmesg and/or looking in /dev/ (eg, /dev/da0-7). Make sure the drives are free of any partioning info:
Repeat for each drive.
Force the drives to ignore the 'advanced format drive' firmware (mis)information, thus:
Now build your zfs array, thus:
Save it
Trash the gnop
Rebuild it
REBOOT
Shouldn't show anything like da0.nop
Now test...
Run write/read speed test like this:
My write speed showed this:
My read speed showed this:
I'm happy. Similar results should be had with the Western Digital advanced format drives.
Eventually, I'll put up a web site with a much more detailed How-To along with the theoretic basis as I understand it (probably wrong)
Hope this helps someone.
My H/W (you want pretty fast and mostly LOTS OF RAM)
Code:
mobo = Asus P5WDH (only 3 'normal', on-board SATA ports)
RAM = 6 gig ECC DDR2 (not in dual channel mode)
CPU = C2Q6600 or C2Q9400 CPU (two otherwise identical servers)
SATA = Supermicro AOC-USAS-L8i PCIe 8 port SATA card
HDDs = 2 identical Brand X HDDs for mobo connectors port 0 & 1
HDDs = 8 identical Samsung F4 HD204UI 2 TB HDDs (these are 'advanced format drives') connected to the Supermicro card.
Running FreeBSD 8.x AMD64 (64 bit version).
Kudos to sub.mesa and the many, many other folks who know so much more than I and especially to Pawel for porting zfs to FreeBSD. Sub.mesa's website has a very good how-to install FreeBSD and other stuff.
This isn't *the* way to do it, just *a* way to do it.
Install FreeBSD on one of the Brand X HDDs, then gmirror(8) that drive to the other identical drive. Edit rc.conf to enable zfs and reboot.
Identify the 8 HDDs for the zfs array watching the bootup process, doing a dmesg and/or looking in /dev/ (eg, /dev/da0-7). Make sure the drives are free of any partioning info:
# dd if=/dev/zero of=/dev/da0 bs=1m count=1
Repeat for each drive.
Force the drives to ignore the 'advanced format drive' firmware (mis)information, thus:
# gnop create -S 4096 /dev/da0
Now build your zfs array, thus:
# zpool create media raidz2 da0.nop da1 da2 da3 da4 da5 da6 da7
Save it
# zpool export media
Trash the gnop
# gnop destroy /dev/da0.nop
Rebuild it
# zpool import media
REBOOT
Shouldn't show anything like da0.nop
# ls /dev/
Now test...
Code:
# ls /media ; should be there
# zdb ; look for ashift = 12 somewhere
Run write/read speed test like this:
Code:
write: dd if=/dev/zero of=/media/zerofile.000 bs=1m count=20000
read: dd if=/media/zerofile.000 of=/dev/null bs=1m
Code:
20971520000 bytes transferred in 52.457735 secs (399779365 bytes/sec)
My read speed showed this:
Code:
20971520000 bytes transferred in 46.018040 secs (455723884 bytes/sec)
I'm happy. Similar results should be had with the Western Digital advanced format drives.
Eventually, I'll put up a web site with a much more detailed How-To along with the theoretic basis as I understand it (probably wrong)
Hope this helps someone.