At Sat, 19 Jan 2013 16:47:37 +0800, harryxiyou wrote: > > Hi all, > > I wanna add a new block storage driver by Libvirt/Qemu way for Openstack, which > is as same as Sheepdog driver for Openstack. So i think the theories > are like this. > > 1, In the Openstack Nova branch, Openstck driver call libvirt client > and send parameters > to libvirt client.(From this point, i should modify Openstack Nova > source codes. They are > a, nova/nova/virt/libvirt/driver.py add new driver way > b, /OpenStack/nova/nova/tests/test_libvirt.py add new driver test) > > 2, According to own protocol, libvirt client in Openstack Nova branch > send parameters to > Libvirt server.(From this point, i should modify libvirt library to > let libvirt library support this > new driver like Sheepdog). > > 3, Libvirt server call Qemu interfaces to send parameters to > Qemu.(From this point, i should > modify Qemu source codes to let Qemu support this new driver like Sheepdog). > > 4, In Openstack Cinder branch, Openstack driver use Qemu commands to > create this new volumes > to Qemu.(From this point, i should modify Openstack Cinder branch > source codes like this. > a, Add new driver file > /OpenStack/cinder/cinder/volume/drivers/new_driver.py like Sheepdog.py > b, Change file /OpenStack/cinder/cinder/tests/test_drivers_compatibility.py > to test new driver). > > 5, At last, i should also modify > /OpenStack/manuals/doc/src/docbkx/openstack-compute-admin/tables/hypervisors-nova-conf.xml > to configure this new driver. > > Are my theories right? Should i do any other stuffs? Could anyone give > me any other suggestions? If you do the above work, I think you can use your file system with OpenStack. But I suggest doing them step by step. If your file system is not supported in QEMU, I think libvirt won't support it. If libvirt doesn't support it, OpenStack shouldn't support it too. Thanks, Kazutaka -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list