From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:38417) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TwZ2V-0003Kc-Qo for qemu-devel@nongnu.org; Sat, 19 Jan 2013 09:04:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TwZ2U-0007fY-Ec for qemu-devel@nongnu.org; Sat, 19 Jan 2013 09:04:55 -0500 Received: from mail-da0-f44.google.com ([209.85.210.44]:35625) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TwZ2U-0007fR-8T for qemu-devel@nongnu.org; Sat, 19 Jan 2013 09:04:54 -0500 Received: by mail-da0-f44.google.com with SMTP id z20so2035579dae.31 for ; Sat, 19 Jan 2013 06:04:53 -0800 (PST) Date: Sat, 19 Jan 2013 23:04:48 +0900 Message-ID: From: MORITA Kazutaka In-Reply-To: References: MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Subject: Re: [Qemu-devel] [Openstack][Sheepdog][Libvirt][Qemu]Add a new block storage driver by Libvirt/Qemu way for Openstack List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: harryxiyou Cc: openstack-dev@lists.launchpad.org, sheepdog , Kazutaka Morita , qemu-devel@nongnu.org, openstack@lists.launchpad.net, libvir-list@redhat.com, cloudxy@googlegroups.com, Liu Yuan , Kang Hua 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