ZfS & GEOM with many odd drive sizes
M.S.Powell at salford.ac.uk
Wed Jul 25 10:13:20 UTC 2007
On Wed, 25 Jul 2007, Doug Rabson wrote:
> I'm not really sure why you are using gmirror, gconcat or gstripe at
> all. Surely it would be easier to let ZFS manage the mirroring and
> concatentation. If you do that, ZFS can use its checksums to continually
> monitor the two sides of your mirrors for consistency and will be able
> to notice as early as possible when one of the drives goes flakey. For
> concats, ZFS will also spread redundant copies of metadata (and regular
> data if you use 'zfs set copies=<N>') across the disks in the compat. If
> you have to replace one half of a mirror, ZFS has enough information to
> know exactly which blocks needs to be copied to the new drive which can
> make recovery much quicker.
gmirror is only going to used for the ufs /boot parition and block device
swap. (I'll ignore the smallish space used by that below.)
I thought gstripe was a solution cos I mentioned in the original post
that I have the following drives to play with; 1x400GB, 3x250GB, 3x200GB.
If I make a straight zpool with all those drives I get a total usable
7x200GB raidz with only an effective 6x200GB=1200GB of usable storage.
Also a 7 device raidz cries out for being a raidz2? That's a further 200GB
of storage lost.
My original plan was (because of the largest drive being a single 400GB)
was to gconcat (now to gstripe) the smaller drives into 3 pairs of
250GB+200GB, making three new 450GB devices. This would make a zpool of 4
devices i.e. 1x400GB+3x450GB giving effective storage of 1200GB. Yes, it's
the same as above (as long as raidz2 is not used there), but I was
thinking about future expansion...
The advantge this approach seems to give is that when drives fail each
device (which is either a single drive or a gstripe pair) can be replaced
with a modern larger drive (500GB or 750GB depending on what's economical
at the time).
Once that replacement has been performed only 4 times, the zpool will
increase in size (actually it will increase straight away by 4x50GB total
if the 400GB drive fails 1st).
In addition, once a couple of drives in a pair have failed and are
replaced by a single large drive, there will also be smaller 250GB or
200GB drives spare which can be further added to the zpool as a zfs
The alternative of using a zpool of 7 individual drives means that I
need to replace many more drives to actually see an increase in zpool
Yes, there a large number of combinations here, but it seems that the
zpool will increase in size sooner this way?
I believe my reasoning is correct here? Let me know if your experience
would suggest otherwise.
Mark Powell - UNIX System Administrator - The University of Salford
Information Services Division, Clifford Whitworth Building,
Salford University, Manchester, M5 4WT, UK.
Tel: +44 161 295 4837 Fax: +44 161 295 5888 www.pgp.com for PGP key
More information about the freebsd-fs