Hello,
I am experimenting with using gptid paths for my zpool disk vdevs. My rationale is that monitoring scripts and manual procedures around disk replacement seem simpler if the path is constant and globally unique.
zpool creation and status works:
However, operations like zpool offline and online don't work:
Commands like that work when I use /dev/da<n>:
If I look up the disk vdev guid using zdb(8), it works:
Any thoughts? Is there a better way to achieve a stable and unique disk vdev path? I tried glabel(8) labels but they apparently max out at 11 characters, too short for a uuid. I don't know if online/offline works with glabel(8) paths.
Thanks,
Bob
I am experimenting with using gptid paths for my zpool disk vdevs. My rationale is that monitoring scripts and manual procedures around disk replacement seem simpler if the path is constant and globally unique.
zpool creation and status works:
Code:
[root@devsttiny ~]# uname -a
FreeBSD devsttiny.nirvanix.com 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r243825: Tue Dec 4 09:23:10 UTC 2012 root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64
[root@devsttiny ~]# zpool status
pool: share_501001
state: ONLINE
scan: resilvered 36K in 0h0m with 0 errors on Wed May 1 22:25:23 2013
config:
NAME STATE READ WRITE CKSUM
share_501001 ONLINE 0 0 0
raidz3-0 ONLINE 0 0 0
gptid/c3422980-b2aa-11e2-b529-000c29f48d37 ONLINE 0 0 0
gptid/c36b6df5-b2aa-11e2-b529-000c29f48d37 ONLINE 0 0 0
gptid/c39628d8-b2aa-11e2-b529-000c29f48d37 ONLINE 0 0 0
gptid/c3beca60-b2aa-11e2-b529-000c29f48d37 ONLINE 0 0 0
errors: No known data errors
However, operations like zpool offline and online don't work:
Code:
[root@devsttiny ~]# zpool offline share_501001 gptid/c3beca60-b2aa-11e2-b529-000c29f48d37
cannot offline gptid/c3beca60-b2aa-11e2-b529-000c29f48d37: no such device in pool
[root@devsttiny ~]# zpool offline share_501001 /dev/gptid/c3beca60-b2aa-11e2-b529-000c29f48d37
cannot offline /dev/gptid/c3beca60-b2aa-11e2-b529-000c29f48d37: no such device in pool
Commands like that work when I use /dev/da<n>:
Code:
[root@devst06 ~/src/CSN/trunk/src/FreeBSDConfig]# zpool status data
pool: data
state: ONLINE
scan: resilvered 8.50K in 0h0m with 0 errors on Tue Jan 29 13:29:12 2013
config:
NAME STATE READ WRITE CKSUM
data ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
da24 ONLINE 0 0 0
da25 ONLINE 0 0 0
da26 ONLINE 0 0 0
errors: No known data errors
[root@devst06 ~/src/CSN/trunk/src/FreeBSDConfig]# zpool offline zfs-raidz3 da13
[root@devst06 ~/src/CSN/trunk/src/FreeBSDConfig]# zpool online zfs-raidz3 da13
[root@devst06 ~/src/CSN/trunk/src/FreeBSDConfig]# zpool offline zfs-raidz3 /dev/da13
[root@devst06 ~/src/CSN/trunk/src/FreeBSDConfig]# zpool online zfs-raidz3 /dev/da13
[root@devst06 ~/src/CSN/trunk/src/FreeBSDConfig]#
If I look up the disk vdev guid using zdb(8), it works:
Code:
[root@devsttiny ~]# zpool status
pool: share_501001
state: ONLINE
scan: resilvered 36K in 0h0m with 0 errors on Wed May 1 22:25:23 2013
config:
NAME STATE READ WRITE CKSUM
share_501001 ONLINE 0 0 0
raidz3-0 ONLINE 0 0 0
gptid/c3422980-b2aa-11e2-b529-000c29f48d37 ONLINE 0 0 0
gptid/c36b6df5-b2aa-11e2-b529-000c29f48d37 ONLINE 0 0 0
gptid/c39628d8-b2aa-11e2-b529-000c29f48d37 ONLINE 0 0 0
gptid/c3beca60-b2aa-11e2-b529-000c29f48d37 ONLINE 0 0 0
errors: No known data errors
[root@devsttiny ~]# zdb|grep -B 1 gptid/c36b6df5-b2aa-11e2-b529-000c29f48d37
guid: 2222888412714934045
path: '/dev/gptid/c36b6df5-b2aa-11e2-b529-000c29f48d37'
phys_path: '/dev/gptid/c36b6df5-b2aa-11e2-b529-000c29f48d37'
[root@devsttiny ~]# zpool offline share_501001 2222888412714934045
[root@devsttiny ~]#
Any thoughts? Is there a better way to achieve a stable and unique disk vdev path? I tried glabel(8) labels but they apparently max out at 11 characters, too short for a uuid. I don't know if online/offline works with glabel(8) paths.
Thanks,
Bob