# debugging options
-#set -x
+set -x
#set >&2
dir=/usr/share/ganeti/extstorage/zfs/
# zfs pool and file system (existing) where to create block devices
test -z "$EXTP_ZFS" && EXTP_ZFS=tmp500g/$EXTP_VG
+# show numbers without compression for volume sizes
+test -z "$EXTP_USED" && EXTP_USED=logicalused
+
export VOL_NAME
zfs_get() {
create zfs create -V options
destroy gnt-instance remove also removes snapshots (set empty to disable)
vg cluster lvm volume group
+used logicalused for number without compression or used for real disk usage
if echo $* | grep -q pv_name,vg_name,pv_free,pv_attr,pv_size,pv_name ; then
- zfs list $EXTP_ZFS -H -p -o avail,used | sed "s:$EXTP_ZFS::" | awk '{ print " '$EXTP_ZFS'|'$EXTP_VG'|" $1 / 1024 / 1024 "|a--|" ( $1 + $2 ) / 1024 / 1024 "|'$EXTP_ZFS'" }'
+ zfs list $EXTP_ZFS -H -p -o avail,$EXTP_ZFS | sed "s:$EXTP_ZFS::" | awk '{ print " '$EXTP_ZFS'|'$EXTP_VG'|" $1 / 1024 / 1024 "|a--|" ( $1 + $2 ) / 1024 / 1024 "|'$EXTP_ZFS'" }'
fi
# gnt-node list-storage
# vgs --noheadings --units=m --nosuffix --separator '|' --options vg_name,vg_size,vg_free
if echo $* | grep -q vg_name,vg_size,vg_free ; then
- zfs list -H -p -o used,available $EXTP_ZFS | awk '{ print " '$EXTP_VG'|" ( $1 + $2 ) / 1024 / 1024 "|" $2 / 1024 / 1024 }'
+ zfs list -H -p -o $EXTP_USED,available $EXTP_ZFS | awk '{ print " '$EXTP_VG'|" ( $1 + $2 ) / 1024 / 1024 "|" $2 / 1024 / 1024 }'
# gnt-node list
# vgs --noheadings --nosuffix --units=m --unbuffered '--separator=|' -ovg_name,vg_free,vg_attr,vg_size
elif echo $* | grep -q vg_name,vg_free,vg_attr,vg_size ; then
- zfs list -H -p -o available,used $EXTP_ZFS | awk '{ print " '$EXTP_VG'|" $1 / 1024 / 1024 "|wz--n-|" ( $1 + $2 ) / 1024 / 1024 }'
+ zfs list -H -p -o available,$EXTP_USED $EXTP_ZFS | awk '{ print " '$EXTP_VG'|" $1 / 1024 / 1024 "|wz--n-|" ( $1 + $2 ) / 1024 / 1024 }'
# gnt-node add --disk 0:adopt=zfs-root
# vgs --noheadings --units m --nosuffix -o name,size
elif echo $* | grep -q name,size ; then
- zfs list -H -p -o used,available $EXTP_ZFS | awk '{ print " '$EXTP_VG' " ( $1 + $2 ) / 1024 / 1024 }'
+ zfs list -H -p -o $EXTP_USED,available $EXTP_ZFS | awk '{ print " '$EXTP_VG' " ( $1 + $2 ) / 1024 / 1024 }'
else