aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cinder-storage.yaml4
-rw-r--r--controller.yaml4
-rw-r--r--overcloud-without-mergepy.yaml9
-rw-r--r--puppet/cinder-storage-puppet.yaml16
-rw-r--r--puppet/controller-puppet.yaml10
-rw-r--r--puppet/manifests/overcloud_controller.pp16
-rw-r--r--puppet/manifests/overcloud_volume.pp16
7 files changed, 68 insertions, 7 deletions
diff --git a/cinder-storage.yaml b/cinder-storage.yaml
index 0f122238..895b9d5c 100644
--- a/cinder-storage.yaml
+++ b/cinder-storage.yaml
@@ -4,6 +4,10 @@ parameters:
Image:
default: overcloud-cinder-volume
type: string
+ CinderEnableIscsiBackend:
+ default: true
+ description: Whether to enable or not the Iscsi backend for Cinder
+ type: boolean
CinderISCSIHelper:
default: tgtadm
description: The iSCSI helper to use with cinder.
diff --git a/controller.yaml b/controller.yaml
index 0f69d23a..2dcfb50e 100644
--- a/controller.yaml
+++ b/controller.yaml
@@ -24,6 +24,10 @@ parameters:
description: The password for the ceilometer service account.
type: string
hidden: true
+ CinderEnableIscsiBackend:
+ default: true
+ description: Whether to enable or not the Iscsi backend for Cinder
+ type: boolean
CinderISCSIHelper:
default: tgtadm
description: The iSCSI helper to use with cinder.
diff --git a/overcloud-without-mergepy.yaml b/overcloud-without-mergepy.yaml
index 10a8a7fa..c54248d5 100644
--- a/overcloud-without-mergepy.yaml
+++ b/overcloud-without-mergepy.yaml
@@ -38,6 +38,10 @@ parameters:
default: ''
description: The Ceph admin client key.
type: string
+ CinderEnableIscsiBackend:
+ default: true
+ description: Whether to enable or not the Iscsi backend for Cinder
+ type: boolean
CloudName:
default: ''
description: The DNS name of this cloud. E.g. ci-overcloud.tripleo.org
@@ -513,6 +517,7 @@ resources:
CinderLVMLoopDeviceSize: {get_param: CinderLVMLoopDeviceSize}
CinderPassword: {get_param: CinderPassword}
CinderISCSIHelper: {get_param: CinderISCSIHelper}
+ CinderEnableIscsiBackend: {get_param: CinderEnableIscsiBackend}
CloudName: {get_param: CloudName}
ControlVirtualInterface: {get_param: ControlVirtualInterface}
ControllerExtraConfig: {get_param: controllerExtraConfig}
@@ -636,6 +641,8 @@ resources:
Image: {get_param: BlockStorageImage}
CinderISCSIHelper: {get_param: CinderISCSIHelper}
CinderLVMLoopDeviceSize: {get_param: CinderLVMLoopDeviceSize}
+ # Purpose of the dedicated BlockStorage nodes should be to use their local LVM
+ CinderEnableIscsiBackend: {get_param: CinderEnableIscsiBackend}
VirtualIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
KeyName: {get_param: KeyName}
Flavor: {get_param: OvercloudBlockStorageFlavor}
@@ -841,7 +848,7 @@ resources:
BlockStorageNodesPostDeployment:
type: OS::TripleO::BlockStoragePostDeployment
- depends_on: BlockStorageAllNodesDeployment
+ depends_on: [ControllerNodesPostDeployment, BlockStorageAllNodesDeployment]
properties:
servers: {get_attr: [BlockStorage, attributes, nova_server_resource]}
diff --git a/puppet/cinder-storage-puppet.yaml b/puppet/cinder-storage-puppet.yaml
index 6ad4d348..2f7a04c8 100644
--- a/puppet/cinder-storage-puppet.yaml
+++ b/puppet/cinder-storage-puppet.yaml
@@ -4,6 +4,10 @@ parameters:
Image:
default: overcloud-cinder-volume
type: string
+ CinderEnableIscsiBackend:
+ default: true
+ description: Whether to enable or not the Iscsi backend for Cinder
+ type: boolean
CinderISCSIHelper:
default: tgtadm
description: The iSCSI helper to use with cinder.
@@ -115,6 +119,7 @@ resources:
template: sizeM
params:
size: {get_param: CinderLVMLoopDeviceSize}
+ cinder_enable_iscsi_backend: {get_param: CinderEnableIscsiBackend}
cinder_iscsi_helper: {get_param: CinderISCSIHelper}
rabbit_hosts:
str_replace:
@@ -148,17 +153,20 @@ resources:
volume:
raw_data: {get_file: hieradata/volume.yaml}
oac_data:
- cinder::volume::iscsi::iscsi_ip_address: local-ipv4
+ cinder_iscsi_ip_address: local-ipv4
mapped_data:
# Cinder
cinder::setup_test_volume::size: {get_input: cinder_lvm_loop_device_size}
- cinder::volume::iscsi::iscsi_helper: {get_input: cinder_iscsi_helper}
+ cinder_iscsi_helper: {get_input: cinder_iscsi_helper}
cinder::database_connection: {get_input: cinder_dsn}
cinder::rabbit_hosts: {get_input: rabbit_hosts}
cinder::rabbit_userid: {get_input: rabbit_username}
cinder::rabbit_password: {get_input: rabbit_password}
+ cinder_enable_iscsi_backend: {get_input: cinder_enable_iscsi_backend}
ntp::servers: {get_input: ntp_servers}
enable_package_install: {get_input: enable_package_install}
+ snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
+ snmpd_readonly_user_password: {get_input: snmpd_readonly_user_password}
outputs:
hosts_entry:
@@ -168,3 +176,7 @@ outputs:
params:
IP: {get_attr: [BlockStorage, networks, ctlplane, 0]}
HOST: {get_attr: [BlockStorage, name]}
+ nova_server_resource:
+ description: Heat resource handle for the block storage server
+ value:
+ {get_resource: BlockStorage}
diff --git a/puppet/controller-puppet.yaml b/puppet/controller-puppet.yaml
index ae14910b..76e5483a 100644
--- a/puppet/controller-puppet.yaml
+++ b/puppet/controller-puppet.yaml
@@ -24,6 +24,10 @@ parameters:
description: The password for the ceilometer service account.
type: string
hidden: true
+ CinderEnableIscsiBackend:
+ default: true
+ description: Whether to enable or not the Iscsi backend for Cinder
+ type: boolean
CinderISCSIHelper:
default: tgtadm
description: The iSCSI helper to use with cinder.
@@ -443,6 +447,7 @@ resources:
debug: {get_param: Debug}
cinder_lvm_loop_device_size: {get_param: CinderLVMLoopDeviceSize}
cinder_password: {get_param: CinderPassword}
+ cinder_enable_iscsi_backend: {get_param: CinderEnableIscsiBackend}
cinder_iscsi_helper: {get_param: CinderISCSIHelper}
cinder_dsn:
list_join:
@@ -606,14 +611,15 @@ resources:
tripleo::ringbuilder::build_ring: True
# Cinder
cinder_lvm_loop_device_size: {get_input: cinder_lvm_loop_device_size}
- cinder::volume::iscsi::iscsi_helper: {get_input: cinder_iscsi_helper}
- cinder::volume::iscsi::iscsi_ip_address: {get_input: controller_host}
+ cinder_iscsi_helper: {get_input: cinder_iscsi_helper}
+ cinder_iscsi_ip_address: {get_input: controller_host}
cinder::database_connection: {get_input: cinder_dsn}
cinder::api::keystone_password: {get_input: cinder_password}
cinder::api::keystone_auth_host: {get_input: controller_virtual_ip}
cinder::api::bind_host: {get_input: controller_host}
cinder::rabbit_userid: {get_input: rabbit_username}
cinder::rabbit_password: {get_input: rabbit_password}
+ cinder_enable_iscsi_backend: {get_input: cinder_enable_iscsi_backend}
#cinder::debug: {get_input: debug}
# Glance
glance::api::bind_port: {get_input: glance_port}
diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp
index fef749c5..c9af578c 100644
--- a/puppet/manifests/overcloud_controller.pp
+++ b/puppet/manifests/overcloud_controller.pp
@@ -258,11 +258,25 @@ if hiera('step') >= 2 {
include ::cinder::glance
include ::cinder::scheduler
include ::cinder::volume
- include ::cinder::volume::iscsi
class {'cinder::setup_test_volume':
size => join([hiera('cinder_lvm_loop_device_size'), 'M']),
}
+ $cinder_enable_iscsi = hiera('cinder_enable_iscsi_backend', true)
+ if $cinder_enable_iscsi {
+ $cinder_iscsi_backend = 'tripleo_iscsi'
+
+ cinder::backend::iscsi { $cinder_iscsi_backend :
+ iscsi_ip_address => hiera('cinder_iscsi_ip_address'),
+ iscsi_helper => hiera('cinder_iscsi_helper'),
+ }
+ }
+
+ $cinder_enabled_backends = any2array($cinder_iscsi_backend)
+ class { '::cinder::backends' :
+ enabled_backends => $cinder_enabled_backends,
+ }
+
# swift proxy
include ::memcached
include ::swift::proxy
diff --git a/puppet/manifests/overcloud_volume.pp b/puppet/manifests/overcloud_volume.pp
index b433321a..3d7cb490 100644
--- a/puppet/manifests/overcloud_volume.pp
+++ b/puppet/manifests/overcloud_volume.pp
@@ -30,9 +30,23 @@ if count(hiera('ntp::servers')) > 0 {
include ::cinder
include ::cinder::volume
-include ::cinder::volume::iscsi
include ::cinder::setup_test_volume
+$cinder_enable_iscsi = hiera('cinder_enable_iscsi_backend', true)
+if $cinder_enable_iscsi {
+ $cinder_iscsi_backend = 'tripleo_iscsi'
+
+ cinder::backend::iscsi { $cinder_iscsi_backend :
+ iscsi_ip_address => hiera('cinder_iscsi_ip_address'),
+ iscsi_helper => hiera('cinder_iscsi_helper'),
+ }
+}
+
+$cinder_enabled_backends = any2array($cinder_iscsi_backend)
+class { '::cinder::backends' :
+ enabled_backends => $cinder_enabled_backends,
+}
+
$snmpd_user = hiera('snmpd_readonly_user_name')
snmp::snmpv3_user { $snmpd_user:
authtype => 'MD5',