summaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
Diffstat (limited to 'puppet')
-rw-r--r--puppet/compute.yaml8
-rw-r--r--puppet/controller.yaml29
-rw-r--r--puppet/extraconfig/all_nodes/neutron-midonet-all-nodes.yaml2
-rw-r--r--puppet/hieradata/common.yaml1
-rw-r--r--puppet/hieradata/compute.yaml3
-rw-r--r--puppet/hieradata/controller.yaml43
-rw-r--r--puppet/manifests/overcloud_compute.pp11
-rw-r--r--puppet/manifests/overcloud_controller.pp8
-rw-r--r--puppet/manifests/overcloud_controller_pacemaker.pp8
-rw-r--r--puppet/services/README.rst4
-rw-r--r--puppet/services/heat-engine.yaml1
-rw-r--r--puppet/services/pacemaker/loadbalancer.yaml6
-rw-r--r--puppet/swift-storage-post.yaml5
-rw-r--r--puppet/swift-storage.yaml8
-rw-r--r--puppet/vip-config.yaml19
15 files changed, 91 insertions, 65 deletions
diff --git a/puppet/compute.yaml b/puppet/compute.yaml
index ee00a890..b7f7f4a5 100644
--- a/puppet/compute.yaml
+++ b/puppet/compute.yaml
@@ -531,6 +531,12 @@ resources:
nova_api_host: {get_input: nova_api_host}
nova::compute::vncproxy_host: {get_input: nova_public_ip}
nova::compute::rbd::ephemeral_storage: {get_input: nova_enable_rbd_backend}
+ # TUNNELLED mode provides a security enhancement when using shared storage but is not
+ # supported when not using shared storage.
+ # See https://bugzilla.redhat.com/show_bug.cgi?id=1301986#c12
+ # In future versions of QEMU (2.6, mostly), Dan's native encryption
+ # work will obsolete the need to use TUNNELLED transport mode.
+ nova::migration::live_migration_tunnelled: {get_input: nova_enable_rbd_backend}
rbd_persistent_storage: {get_input: cinder_enable_rbd_backend}
nova_password: {get_input: nova_password}
nova::compute::network_device_mtu: {get_input: neutron_tenant_mtu}
@@ -545,7 +551,7 @@ resources:
ceilometer::rabbit_password: {get_input: rabbit_password}
ceilometer::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
ceilometer::rabbit_port: {get_input: rabbit_client_port}
- ceilometer::metering_secret: {get_input: ceilometer_metering_secret}
+ ceilometer::telemetry_secret: {get_input: ceilometer_metering_secret}
ceilometer::agent::auth::auth_password: {get_input: ceilometer_password}
ceilometer::agent::auth::auth_url: {get_input: ceilometer_agent_auth_url}
ceilometer_compute_agent: {get_input: ceilometer_compute_agent}
diff --git a/puppet/controller.yaml b/puppet/controller.yaml
index 6bd6c39f..62bb3013 100644
--- a/puppet/controller.yaml
+++ b/puppet/controller.yaml
@@ -1171,7 +1171,7 @@ resources:
# FIXME: need to move proxy_local_net_ip into swift-proxy.yaml
swift::proxy::proxy_local_net_ip: {get_input: swift_proxy_network}
swift::storage::all::storage_local_net_ip: {get_input: swift_management_network}
- swift::swift_hash_suffix: {get_input: swift_hash_suffix}
+ swift::swift_hash_path_suffix: {get_input: swift_hash_suffix}
tripleo::ringbuilder::build_ring: { get_input: swift_ring_build }
tripleo::ringbuilder::part_power: {get_input: swift_part_power}
tripleo::ringbuilder::replicas: {get_input: swift_replicas}
@@ -1246,7 +1246,7 @@ resources:
# Neutron
neutron::bind_host: {get_input: neutron_api_network}
neutron::server::auth_uri: {get_input: keystone_auth_uri}
- neutron::server::identity_uri: {get_input: keystone_identity_uri}
+ neutron::server::auth_url: {get_input: keystone_identity_uri}
neutron::server::database_connection: {get_input: neutron_dsn}
neutron::server::api_workers: {get_input: neutron_workers}
neutron::network_device_mtu: {get_input: neutron_tenant_mtu}
@@ -1276,7 +1276,7 @@ resources:
neutron::plugins::ml2::tenant_network_types: {get_input: neutron_tenant_network_types}
neutron::agents::ml2::ovs::tunnel_types: {get_input: neutron_tunnel_types}
neutron::agents::ml2::ovs::extensions: {get_input: neutron_agent_extensions}
- neutron::server::auth_password: {get_input: neutron_password}
+ neutron::server::password: {get_input: neutron_password}
neutron_dsn: {get_input: neutron_dsn}
neutron::db::mysql::password: {get_input: neutron_password}
neutron::keystone::auth::public_url: {get_input: neutron_public_url }
@@ -1284,7 +1284,6 @@ resources:
neutron::keystone::auth::admin_url: {get_input: neutron_admin_url }
neutron::keystone::auth::password: {get_input: neutron_password }
neutron::keystone::auth::region: {get_input: keystone_region}
- neutron::server::notifications::nova_url: {get_input: nova_internal_url}
neutron::server::notifications::auth_url: {get_input: neutron_auth_url}
neutron::server::notifications::tenant_name: 'service'
neutron::server::notifications::project_name: 'service'
@@ -1293,7 +1292,7 @@ resources:
# Ceilometer
ceilometer_backend: {get_input: ceilometer_backend}
ceilometer_mysql_conn_string: {get_input: ceilometer_dsn}
- ceilometer::metering_secret: {get_input: ceilometer_metering_secret}
+ ceilometer::telemetry_secret: {get_input: ceilometer_metering_secret}
ceilometer::rabbit_userid: {get_input: rabbit_username}
ceilometer::rabbit_password: {get_input: rabbit_password}
ceilometer::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
@@ -1301,8 +1300,8 @@ resources:
ceilometer::debug: {get_input: debug}
ceilometer::api::host: {get_input: ceilometer_api_network}
ceilometer::api::keystone_password: {get_input: ceilometer_password}
- ceilometer::api::keystone_auth_uri: {get_input: keystone_auth_uri}
- ceilometer::api::keystone_identity_uri: {get_input: keystone_identity_uri}
+ ceilometer::api::auth_uri: {get_input: keystone_auth_uri}
+ ceilometer::api::identity_uri: {get_input: keystone_identity_uri}
ceilometer::agent::auth::auth_password: {get_input: ceilometer_password}
ceilometer::agent::auth::auth_url: {get_input: keystone_auth_uri}
ceilometer::agent::central::coordination_url: {get_input: ceilometer_coordination_url}
@@ -1428,13 +1427,15 @@ resources:
timezone::timezone: {get_input: timezone}
control_virtual_interface: {get_input: control_virtual_interface}
public_virtual_interface: {get_input: public_virtual_interface}
- tripleo::loadbalancer::control_virtual_interface: {get_input: control_virtual_interface}
- tripleo::loadbalancer::public_virtual_interface: {get_input: public_virtual_interface}
- tripleo::loadbalancer::haproxy_log_address: {get_input: haproxy_log_address}
- tripleo::loadbalancer::service_certificate: {get_attr: [NodeTLSData, deployed_ssl_certificate_path]}
- tripleo::loadbalancer::haproxy_stats_user: {get_input: haproxy_stats_user}
- tripleo::loadbalancer::haproxy_stats_password: {get_input: haproxy_stats_password}
- tripleo::loadbalancer::redis_password: {get_input: redis_password}
+ tripleo::keepalived::control_virtual_interface: {get_input: control_virtual_interface}
+ tripleo::keepalived::public_virtual_interface: {get_input: public_virtual_interface}
+ tripleo::haproxy::control_virtual_interface: {get_input: control_virtual_interface}
+ tripleo::haproxy::public_virtual_interface: {get_input: public_virtual_interface}
+ tripleo::haproxy::haproxy_log_address: {get_input: haproxy_log_address}
+ tripleo::haproxy::service_certificate: {get_attr: [NodeTLSData, deployed_ssl_certificate_path]}
+ tripleo::haproxy::haproxy_stats_user: {get_input: haproxy_stats_user}
+ tripleo::haproxy::haproxy_stats_password: {get_input: haproxy_stats_password}
+ tripleo::haproxy::redis_password: {get_input: redis_password}
tripleo::packages::enable_install: {get_input: enable_package_install}
tripleo::packages::enable_upgrade: {get_input: enable_package_upgrade}
diff --git a/puppet/extraconfig/all_nodes/neutron-midonet-all-nodes.yaml b/puppet/extraconfig/all_nodes/neutron-midonet-all-nodes.yaml
index 26ce7138..3e455347 100644
--- a/puppet/extraconfig/all_nodes/neutron-midonet-all-nodes.yaml
+++ b/puppet/extraconfig/all_nodes/neutron-midonet-all-nodes.yaml
@@ -85,7 +85,7 @@ resources:
tripleo::cluster::cassandra::ssl_storage_port: {get_param: CassandraSslStoragePort}
tripleo::cluster::cassandra::client_port: {get_param: CassandraClientPort}
tripleo::cluster::cassandra::client_port_thrift: {get_param: CassandraClientPortThrift}
- tripleo::loadbalancer::midonet_api: true
+ tripleo::haproxy::midonet_api: true
# Missed Neutron Puppet data
neutron::agents::dhcp::interface_driver: 'neutron.agent.linux.interface.MidonetInterfaceDriver'
neutron::agents::dhcp::dhcp_driver: 'midonet.neutron.agent.midonet_driver.DhcpNoOpDriver'
diff --git a/puppet/hieradata/common.yaml b/puppet/hieradata/common.yaml
index 34965959..65cf9577 100644
--- a/puppet/hieradata/common.yaml
+++ b/puppet/hieradata/common.yaml
@@ -17,6 +17,7 @@ nova::network::neutron::neutron_username: 'neutron'
nova::network::neutron::dhcp_domain: ''
neutron::allow_overlapping_ips: true
+neutron::server::project_name: 'service'
kernel_modules:
nf_conntrack: {}
diff --git a/puppet/hieradata/compute.yaml b/puppet/hieradata/compute.yaml
index 1e888f39..5a46fc2b 100644
--- a/puppet/hieradata/compute.yaml
+++ b/puppet/hieradata/compute.yaml
@@ -1,5 +1,6 @@
# Hiera data here applies to all compute nodes
+nova::host: "%{::fqdn}"
nova::notify_on_state_change: 'vm_and_task_state'
nova::notification_driver: messagingv2
nova::compute::enabled: true
@@ -22,4 +23,6 @@ nova::compute::reserved_host_memory: 2048
ceilometer::agent::auth::auth_tenant_name: 'service'
ceilometer::agent::auth::auth_endpoint_type: 'internalURL'
+neutron::host: "%{::fqdn}"
+
compute_classes: []
diff --git a/puppet/hieradata/controller.yaml b/puppet/hieradata/controller.yaml
index 321ae804..de6e3db1 100644
--- a/puppet/hieradata/controller.yaml
+++ b/puppet/hieradata/controller.yaml
@@ -31,6 +31,7 @@ rabbitmq_kernel_variables:
rabbitmq_config_variables:
tcp_listen_options: '[binary, {packet, raw}, {reuseaddr, true}, {backlog, 128}, {nodelay, true}, {exit_on_close, false}, {keepalive, true}]'
cluster_partition_handling: 'pause_minority'
+ loopback_users: '[]'
mongodb::server::replset: tripleo
mongodb::server::journal: false
@@ -114,6 +115,7 @@ neutron::server::sync_db: true
nova::notify_on_state_change: 'vm_and_task_state'
nova::api::default_floating_pool: 'public'
nova::api::sync_db_api: true
+nova::api::enable_proxy_headers_parsing: true
nova::scheduler::filter::ram_allocation_ratio: '1.0'
nova::cron::archive_deleted_rows::hour: '*/12'
nova::cron::archive_deleted_rows::destination: '/dev/null'
@@ -143,6 +145,7 @@ heat::cron::purge_deleted::destination: '/dev/null'
heat::keystone::domain::domain_name: 'heat_stack'
heat::keystone::domain::domain_admin: 'heat_stack_domain_admin'
heat::keystone::domain::domain_admin_email: 'heat_stack_domain_admin@localhost'
+heat::auth_plugin: 'password'
# pacemaker
pacemaker::corosync::cluster_name: 'tripleo_cluster'
@@ -163,26 +166,26 @@ horizon::vhost_extra_params:
mysql::server::manage_config_file: true
-tripleo::loadbalancer::keystone_admin: true
-tripleo::loadbalancer::keystone_public: true
-tripleo::loadbalancer::neutron: true
-tripleo::loadbalancer::cinder: true
-tripleo::loadbalancer::glance_api: true
-tripleo::loadbalancer::glance_registry: true
-tripleo::loadbalancer::nova_osapi: true
-tripleo::loadbalancer::nova_metadata: true
-tripleo::loadbalancer::nova_novncproxy: true
-tripleo::loadbalancer::mysql: true
-tripleo::loadbalancer::redis: true
-tripleo::loadbalancer::sahara: true
-tripleo::loadbalancer::swift_proxy_server: true
-tripleo::loadbalancer::ceilometer: true
-tripleo::loadbalancer::aodh: true
-tripleo::loadbalancer::gnocchi: true
-tripleo::loadbalancer::heat_api: true
-tripleo::loadbalancer::heat_cloudwatch: true
-tripleo::loadbalancer::heat_cfn: true
-tripleo::loadbalancer::horizon: true
+tripleo::haproxy::keystone_admin: true
+tripleo::haproxy::keystone_public: true
+tripleo::haproxy::neutron: true
+tripleo::haproxy::cinder: true
+tripleo::haproxy::glance_api: true
+tripleo::haproxy::glance_registry: true
+tripleo::haproxy::nova_osapi: true
+tripleo::haproxy::nova_metadata: true
+tripleo::haproxy::nova_novncproxy: true
+tripleo::haproxy::mysql: true
+tripleo::haproxy::redis: true
+tripleo::haproxy::sahara: true
+tripleo::haproxy::swift_proxy_server: true
+tripleo::haproxy::ceilometer: true
+tripleo::haproxy::aodh: true
+tripleo::haproxy::gnocchi: true
+tripleo::haproxy::heat_api: true
+tripleo::haproxy::heat_cloudwatch: true
+tripleo::haproxy::heat_cfn: true
+tripleo::haproxy::horizon: true
controller_classes: []
# firewall
diff --git a/puppet/manifests/overcloud_compute.pp b/puppet/manifests/overcloud_compute.pp
index 6ff74e12..2f45c787 100644
--- a/puppet/manifests/overcloud_compute.pp
+++ b/puppet/manifests/overcloud_compute.pp
@@ -108,13 +108,6 @@ if hiera('step') >= 4 {
nova_config {
'DEFAULT/my_ip': value => $ipaddress;
'DEFAULT/linuxnet_interface_driver': value => 'nova.network.linux_net.LinuxOVSInterfaceDriver';
- 'DEFAULT/host': value => $fqdn;
- # TUNNELLED mode provides a security enhancement when using shared storage but is not
- # supported when not using shared storage.
- # See https://bugzilla.redhat.com/show_bug.cgi?id=1301986#c12
- # In future versions of QEMU (2.6, mostly), Dan's native encryption
- # work will obsolete the need to use TUNNELLED transport mode.
- 'libvirt/live_migration_tunnelled': value => $rbd_ephemeral_storage;
}
if hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
@@ -204,10 +197,6 @@ if hiera('step') >= 4 {
}
}
- neutron_config {
- 'DEFAULT/host': value => $fqdn;
- }
-
include ::ceilometer
include ::ceilometer::config
include ::ceilometer::agent::compute
diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp
index 5fec47a1..439036a2 100644
--- a/puppet/manifests/overcloud_controller.pp
+++ b/puppet/manifests/overcloud_controller.pp
@@ -221,8 +221,8 @@ if hiera('step') >= 4 {
class {'::tripleo::network::midonet::api':
zookeeper_servers => $zookeeper_node_ips,
- vip => hiera('tripleo::loadbalancer::public_virtual_ip'),
- keystone_ip => hiera('tripleo::loadbalancer::public_virtual_ip'),
+ vip => hiera('public_virtual_ip'),
+ keystone_ip => hiera('public_virtual_ip'),
keystone_admin_token => hiera('keystone::admin_token'),
# TODO: create a 'bind' hiera key for api
bind_address => hiera('neutron::bind_host'),
@@ -267,9 +267,9 @@ if hiera('step') >= 4 {
if hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
class {'::neutron::plugins::midonet':
- midonet_api_ip => hiera('tripleo::loadbalancer::public_virtual_ip'),
+ midonet_api_ip => hiera('public_virtual_ip'),
keystone_tenant => hiera('neutron::server::auth_tenant'),
- keystone_password => hiera('neutron::server::auth_password')
+ keystone_password => hiera('neutron::server::password')
}
} else {
diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp
index 0892da13..abe586f4 100644
--- a/puppet/manifests/overcloud_controller_pacemaker.pp
+++ b/puppet/manifests/overcloud_controller_pacemaker.pp
@@ -454,8 +454,8 @@ MYSQL_HOST=localhost\n",
class {'::tripleo::network::midonet::api':
zookeeper_servers => $zookeeper_node_ips,
- vip => hiera('tripleo::loadbalancer::public_virtual_ip'),
- keystone_ip => hiera('tripleo::loadbalancer::public_virtual_ip'),
+ vip => hiera('public_virtual_ip'),
+ keystone_ip => hiera('public_virtual_ip'),
keystone_admin_token => hiera('keystone::admin_token'),
# TODO: create a 'bind' hiera key for api
bind_address => hiera('neutron::bind_host'),
@@ -488,9 +488,9 @@ MYSQL_HOST=localhost\n",
}
if hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
class {'::neutron::plugins::midonet':
- midonet_api_ip => hiera('tripleo::loadbalancer::public_virtual_ip'),
+ midonet_api_ip => hiera('public_virtual_ip'),
keystone_tenant => hiera('neutron::server::auth_tenant'),
- keystone_password => hiera('neutron::server::auth_password')
+ keystone_password => hiera('neutron::server::password')
}
}
if hiera('neutron::core_plugin') == 'networking_plumgrid.neutron.plugins.plugin.NeutronPluginPLUMgridV2' {
diff --git a/puppet/services/README.rst b/puppet/services/README.rst
index 38d2ac64..15c8c1f1 100644
--- a/puppet/services/README.rst
+++ b/puppet/services/README.rst
@@ -48,3 +48,7 @@ are re-asserted when applying latter ones.
5) Service activation (Pacemaker)
6) Fencing (Pacemaker)
+
+Note: Not all roles currently support all steps:
+
+ * ObjectStorage role only supports steps 2, 3 and 4
diff --git a/puppet/services/heat-engine.yaml b/puppet/services/heat-engine.yaml
index 51807f92..4a5ec2c0 100644
--- a/puppet/services/heat-engine.yaml
+++ b/puppet/services/heat-engine.yaml
@@ -49,7 +49,6 @@ outputs:
- '@'
- {get_param: [EndpointMap, MysqlInternal, host]}
- '/heat'
- heat::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri]}
heat::keystone_ec2_uri: {get_param: [EndpointMap, KeystoneEC2, uri]}
heat::identity_uri: {get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix]}
heat::keystone_password: {get_param: HeatPassword}
diff --git a/puppet/services/pacemaker/loadbalancer.yaml b/puppet/services/pacemaker/loadbalancer.yaml
index be6825f6..ce67e925 100644
--- a/puppet/services/pacemaker/loadbalancer.yaml
+++ b/puppet/services/pacemaker/loadbalancer.yaml
@@ -23,8 +23,8 @@ outputs:
config_settings:
map_merge:
- get_attr: [LoadbalancerServiceBase, role_data, config_settings]
- - tripleo::loadbalancer::haproxy_service_manage: false
- tripleo::loadbalancer::mysql_clustercheck: true
- tripleo::loadbalancer::manage_vip: false
+ - tripleo::haproxy::haproxy_service_manage: false
+ tripleo::haproxy::mysql_clustercheck: true
+ tripleo::haproxy::keepalived: false
step_config: |
include ::tripleo::profile::pacemaker::loadbalancer
diff --git a/puppet/swift-storage-post.yaml b/puppet/swift-storage-post.yaml
index 2b652443..1aba2bb4 100644
--- a/puppet/swift-storage-post.yaml
+++ b/puppet/swift-storage-post.yaml
@@ -11,6 +11,10 @@ parameters:
NodeConfigIdentifiers:
type: json
description: Value which changes if the node configuration may need to be re-applied
+ StepConfig:
+ type: string
+ description: Config manifests that will be used to step through the deployment.
+ default: ''
resources:
@@ -42,6 +46,7 @@ resources:
- ''
- - get_file: manifests/overcloud_object.pp
- get_file: manifests/ringbuilder.pp
+ - {get_param: StepConfig}
StorageRingbuilderDeployment_Step2:
type: OS::Heat::StructuredDeployments
diff --git a/puppet/swift-storage.yaml b/puppet/swift-storage.yaml
index 3f6f4733..ed52f928 100644
--- a/puppet/swift-storage.yaml
+++ b/puppet/swift-storage.yaml
@@ -121,6 +121,9 @@ parameters:
NodeIndex:
type: number
default: 0
+ ServiceConfigSettings:
+ type: json
+ default: {}
resources:
@@ -257,6 +260,7 @@ resources:
- heat_config_%{::deploy_config_name}
- object_extraconfig
- extraconfig
+ - service_configs
- object
- swift_devices_and_proxy # provided by SwiftDevicesAndProxyConfig
- all_nodes # provided by allNodesConfig
@@ -265,6 +269,8 @@ resources:
- network
merge_behavior: deeper
datafiles:
+ service_configs:
+ mapped_data: {get_param: ServiceConfigSettings}
common:
raw_data: {get_file: hieradata/common.yaml}
network:
@@ -279,7 +285,7 @@ resources:
object:
raw_data: {get_file: hieradata/object.yaml}
mapped_data: # data supplied directly to this deployment configuration, etc
- swift::swift_hash_suffix: { get_input: swift_hash_suffix }
+ swift::swift_hash_path_suffix: { get_input: swift_hash_suffix }
tripleo::ringbuilder::build_ring: { get_input: swift_ring_build }
tripleo::ringbuilder::part_power: { get_input: swift_part_power }
tripleo::ringbuilder::replicas: {get_input: swift_replicas }
diff --git a/puppet/vip-config.yaml b/puppet/vip-config.yaml
index 3e8e9182..92234b6c 100644
--- a/puppet/vip-config.yaml
+++ b/puppet/vip-config.yaml
@@ -32,11 +32,20 @@ resources:
horizon_vip: {get_input: horizon_vip}
redis_vip: {get_input: redis_vip}
mysql_vip: {get_input: mysql_vip}
- tripleo::loadbalancer::public_virtual_ip: {get_input: public_virtual_ip}
- tripleo::loadbalancer::controller_virtual_ip: {get_input: control_virtual_ip}
- tripleo::loadbalancer::internal_api_virtual_ip: {get_input: internal_api_virtual_ip}
- tripleo::loadbalancer::storage_virtual_ip: {get_input: storage_virtual_ip}
- tripleo::loadbalancer::storage_mgmt_virtual_ip: {get_input: storage_mgmt_virtual_ip}
+ public_virtual_ip: {get_input: public_virtual_ip}
+ controller_virtual_ip: {get_input: control_virtual_ip}
+ internal_api_virtual_ip: {get_input: internal_api_virtual_ip}
+ storage_virtual_ip: {get_input: storage_virtual_ip}
+ storage_mgmt_virtual_ip: {get_input: storage_mgmt_virtual_ip}
+ # public_virtual_ip and controller_virtual_ip are needed in
+ # both HAproxy & keepalived.
+ tripleo::haproxy::public_virtual_ip: {get_input: public_virtual_ip}
+ tripleo::haproxy::controller_virtual_ip: {get_input: control_virtual_ip}
+ tripleo::keepalived::public_virtual_ip: {get_input: public_virtual_ip}
+ tripleo::keepalived::controller_virtual_ip: {get_input: control_virtual_ip}
+ tripleo::keepalived::internal_api_virtual_ip: {get_input: internal_api_virtual_ip}
+ tripleo::keepalived::storage_virtual_ip: {get_input: storage_virtual_ip}
+ tripleo::keepalived::storage_mgmt_virtual_ip: {get_input: storage_mgmt_virtual_ip}
tripleo::redis_notification::haproxy_monitor_ip: {get_input: control_virtual_ip}