diff --git a/deployment/cinder/cinder-volume-container-puppet.yaml b/deployment/cinder/cinder-volume-container-puppet.yaml index 85d346c09b..2689954972 100644 --- a/deployment/cinder/cinder-volume-container-puppet.yaml +++ b/deployment/cinder/cinder-volume-container-puppet.yaml @@ -61,6 +61,15 @@ parameters: description: > The Ceph cluster name must be at least 1 character and contain only letters and numbers. + CinderVolumeCluster: + default: '' + description: > + The cluster name used for deploying the cinder-volume service in an + active-active (A/A) configuration. This configuration requires the + Cinder backend drivers support A/A, and the cinder-volume service not + be managed by pacemaker. If these criteria are not met then the cluster + name must be left blank. + type: string CinderEnableNfsBackend: default: false description: Whether to enable or not the NFS backend for Cinder @@ -187,6 +196,7 @@ outputs: - tripleo::profile::base::cinder::volume::cinder_enable_iscsi_backend: {get_param: CinderEnableIscsiBackend} tripleo::profile::base::cinder::volume::cinder_enable_nfs_backend: {get_param: CinderEnableNfsBackend} tripleo::profile::base::cinder::volume::cinder_enable_rbd_backend: {get_param: CinderEnableRbdBackend} + tripleo::profile::base::cinder::volume::cinder_volume_cluster: {get_param: CinderVolumeCluster} tripleo::profile::base::cinder::volume::nfs::cinder_nfs_mount_options: {get_param: CinderNfsMountOptions} tripleo::profile::base::cinder::volume::nfs::cinder_nfs_servers: {get_param: CinderNfsServers} tripleo::profile::base::cinder::volume::nfs::cinder_nfs_snapshot_support: {get_param: CinderNfsSnapshotSupport} diff --git a/environments/cinder-volume-active-active.yaml b/environments/cinder-volume-active-active.yaml new file mode 100644 index 0000000000..316cefbda0 --- /dev/null +++ b/environments/cinder-volume-active-active.yaml @@ -0,0 +1,8 @@ +resource_registry: + # For A/A mode, do not run the cinder-volume service under pacemaker. + OS::TripleO::Services::CinderVolume: ../deployment/cinder/cinder-volume-container-puppet.yaml + # Cinder requires etcd for use as its Distributed Lock Manager (DLM). + OS::TripleO::Services::Etcd: ../deployment/etcd/etcd-container-puppet.yaml + +parameter_defaults: + CinderVolumeCluster: tripleo diff --git a/releasenotes/notes/cinder-volume-active-active-976f2bc33ab52c94.yaml b/releasenotes/notes/cinder-volume-active-active-976f2bc33ab52c94.yaml new file mode 100644 index 0000000000..e595b383c2 --- /dev/null +++ b/releasenotes/notes/cinder-volume-active-active-976f2bc33ab52c94.yaml @@ -0,0 +1,8 @@ +--- +features: + - | + Add the ability to configure the cinder-volume service to run in + active-active (A/A) mode using the cluster name specified by the new + CinderVolumeCluster parameter. Note that A/A mode requires the backend + driver support running A/A. Cinder's RBD driver supports A/A, but most + other cinder drivers currently do not.