Revision ffde7fb6

b/doc/design-glusterfs-ganeti-support.rst
73 73
  uses libgfapi and hence there is no FUSE overhead any longer when QEMU/KVM
74 74
  works with VM images on Gluster volumes.
75 75

  
76
There are two possible ways to implement "GlusterFS Ganeti Support" inside
77
Ganeti. One is based on libgfapi, which call APIs by libgfapi to realize
78
GlusterFS interfaces in bdev.py. The other way is based on QEMU/KVM. Since
79
QEMU/KVM has supported for GlusterFS and Ganeti could support for GlusterFS
80
by QEMU/KVM. However, the latter way can just let VMs of QEMU/KVM use GlusterFS
81
backend storage but other VMs like XEN and such. So the first way is more
82
suitable for us.
76
Proposed implementation
77
-----------------------
78

  
79
QEMU/KVM includes support for GlusterFS and Ganeti could support GlusterFS
80
through QEMU/KVM. However, this way could just let VMs of QEMU/KVM use GlusterFS
81
backend storage but not other VMs like XEN and such. There are two parts that need
82
to be implemented for supporting GlusterFS inside Ganeti so that it can not only
83
support QEMU/KVM VMs, but also XEN and other VMs. One part is GlusterFS for XEN VM,
84
which is similar to sharedfile disk template. The other part is GlusterFS for
85
QEMU/KVM VM, which is supported by the GlusterFS driver for QEMU/KVM. After
86
``gnt-instance add -t gluster instance.example.com`` command is executed, the added
87
instance should be checked. If the instance is a XEN VM, it would run the GlusterFS
88
sharedfile way. However, if the instance is a QEMU/KVM VM, it would run the
89
QEMU/KVM + GlusterFS way. For the first part (GlusterFS for XEN VMs), sharedfile
90
disk template would be a good reference. For the second part (GlusterFS for QEMU/KVM
91
VMs), RBD disk template would be a good reference. The first part would be finished
92
at first and then the second part would be completed, which is based on the first
93
part.
83 94

  
84 95
.. vim: set textwidth=72 :
85 96
.. Local Variables:

Also available in: Unified diff