diff options
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/haproxy.pp | 20 | ||||
-rw-r--r-- | manifests/keepalived.pp | 18 | ||||
-rw-r--r-- | manifests/profile/base/gnocchi/metricd.pp | 4 | ||||
-rw-r--r-- | manifests/profile/base/gnocchi/statsd.pp | 4 | ||||
-rw-r--r-- | manifests/profile/base/heat/api.pp | 3 | ||||
-rw-r--r-- | manifests/profile/base/heat/api_cfn.pp | 3 | ||||
-rw-r--r-- | manifests/profile/base/heat/api_cloudwatch.pp | 3 | ||||
-rw-r--r-- | manifests/profile/base/heat/engine.pp | 3 | ||||
-rw-r--r-- | manifests/profile/base/ironic/conductor.pp | 18 | ||||
-rw-r--r-- | manifests/profile/base/keystone.pp | 3 | ||||
-rw-r--r-- | manifests/profile/base/swift/ringbuilder.pp | 30 |
11 files changed, 96 insertions, 13 deletions
diff --git a/manifests/haproxy.pp b/manifests/haproxy.pp index a79bf14..e1f5d50 100644 --- a/manifests/haproxy.pp +++ b/manifests/haproxy.pp @@ -230,6 +230,10 @@ # (optional) Enable or not Zaqar Api binding # Defaults to hiera('zaqar_api_enabled', false) # +# [*ceph_rgw*] +# (optional) Enable or not Ceph RadosGW binding +# Defaults to hiera('ceph_rgw_enabled', false) +# # [*opendaylight*] # (optional) Enable or not OpenDaylight binding # Defaults to hiera('opendaylight_api_enabled', false) @@ -281,6 +285,8 @@ # 'trove_api_ssl_port' (Defaults to 13779) # 'zaqar_api_port' (Defaults to 8888) # 'zaqar_api_ssl_port' (Defaults to 13888) +# 'ceph_rgw_port' (Defaults to 8080) +# 'ceph_rgw_ssl_port' (Defaults to 13808) # Defaults to {} # class tripleo::haproxy ( @@ -333,6 +339,7 @@ class tripleo::haproxy ( $redis_password = undef, $midonet_api = false, $zaqar_api = hiera('zaqar_api_enabled', false), + $ceph_rgw = hiera('ceph_rgw_enabled', false), $opendaylight = hiera('opendaylight_api_enabled', false), $service_ports = {} ) { @@ -381,6 +388,8 @@ class tripleo::haproxy ( trove_api_ssl_port => 13779, zaqar_api_port => 8888, zaqar_api_ssl_port => 13888, + ceph_rgw_port => 8080, + ceph_rgw_ssl_port => 13808, } $ports = merge($default_service_ports, $service_ports) @@ -935,6 +944,17 @@ class tripleo::haproxy ( } } + if $ceph_rgw { + ::tripleo::haproxy::endpoint { 'ceph_rgw': + public_virtual_ip => $public_virtual_ip, + internal_ip => hiera('ceph_rgw_vip', $controller_virtual_ip), + service_port => $ports[ceph_rgw_port], + ip_addresses => hiera('ceph_rgw_node_ips', $controller_hosts_real), + server_names => $controller_hosts_names_real, + public_ssl_port => $ports[ceph_rgw_ssl_port], + } + } + $opendaylight_api_vip = hiera('opendaylight_api_vip', $controller_virtual_ip) $opendaylight_bind_opts = { "${opendaylight_api_vip}:8081" => [], diff --git a/manifests/keepalived.pp b/manifests/keepalived.pp index 45d772e..c0fb3ef 100644 --- a/manifests/keepalived.pp +++ b/manifests/keepalived.pp @@ -54,6 +54,11 @@ # A string. # Defaults to false # +# [*redis_virtual_ip*] +# Virtual IP on the redis service. +# A string. +# Defaults to false +# class tripleo::keepalived ( $controller_virtual_ip, $control_virtual_interface, @@ -62,6 +67,7 @@ class tripleo::keepalived ( $internal_api_virtual_ip = false, $storage_virtual_ip = false, $storage_mgmt_virtual_ip = false, + $redis_virtual_ip = false, ) { case $::osfamily { @@ -141,4 +147,16 @@ class tripleo::keepalived ( } } + if $redis_virtual_ip and $redis_virtual_ip != $controller_virtual_ip { + $redis_virtual_interface = interface_for_ip($redis_virtual_ip) + # KEEPALIVE STORAGE MANAGEMENT NETWORK + keepalived::instance { '56': + interface => $redis_virtual_interface, + virtual_ips => [join([$redis_virtual_ip, ' dev ', $redis_virtual_interface])], + state => 'MASTER', + track_script => ['haproxy'], + priority => 101, + } + } + } diff --git a/manifests/profile/base/gnocchi/metricd.pp b/manifests/profile/base/gnocchi/metricd.pp index 4d7eb89..e69bbd5 100644 --- a/manifests/profile/base/gnocchi/metricd.pp +++ b/manifests/profile/base/gnocchi/metricd.pp @@ -28,7 +28,9 @@ class tripleo::profile::base::gnocchi::metricd ( ) { include ::tripleo::profile::base::gnocchi - if $step >= 4 { + if $step >= 5 { include ::gnocchi::metricd + Keystone_endpoint<||> -> Service['gnocchi-metricd'] + Keystone_user_role<||> -> Service['gnocchi-metricd'] } } diff --git a/manifests/profile/base/gnocchi/statsd.pp b/manifests/profile/base/gnocchi/statsd.pp index 775b043..1fe4067 100644 --- a/manifests/profile/base/gnocchi/statsd.pp +++ b/manifests/profile/base/gnocchi/statsd.pp @@ -28,7 +28,9 @@ class tripleo::profile::base::gnocchi::statsd ( ) { include ::tripleo::profile::base::gnocchi - if $step >= 4 { + if $step >= 5 { include ::gnocchi::statsd + Keystone_endpoint<||> -> Service['gnocchi-statsd'] + Keystone_user_role<||> -> Service['gnocchi-statsd'] } } diff --git a/manifests/profile/base/heat/api.pp b/manifests/profile/base/heat/api.pp index 68de12b..7166298 100644 --- a/manifests/profile/base/heat/api.pp +++ b/manifests/profile/base/heat/api.pp @@ -26,8 +26,9 @@ class tripleo::profile::base::heat::api ( $step = hiera('step'), ) { + include ::tripleo::profile::base::heat + if $step >= 4 { - include ::tripleo::profile::base::heat include ::heat::api } } diff --git a/manifests/profile/base/heat/api_cfn.pp b/manifests/profile/base/heat/api_cfn.pp index 7c80fc6..c1adae6 100644 --- a/manifests/profile/base/heat/api_cfn.pp +++ b/manifests/profile/base/heat/api_cfn.pp @@ -26,8 +26,9 @@ class tripleo::profile::base::heat::api_cfn ( $step = hiera('step'), ) { + include ::tripleo::profile::base::heat + if $step >= 4 { - include ::tripleo::profile::base::heat include ::heat::api_cfn } } diff --git a/manifests/profile/base/heat/api_cloudwatch.pp b/manifests/profile/base/heat/api_cloudwatch.pp index 6362275..3004db9 100644 --- a/manifests/profile/base/heat/api_cloudwatch.pp +++ b/manifests/profile/base/heat/api_cloudwatch.pp @@ -26,8 +26,9 @@ class tripleo::profile::base::heat::api_cloudwatch ( $step = hiera('step'), ) { + include ::tripleo::profile::base::heat + if $step >= 4 { - include ::tripleo::profile::base::heat include ::heat::api_cloudwatch } } diff --git a/manifests/profile/base/heat/engine.pp b/manifests/profile/base/heat/engine.pp index 32a711f..112fad8 100644 --- a/manifests/profile/base/heat/engine.pp +++ b/manifests/profile/base/heat/engine.pp @@ -37,12 +37,13 @@ class tripleo::profile::base::heat::engine ( $sync_db = false } + include ::tripleo::profile::base::heat + if $step >= 3 and $sync_db { include ::heat::db::mysql } if $step >= 4 or ( $step >= 3 and $sync_db ) { - include ::tripleo::profile::base::heat include ::heat::engine } diff --git a/manifests/profile/base/ironic/conductor.pp b/manifests/profile/base/ironic/conductor.pp index 2cb61fb..4824648 100644 --- a/manifests/profile/base/ironic/conductor.pp +++ b/manifests/profile/base/ironic/conductor.pp @@ -22,15 +22,27 @@ # (Optional) The current step of the deployment # Defaults to hiera('step') # +# [*manage_pxe*] +# (Optional) Whether to manage the PXE/iPXE environment for the conductor. +# Defaults to true +# class tripleo::profile::base::ironic::conductor ( $step = hiera('step'), + $manage_pxe = true, ) { include ::tripleo::profile::base::ironic if $step >= 4 { - include ::ironic::drivers::deploy - include ::ironic::drivers::ipmi - include ::ironic::drivers::pxe include ::ironic::conductor + include ::ironic::drivers::pxe + if $manage_pxe { + include ::ironic::pxe + } + + # Configure a few popular drivers + include ::ironic::drivers::drac + include ::ironic::drivers::ilo + include ::ironic::drivers::ipmi + include ::ironic::drivers::ssh } } diff --git a/manifests/profile/base/keystone.pp b/manifests/profile/base/keystone.pp index 13ef700..fd38869 100644 --- a/manifests/profile/base/keystone.pp +++ b/manifests/profile/base/keystone.pp @@ -87,6 +87,9 @@ class tripleo::profile::base::keystone ( if hiera('ceilometer_api_enabled', false) { include ::ceilometer::keystone::auth } + if hiera('ceph_rgw_enabled', false) { + include ::ceph::rgw::keystone::auth + } if hiera('cinder_api_enabled', false) { include ::cinder::keystone::auth } diff --git a/manifests/profile/base/swift/ringbuilder.pp b/manifests/profile/base/swift/ringbuilder.pp index e0f67cd..98a09a0 100644 --- a/manifests/profile/base/swift/ringbuilder.pp +++ b/manifests/profile/base/swift/ringbuilder.pp @@ -26,7 +26,8 @@ # Defaults to true # # [*devices*] -# (Optional) The swift devices +# (Optional) DEPRECATED The swift devices +# Should pass raw_disk_prefix, raw_disks and swift_storage_node_ips instead # Defaults to '' # # [*step*] @@ -38,12 +39,30 @@ # (Optional) The swift zones # Defaults to 1 # +# [*raw_disk_prefix*] +# (Optional) Disk prefix used to create devices list +# Defaults to 'r1z1-' +# +# [*raw_disks*] +# (Optional) list of raw disks in format +# [':%PORT%/device1', ':%PORT%/device2'] +# Combined with raw_disk_prefix and swift_storage_node_ips +# to create devices list +# Defaults to an empty list +# +# [*swift_storage_node_ips*] +# (Optional) list of ip addresses for nodes running swift_storage service +# Defaults to hiera('swift_storage_node_ips') or an empty list +# class tripleo::profile::base::swift::ringbuilder ( $replicas, $build_ring = true, - $devices = '', + $devices = undef, $step = hiera('step'), $swift_zones = '1', + $raw_disk_prefix = 'r1z1-', + $raw_disks = [], + $swift_storage_node_ips = hiera('swift_storage_node_ips', []), ) { if $step >= 2 { # pre-install swift here so we can build rings @@ -54,8 +73,11 @@ class tripleo::profile::base::swift::ringbuilder ( validate_bool($build_ring) if $build_ring { - - $device_array = strip(split(rstrip($devices), ',')) + if $devices { + $device_array = strip(split(rstrip($devices), ',')) + } else { + $device_array = tripleo_swift_devices($raw_disk_prefix, $swift_storage_node_ips, $raw_disks) + } # create local rings swift::ringbuilder::create{ ['object', 'account', 'container']: |