Using GTP and glabel for ZFS arrays



I hope my terminology is correct....

I have a ZFS array which uses raw devices. I'd rather it use glabel and supply the GEOM devices to ZFS instead. In addition, I'll also partition the HDD to avoid using the entire HDD: leave a little bit of space at the start and end.

Why use glabel?

* So ZFS can find and use the correct HDD should the HDD device ever
get renumbered for whatever reason. e.g. /dev/da0 becomes /dev/da6
when you move it to another controller.

Why use partitions?

* Primarily: two HDD of a given size, say 2TB, do not always provide
the same amount of available space. If you use a slightly smaller
partition instead of the entire physical HDD, you're much more
likely to have a happier experience when it comes time to replace an
HDD.

* There seems to be a consensus amongst some that leaving the start and
and of your HDD empty. Give the rest to ZFS.

Things I've read that led me to the above reasons:

* http://docs.freebsd.org/cgi/getmsg.cgi?fetch=399538+0+current/freebsd-stable
* http://lists.freebsd.org/pipermail/freebsd-stable/2010-February/055008.html
* http://lists.freebsd.org/pipermail/freebsd-geom/2009-July/003620.html

The plan for this plan, I'm going to play with just two HDD, because that's what I have available. Let's assume these two HDD are ad0 and ad1. I am not planning to boot from these HDD; they are for storage only.

First, create a new GUID Partition Table partition scheme on the HDD:

gpart create -s GPT ad0


Let's see how much space we have. This output will be used to determine SOMEVALUE in the next command.

gpart show


Create a new partition within that scheme:

gpart add -b 34 -s SOMEVALUE -t freebsd-zfs ad0

Why '-b 34'? Randi pointed me to http://en.wikipedia.org/wiki/GUID_Partition_Table where it explains what the first 33 LBA are used for. It's not for us to use here.

Where SOMEVALUE is the number of blocks to use. I plan not to use all the available blocks but leave a few hundred MB free at the end. That'll allow for the variance in HDD size.


Now, label the thing:

glabel label -v disk00 /dev/ad0

Repeat the above with ad1 to get disk01. Repeat for all other HDD...

Then create your zpool:

zpool create bigtank disk00 disk01 ... etc


Any suggestions/comments? Is there any advantage to using the -l option on 'gpart add' instead of the glabel above?

Thanks


--
Dan Langille - http://langille.org/
_______________________________________________
freebsd-stable@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscribe@xxxxxxxxxxx"



Relevant Pages

  • Re: Using GTP and glabel for ZFS arrays
    ... I'd rather it use glabel and supply the GEOM devices to ZFS instead. ... I'll also partition the HDD to avoid using the entire HDD: leave a little bit of space at the start and end. ... and the problem was provoked by external USB drives. ...
    (freebsd-stable)
  • Re: Using GTP and glabel for ZFS arrays
    ... I have a ZFS array which uses raw devices. ... the HDD to avoid using the entire HDD: leave a little bit of space at the ...   when you move it to another controller. ... partition instead of the entire physical HDD, ...
    (freebsd-stable)
  • Re: Using GTP and glabel for ZFS arrays
    ... So ZFS can find and use the correct HDD should the HDD device ever ... Give the rest to ZFS. ... GPT generates a UUID for each partition and glabel presents this so ZFS can use it, ... Sectorsize: 512 ...
    (freebsd-stable)
  • Re: [HEADSUP] ZFS version 15 committed to head
    ... I just lost the space of an entire hdd! ... zpool always shows the raw capacity, zfs the actual available capacity. ...
    (freebsd-current)
  • Re: Cloning XP Pro (legally)... and failing !
    ... How many partitions are there on HDD B? ... Which partition has the OS? ... B Windows from MSI's original B CD and SP2 ... Does the "active" Primary partition contain the boot files? ...
    (microsoft.public.windowsxp.setup_deployment)