ZFS guidelines - preparing for future storage expansion

Wiktor Niesiobedzki bsd at w.evip.pl
Mon Nov 30 09:45:13 UTC 2009


Hi,

I'm planning to setup a ZFS pool and trying to get best practices for
that, so the layout I'll propose, will be future proof. As far as I
read ZFS Best Practices it is advised to use whole disk as a vdev
instead of silces/partitions to ease the administration.

I'm trying to setup a RAIDZ pool, that I may want to grow some day (by
replacing all disks in the pool). So i made a quick check on 8.0
Release, and did the following:

create 3 disks - each of size 256M - da0, da1, da2

# zpool create tank raidz da0 da1 da2

It gave a tank of size ~750M

Then I created another 3 disks, each of size 512M - da3, da4, da5, and

# zpool replace tank da0 da3
# zpool replace tank da1 da4
# zpool replace tank da2 da5

But size of the tank haven't changed. As it was mentioned few times on
the list, that you need only to change all of the disks to get the new
storage, do I need to do something more, to get new space used by
RAIDZ?

Because otherwise, I'd suggest, that on FreeBSD, it should be advised,
to always use slice/partition, so when you replace the disk with
bigger one, you create two partitions, and stripe two raidz. But this
in turn, after few such exercises may lead to quite complicated
layout.

Ofcourse - the easiest way would be to setup a whole new pool and move
the data, but that might be hard thing to do at this time, as I might
be lacking controller to connect all six devices on the same time, so
I was rather thinking about replacing the disks one-by-one

Is my use-case falling on the case, described here:
http://blogs.sun.com/ahl/entry/expand_o_matic_raid_z , as a "home user
to want to increase his total storage capacity by a disk or two at a
time"?

Any hints for me?


Cheers,

Wiktor Niesiobedzki


More information about the freebsd-fs mailing list