From 944e02446a2ddcaf4e1ad8283935dfe9c4700606 Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Mon, 23 Jun 2014 14:20:58 +0200 Subject: [PATCH] basic implementation of ganeti extstorage for local zfs volumes --- attach | 6 ++++++ create | 5 +++++ detach | 5 +++++ grow | 5 +++++ remove | 5 +++++ setinfo | 5 +++++ settings.sh | 6 ++++++ verify | 3 +++ 8 files changed, 40 insertions(+) create mode 100755 attach create mode 100755 create create mode 100755 detach create mode 100755 grow create mode 100755 remove create mode 100755 setinfo create mode 100644 settings.sh create mode 100755 verify diff --git a/attach b/attach new file mode 100755 index 0000000..4168999 --- /dev/null +++ b/attach @@ -0,0 +1,6 @@ +#!/bin/sh + +. /usr/share/ganeti/extstorage/zfs/settings.sh + +# Return path to new blockdevice +echo -n /dev/zvol/$block/$VOL_NAME diff --git a/create b/create new file mode 100755 index 0000000..a6c5cb1 --- /dev/null +++ b/create @@ -0,0 +1,5 @@ +#!/bin/sh + +. /usr/share/ganeti/extstorage/zfs/settings.sh + +zfs create -V ${VOL_SIZE}M $vol_param $block/$VOL_NAME diff --git a/detach b/detach new file mode 100755 index 0000000..6a70038 --- /dev/null +++ b/detach @@ -0,0 +1,5 @@ +#!/bin/sh + +. /usr/share/ganeti/extstorage/zfs/settings.sh + +#eject /dev/zvol/$block/$VOL_NAME diff --git a/grow b/grow new file mode 100755 index 0000000..1f66e25 --- /dev/null +++ b/grow @@ -0,0 +1,5 @@ +#!/bin/sh + +. /usr/share/ganeti/extstorage/zfs/settings.sh + +zfs set volsize=${NEW_VOL_SIZE}M $block/$VOL_NAME diff --git a/remove b/remove new file mode 100755 index 0000000..339fad9 --- /dev/null +++ b/remove @@ -0,0 +1,5 @@ +#!/bin/sh + +. /usr/share/ganeti/extstorage/zfs/settings.sh + +zfs destroy $block/$VOL_NAME diff --git a/setinfo b/setinfo new file mode 100755 index 0000000..590a71d --- /dev/null +++ b/setinfo @@ -0,0 +1,5 @@ +#!/bin/sh + +. /usr/share/ganeti/extstorage/zfs/settings.sh + +zfs set ganti:metadata="$VOL_METADATA" $block/$VOL_NAME diff --git a/settings.sh b/settings.sh new file mode 100644 index 0000000..2396df2 --- /dev/null +++ b/settings.sh @@ -0,0 +1,6 @@ + +# pool and path where to create block devices +block=tmp500g/block + +# parameters for zfs create +vol_param="-s -b 4k -o compression=lz4" diff --git a/verify b/verify new file mode 100755 index 0000000..c52d3c2 --- /dev/null +++ b/verify @@ -0,0 +1,3 @@ +#!/bin/sh + +exit 0 -- 2.20.1