Skip to content

ffzg/ganeti-extstorage-zfs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ganeti extstorage provider for local zfs volumes

http://docs.ganeti.org/ganeti/master/html/man-ganeti-extstorage-interface.html

It also encludes LVM emulation which enable zfs to work as plain disk type.

This allows usage of drbd where one (or both) sides are on zfs, and supports
gnt-backup export and import.


INSTALLATION

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

Alternative to editing defaults.sh is to create etc/`hostname -s` file
with minimal configuration which just specify pool name (in this case
again hostname -s) and filesystem where new volumes will be created:

  echo EXTP_ZFS=`hostname -s`/ffzgvg > etc/`hostname -s`.sh  
 

Run install scripts:

# ls install/
1-enable-ext-template.sh  2-create-log-directory.sh  3-lvm-wrappers.sh


Cron helper can be install under /etc/cron.daily

# ls cron/
daily-block-snapshot  purge-log


Overview commands are available (try running them to see output):

# ls bin/
adopt  backup  ill  instance  list  node

backup and instance are wrappers for running gnt-* commands
with same name on master node

adopt will create new zvol using send/receive to break dependency on origin
(otherwise, removal of origin zvol will also remove new adopted disk


Create test instances:

# ls t/*.sh
t/drbd.sh  t/plain.sh  t/zfs.sh

Review that instaces have been created:

# ./bin/ill t-

Test ganeti commands after reading them:

# ls t/gnt-*
t/gnt-backup-export.sh  t/gnt-instance-modify.sh


DRBD disk replication

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

- gnt-backup export doesn't work because snapshoot hooks are not available
- gnt-instance move works from somewhere to zfs, but not from zfs to somewhere

About

Experimental Ganeti extstorage provider for ZFS volumes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages