OpenStack Block Device BackendΒΆ

The OpenStack backend uses Cinder volumes as the storage for datasets. This backend can be used with Flocker dataset agent nodes run by OpenStack Nova. The configuration item to use OpenStack should look like:

dataset:
    backend: "openstack"
    region: "<region slug; for example, LON>"
    auth_plugin: "<authentication plugin>"
    ...

Make sure that the region specified matches the region where the Flocker nodes run. OpenStack must be able to attach volumes created in that region to your Flocker agent nodes.

Note

For the Flocker OpenStack integration to be able to identify the virtual machines where you run the Flocker agents, and to attach volumes to them, those virtual machines must be provisioned through OpenStack (via Nova).

If the OpenStack cloud uses certificates that are issued by a private Certificate Authority (CA), add the field verify_ca_path to the dataset stanza, with the path to the CA certificate.

dataset:
    backend: "openstack"
    region: "DFW"
    verify_ca_path: "/etc/flocker/openstack-ca.crt"
    auth_plugin: "password"
    ...

For testing purposes, it is possible to turn off certificate verification, by setting the verify_peer field to false.

Warning

Only use this insecure setting for troubleshooting, as it is does not check that the remote server's credential is valid.

dataset:
    backend: "openstack"
    region: "DFW"
    verify_peer: false
    auth_plugin: "password"
    ...

The OpenStack backend will automatically detect the best (most recent) available version of the Cinder API. Cinder API V2 and Cinder API V1 are both supported.

Note

At the time of writing Rackspace only supports Cinder API V1. Cinder API V1 does not support paging of responses, so responses are limited to <= 1000 items. Therefore Flocker will be limited to managing <= 1000 volumes.

Other items are typically required but vary depending on the OpenStack authentication plugin selected (Flocker relies on these plugins; it does not provide them itself).

Flocker does provide explicit support for a rackspace authentication plugin. This plugin requires username, api_key, and auth_url.

For example:

dataset:
    backend: "openstack"
    region: "<region slug; for example, LON>"
    auth_plugin: "rackspace"
    username: "<your rackspace username>"
    api_key: "<your rackspace API key>"
    auth_url: "https://identity.api.rackspacecloud.com/v2.0"

To find the requirements for other plugins, see the appropriate documentation in the OpenStack project or provided with the plugin.