cinder-volume Active/Active HA support

Registered by Michal Dulko

Right now cinder-volume service can run only in Active/Passive HA fashion.
This is due to several reasons:

* Local file locks in manager that protect resources used for example for
  creation of volumes from deleting.
* Local file locks in RemoteFS (and dependent) drivers. These locks are used
  to block operations that cannot run concurrently (like taking a snapshot).
* Non-atomic state transitions in c-api that may cause race conditions.

This blueprint proposes a switch to use Tooz_ library for distributed locking.

Blueprint information

Status:
Complete
Approver:
Mike Perez
Priority:
Undefined
Drafter:
Michal Dulko
Direction:
Needs approval
Assignee:
Michal Dulko
Definition:
Obsolete
Series goal:
None
Implementation:
Unknown
Milestone target:
None
Completed by
Michal Dulko

Related branches

Sprints

Whiteboard

This work is tracked in https://blueprints.launchpad.net/cinder/+spec/cinder-volume-active-active-support

Gerrit topic: https://review.openstack.org/#q,topic:bp/cinder-volume-active-active-ha,n,z

Addressed by: https://review.openstack.org/185646
    Replace locks in volume manager

Addressed by: https://review.openstack.org/263313
    Start/Stop coordinator with Services

Addressed by: https://review.openstack.org/270240
    Replace locks in remotefs backend driver

Addressed by: https://review.openstack.org/273066
    Remove API races from create_volume flow.

Gerrit topic: https://review.openstack.org/#q,topic:bp/volume-manager-locks,n,z

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.