X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=README;h=06e100606c56f5d317b4999fdc6444bda3c8755d;hb=56af7a500a58d624e353603dd7ebefd1e47a354f;hp=0d1789f3bd3c50d4f3ff9bc3022cbc12c46c68ac;hpb=974277746e4de1697ff1f7a3a719e7211cf849d1;p=ganeti-extstorage-zfs diff --git a/README b/README index 0d1789f..06e1006 100644 --- a/README +++ b/README @@ -1,85 +1,51 @@ -Ganet extstorage provider for local zfs volumes +Ganeti extstorage provider for local zfs volumes http://docs.ganeti.org/ganeti/master/html/man-ganeti-extstorage-interface.html INSTALLATION -On node which has zfs storage pool +On node which will host zfs storage pool cd /usr/share/ganeti/extstorage/ git clone https://github.com/ffzg/ganeti-extstorage-zfs zfs cd zfs vi defaults.sh -You need to specify zfs filesystem under which block devices will be created. +Run install scripts: -Now ssh into ganeti master node and do following: +# ls install/ +1-enable-ext-template.sh 2-create-log-directory.sh 3-lvm-wrappers.sh -1. enable new disk template +Cron helper can be install under /etc/cron.daily - gnt-cluster modify --enabled-disk-templates plain,drbd,ext \ - --ipolicy-disk-templates plain,drbd,ext +# ls cron/ +daily-block-snapshot purge-log -2. create log directory +Overview commands are available (try running them to see output): - mkdir /var/log/ganeti/extstorage +# ls bin/ +backup ill instance list node snap -3. try instance creation with something similar to - gnt-instance add -t ext --disk=0:size=10G,provider=zfs \ - --net 0:mode=bridged,link=br1001 \ - --net 1:mode=bridged,link=br0060 \ - --net 2:mode=bridged,link=br0080 \ - --no-name-check --no-ip-check \ - -o debootstrap+default \ - -B maxmem=1G -n arh-hw zfs +Create test instances: -4. install helper scripts for daily block snapshots +# ls t/*.sh +t/drbd.sh t/plain.sh t/zfs.sh - ln -sf /usr/share/ganeti/extstorage/zfs/bin/daily-block-snapshot /etc/cron.daily/ +Review that instaces have been created: -5. install lvm wrapper scripts to report zfs volumes as lv +# ./bin/ill t- - find /usr/share/ganeti/extstorage/zfs/sbin/ -type f | xargs -i ln -v -s -f {} /sbin/ +Test ganeti commands after reading them: -This scripts enable gnt-node commands to work: - -root@vmh02:/home/dpavlin# gnt-node list arh-hw -Node DTotal DFree MTotal MNode MFree Pinst Sinst -arh-hw.gnt.ffzg.hr 87.8G 87.2G 7.8G 252M 5.6G 1 0 - -root@vmh02:/home/dpavlin# gnt-node list-storage arh-hw -Node Type Name Size Used Free Allocatable -arh-hw.gnt.ffzg.hr lvm-vg arh-hw 190.0G 62.7G 127.3G Y -arh-hw.gnt.ffzg.hr lvm-vg ffzgvg 87.8G 610M 87.2G Y - - -HELPER SCRIPTS - -Helper scripts in bin directory list volumes, show size or snapshots. - - -arh-hw:/usr/share/ganeti/extstorage/zfs# ./bin/list -NAME USED AVAIL REFER MOUNTPOINT -tmp500g/block 612M 87.2G 30K /tmp500g/block -tmp500g/block/af1a90e8-0566-4cbf-bc8c-99fc82b67ce3.ext.disk0 612M 87.2G 610M - - - -arh-hw:/usr/share/ganeti/extstorage/zfs# ./bin/size -NAME PROPERTY VALUE SOURCE -tmp500g/block/af1a90e8-0566-4cbf-bc8c-99fc82b67ce3.ext.disk0 volsize 11G local - - -arh-hw:/usr/share/ganeti/extstorage/zfs# ./bin/snapshots -NAME USED AVAIL REFER MOUNTPOINT -tmp500g/block@etckeeper 0 - 30K - -tmp500g/block/af1a90e8-0566-4cbf-bc8c-99fc82b67ce3.ext.disk0@2014-06-24 2.64M - 610M - +# ls t/gnt-* +t/gnt-backup-export.sh t/gnt-instance-modify.sh DRBD disk replication -Ganti's extstorage provider doesn't support drbd target. But, lvm emulation scripts are sufficiant enough -to create -t drdb instance or convert plain (created on zfs thanks to wrappers ;-) to drdb. +Ganeti's extstorage provider doesn't support drbd target. But, lvm emulation scripts are sufficiant enough +to create -t drbd instance or convert plain (created on zfs thanks to wrappers ;-) to drbd. KNOWN BUGS for extstorage @@ -90,5 +56,5 @@ KNOWN BUGS for extstorage KNOWN BUGS for using -t plain on top of zfs -- bin/daily-block-snapshot snapshots are not correctly renamed +- cron/daily-block-snapshot snapshots are not correctly renamed