ZFS Mixed drive sizes in a single pool

nry

Limp Gawd
Joined
Jul 10, 2008
Messages
409
I am fairly new to ZFS, have only scraped the surface of what's possible so apologies if this should be pretty obvious.

All my data (30TB~) is currently stored on 2x hardware RAID6 arrays and has been working flawlessly. This is also backed up offsite nightly via rsync, also working flawlessly :D

Around 10TB of my data I'd like to minimise the risk of losing! So have been contemplating a box at my mum's house powered on/off remotely to keep power usage to a minimum seeing as it's not me paying the bills (figure a Raspberry Pi should work fairly well)

Looking at my spare components there is enough to build up a simple storage server:
C2D E6600
Asus Motherboard with 8 SATA ports
8GB DDR2
2x 3Gb/s HBAs
Drive caddys
8x 1TB drives
2x 2TB drives
3x 500GB drives

I figured I could setup each drive individually but this becomes a pain to rsync too, so....

1) Without having to buy any new drives I am wondering can I add all of these drives into a single pool to create a single volume?
From what I have read this should be possible, each disk is as a single vdev then add these into my pool?

2) With regards to redundancy is it possible to store whole files per vdev from the pool, if a single drive fails I only lose the data on the failed disk?

3) Can ZFS detect a failing disk and begin moving data off it?

4) If I want to expand the pool can I create another vdev on a new disk and add this to the pool?

5) Providing the above madness is possible - my case only allows for 15 drives, if I wanted to replace a single 1TB for a 3TB for example, would it be possible to remove all data from that 1TB (providing theres enough space on the other disks), remove the disk, insert the new disk and then add that to the pool?

Thanks :)
 
Last edited:
If you are creating a zpool out of single-disk vdevs then you are creating a RAID0.

A zpool is always a stripe of all the vdevs. So if you lose a drive you lose everything.
 
You would create a single zpool with multiple vdevs

5x 1TB in RaidZ1
3x 1TB in RaidZ1
2x 2TB mirrored
3x 500GB in RaidZ1

That will offer you the best speed possible and redundancy. You could loose a single drive from each array and be fine. 9TB usable space.
 
Why 5 1TB drives in one vdev and 3 TB in another? I would think two 4-disk raidz1, no?
 
Why 5 1TB drives in one vdev and 3 TB in another? I would think two 4-disk raidz1, no?

4 data 1 parity
2 data 1 parity

even distribution of read/writes

even number of data drives in each vdec (2 or 4), and 4 vdevs in the pool.
 
Yeah, I suppose, although the performance thing with N drives is overblown. I'd be far more concerned about the major size differences in the vdevs - once he gets about 1/2 full performance is going to start to suck...
 
Back
Top