[Openstack] [OpenStack] How to add a RBD volume snapshot rollback operation to Cinder

Haomai Wang haomaiwang at gmail.com
Thu Jan 2 08:01:52 UTC 2014


On Thu, Jan 2, 2014 at 3:38 PM, Changqian Zuo <dummyhacker85 at gmail.com> wrote:
> Hi,
>
> First time mailing to a list.
>
> I'm trying to add a RBD volume snapshot rollback operation to Cinder.
> I've just got through WSGI part of Cinder API code and have read some
> pieces of Cinder Volume. Now there is not much time for me to complete
> the whole code base (with Ceph driver) very carefully, I need some
> advice.
>
> Is adding a Extension Controller the most suitable way to do this? How
> to deal with snapshot and volume state transformation, would it affect
> other part of Cinder codes? What parts of Cinder codes I should pay
> special attention?
>
> Many thanks.
>
> Some background information:
>
> We're planning to use Cinder bootable volume (Ceph RBD as backend) as
> instance root disk in my company's OpenStack environment. Creating a
> volume snapshot from image, and then use this snapshot to spawn instance
> root volumes.

>From your description, it seemed that you can use rbd as nova backend directly.

nova.conf:
 libvirt_image_type='rbd'

more options can be find at nova/virt/libvirt/imagebackend.py

>
> To backup volume state, I've thought of Cinder-Backup service (still
> need to add a in-use backup for Cinder), but it takes too much space (a
> 80G volume would take at least 248G space for base backup image with x3
> Ceph replication ratio). The other way is volume snapshot, but in this
> case when restoring volume data, I have to create a new volume from
> snapshot, destroy the original instance (there's no API to change a
> instance's bootable volume), and create a new instance from new volume.
>
> The old volume can not be removed, for a snapshot is referencing to it
> (the snapshot must be kept). If I do this again and again, there would
> be many snapshots referencing to many different volumes, and I have to
> keep these volumes (not used elsewhere), which is a mess.
>
>
>
> _______________________________________________
> Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
> Post to     : openstack at lists.openstack.org
> Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack



-- 
Best Regards,

Wheat




More information about the Openstack mailing list