[openstack-dev] [cinder] RemoteFS drivers refactoring: move code, which works with images to separate classes

Dmitry Guryanov dguryanov at virtuozzo.com
Wed Oct 28 07:01:53 UTC 2015



On 10/28/2015 03:55 PM, Eric Harney wrote:
> On 10/28/2015 03:18 PM, Dmitry Guryanov wrote:
>> Hello!
>>
>> Can we discuss this on the summit?
>>
>> As I promised, I've written a blueprint for this change:
>>
>> https://review.openstack.org/#/c/237094/
>>
> I assume we can talk about this at the Cinder contributors meetup on Friday.
>
Ok, I'll be there.



>> On 10/14/2015 03:57 AM, Dmitry Guryanov wrote:
>>> Hello,
>>>
>>> RemoteFS drivers combine 2 logical tasks. The first one is how to
>>> mount a filesystem and select proper share for a new or existing
>>> volume. The second one: how to deal with an image files in given
>>> directory (mount point) (create, delete, create snapshot e.t.c.).
>>>
>>> The first part is different for each volume driver. The second - the
>>> same for all volume drivers, but it depends on selected volume format:
>>> you can create qcow2 file on NFS or smbfs with the same code.
>>>
>>> Since there are several volume formats (raw, qcow2, vhd and possibly
>>> some others), I propose to move the code, which works with image to
>>> separate classes, 'VolumeFormat' handlers.
>>>
>>> This change have 3 advantages:
>>>
>>> 1. Duplicated code from remotefs driver will be removed.
>>> 2. All drivers will support all volume formats.
>>> 3. New volume formats could be added easily, including non-qcow2
>>> snapshots.
>>>
>>> Here is a draft version of a patch:
>>> https://review.openstack.org/#/c/234359/
>>>
>>> Although there are problems in it, most of the operations with volumes
>>> work and there are only about 10 fails in tempest.
>>>
>>>
>>> I'd like to discuss this approach before further work on the patch.
>>>
>>>
>>> -- 
>>> Dmitry Guryanov
>>>
>>> __________________________________________________________________________
>>>
>>> OpenStack Development Mailing List (not for usage questions)
>>> Unsubscribe:
>>> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>> __________________________________________________________________________
>> OpenStack Development Mailing List (not for usage questions)
>> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




More information about the OpenStack-dev mailing list