libvirt: StorPool Volume Attachment

Registered by Peter Penchev

There are various Cinder volume drivers providing access to network-attached storage, such as GlusterFS, NFS, RBD, etc. The purpose of this blueprint is to add a driver supporting the volumes defined in a StorPool cluster.

StorPool is distributed data storage software running on standard x86 servers. StorPool aggregates the performance and capacity of all drives into a shared pool of storage distributed among the servers. Within this storage pool the user creates thin-provisioned volumes that are exposed to the clients as block devices. StorPool consists of two parts wrapped in one package - a server and a client. The StorPool server allows a hypervisor to act as a storage node, while the StorPool client allows a hypervisor node to access the storage pool and act as a compute node. In OpenStack terms the StorPool solution allows each hypervisor node to be both a storage and a compute node simultaneously.

The proposed driver will make use of the StorPool API (based on JSON over HTTP) to query, manage and attach volumes defined in the StorPool cluster. It will include all the features required by the Kilo release.

Since the test setup requires an operational StorPool cluster, the unit tests will mostly use mocking to simulate the operations. A separate continuous integration environment will be set up by StorPool and access to it will be provided for running automated CI tests.

Blueprint information

John Garbutt
Peter Penchev
Peter Penchev
Series goal:
Accepted for queens
Milestone target:
milestone icon queens-rc1
Started by
Peter Penchev
Completed by
Matt Riedemann

Related branches



Gerrit topic:,topic:bp/libvirt-storpool-volume-attach,n,z

Addressed by:
    Add the StorPool volume attach/detach proposal.

Addressed by:
    Add the Nova StorPool attachment driver.

While it missed the actual deadlines, only just approved, seems like all the code is up, so keeping this in kilo for now. --johnthetubaguy 26th Jan 2015

Sorry, we have now hit the non-priority feature freeze for kilo. Please resubmit your spec for the L release. --johnthetubaguy 5th Feb 2015

Addressed by:
    Resubmit the StorPool libvirt attachment driver.

Re-approved for mitaka, we can remove -2 once mitaka opens. --johnthetubaguy 22nd September 2015

The os-brick change is here:

Sorry, we have now hit the Non-Priority Feature Freeze for Mitaka. For more details please see: and
--johnthetubaguy 2016.01.30

Gerrit topic:,topic:libvirt-storpool-volume-attach,n,z

Approving this vendor-specific volume driver backend for the libvirt driver in the Queens release. Despite coming up after we did the spec freeze, this is a single patch and low-risk so I'm OK with the late approval, especially because the Cinder dependencies have also been merged in Queens already (both in Cinder and os-brick). -- mriedem 20180123


Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.


No subscribers.