Add support for Neutron l3_ha option in puppet templates
[apex-tripleo-heat-templates.git] / puppet / controller-puppet.yaml
index b04561f..8b576bf 100644 (file)
@@ -242,6 +242,10 @@ parameters:
     type: string
     default: ''
     description: If set, flat networks to configure in neutron plugins.
+  NeutronL3HA:
+    default: 'False'
+    description: Whether to enable l3-agent HA
+    type: string
   NeutronNetworkType:
     default: 'gre'
     description: The tenant network type for Neutron, either gre or vxlan.
@@ -491,6 +495,18 @@ resources:
             - - 'mysql://keystone:unset@'
               - {get_param: VirtualIP}
               - '/keystone'
+        keystone_identity_uri:
+          list_join:
+            - ''
+            - - 'http://'
+              - {get_param: VirtualIP}
+              - ':35357/'
+        keystone_auth_uri:
+          list_join:
+            - ''
+            - - 'http://'
+              - {get_param: VirtualIP}
+              - ':5000/v2.0/'
         mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
         mysql_root_password: {get_param: MysqlRootPassword}
         mysql_cluster_name:
@@ -504,6 +520,7 @@ resources:
         neutron_router_distributed: {get_param: NeutronDVR}
         neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers}
         neutron_allow_l3agent_failover: {get_param: NeutronAllowL3AgentFailover}
+        neutron_l3_ha: {get_param: NeutronL3HA}
         neutron_network_vlan_ranges: {get_param: NeutronNetworkVLANRanges}
         neutron_bridge_mappings: {get_param: NeutronBridgeMappings}
         neutron_public_interface: {get_param: NeutronPublicInterface}
@@ -602,7 +619,8 @@ resources:
                 controller_host: {get_input: controller_host} #local-ipv4
                 # Swift
                 swift::proxy::proxy_local_net_ip: {get_input: controller_host}
-                swift::proxy::authtoken::auth_host: {get_input: controller_virtual_ip}
+                swift::proxy::authtoken::auth_uri: {get_input: keystone_auth_uri}
+                swift::proxy::authtoken::identity_uri: {get_input: keystone_identity_uri}
                 swift::storage::all::storage_local_net_ip: {get_input: controller_host}
                 swift::swift_hash_suffix: {get_input: swift_hash_suffix}
                 swift::proxy::authtoken::admin_password: {get_input: swift_password}
@@ -621,7 +639,8 @@ resources:
                 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::auth_uri: {get_input: keystone_auth_uri}
+                cinder::api::identity_uri: {get_input: keystone_identity_uri}
                 cinder::api::bind_host: {get_input: controller_host}
                 cinder::rabbit_userid: {get_input: rabbit_username}
                 cinder::rabbit_password: {get_input: rabbit_password}
@@ -630,7 +649,8 @@ resources:
                 # Glance
                 glance::api::bind_port: {get_input: glance_port}
                 glance::api::bind_host: {get_input: controller_host}
-                glance::api::auth_host: {get_input: controller_virtual_ip}
+                glance::api::auth_uri: {get_input: keystone_auth_uri}
+                glance::api::identity_uri: {get_input: keystone_identity_uri}
                 glance::api::registry_host: {get_input: controller_host}
                 glance::api::keystone_password: {get_input: glance_password}
                 # used to construct glance_api_servers
@@ -643,7 +663,8 @@ resources:
                 glance::registry::keystone_password: {get_input: glance_password}
                 glance::registry::database_connection: {get_input: glance_dsn}
                 glance::registry::bind_host: {get_input: controller_host}
-                glance::registry::auth_host: {get_input: controller_virtual_ip}
+                glance::registry::auth_uri: {get_input: keystone_auth_uri}
+                glance::registry::identity_uri: {get_input: keystone_identity_uri}
                 glance::backend::swift::swift_store_auth_address: {get_input: glance_swift_store_auth_address}
                 glance::backend::swift::swift_store_user: service:glance
                 glance::backend::swift::swift_store_key: {get_input: glance_password}
@@ -656,7 +677,8 @@ resources:
                 heat::rabbit_userid: {get_input: rabbit_username}
                 heat::rabbit_password: {get_input: rabbit_password}
                 heat::rabbit_host: {get_input: controller_virtual_ip}
-                heat::keystone_host: {get_input: controller_virtual_ip}
+                heat::auth_uri: {get_input: keystone_auth_uri}
+                heat::identity_uri: {get_input: keystone_identity_uri}
                 heat::keystone_password: {get_input: heat_password}
                 heat::api::bind_host: {get_input: controller_host}
                 heat::api_cloudwatch::bind_host: {get_input: controller_host}
@@ -678,14 +700,15 @@ resources:
                 # MySQL
                 admin_password: {get_input: admin_password}
                 mysql_innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size}
-                mysql_root_password: {get_input: mysql_root_password}
+                mysql::server::root_password: {get_input: mysql_root_password}
                 mysql_cluster_name: {get_input: mysql_cluster_name}
                 # Neutron
                 neutron::bind_host: {get_input: controller_host}
                 neutron::rabbit_password: {get_input: rabbit_password}
                 neutron::rabbit_user: {get_input: rabbit_user}
                 #neutron::debug: {get_input: debug}
-                neutron::server::auth_host: {get_input: controller_virtual_ip}
+                neutron::server::auth_uri: {get_input: keystone_auth_uri}
+                neutron::server::identity_uri: {get_input: keystone_identity_uri}
                 neutron::server::database_connection: {get_input: neutron_dsn}
                 neutron::agents::ml2::ovs::enable_tunneling: {get_input: neutron_enable_tunneling}
                 neutron::agents::ml2::ovs::local_ip: {get_input: controller_host}
@@ -696,6 +719,7 @@ resources:
                 neutron_router_distributed: {get_input: neutron_router_distributed}
                 neutron_mechanism_drivers: {get_input: neutron_mechanism_drivers}
                 neutron_allow_l3agent_failover: {get_input: neutron_allow_l3agent_failover}
+                neutron::server::l3_ha: {get_input: neutron_l3_ha}
                 neutron::plugins::ml2::network_vlan_ranges: {get_input: neutron_network_vlan_ranges}
                 neutron_bridge_mappings: {get_input: neutron_bridge_mappings}
                 neutron_public_interface: {get_input: neutron_public_interface}
@@ -715,7 +739,8 @@ resources:
                 ceilometer::rabbit_host: {get_input: controller_virtual_ip}
                 ceilometer::api::host: {get_input: controller_host}
                 ceilometer::api::keystone_password: {get_input: ceilometer_password}
-                ceilometer::api::keystone_host: {get_input: controller_virtual_ip}
+                ceilometer::api::keystone_auth_uri: {get_input: keystone_auth_uri}
+                ceilometer::api::keystone_identity_uri: {get_input: keystone_identity_uri}
                 ceilometer::db::database_connection: {get_input: ceilometer_dsn}
                 ceilometer::agent::auth::auth_password: {get_input: ceilometer_password}
                 snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
@@ -723,7 +748,8 @@ resources:
                 # Nova
                 nova::rabbit_userid: {get_input: rabbit_username}
                 nova::rabbit_password: {get_input: rabbit_password}
-                nova::api::auth_host: {get_input: controller_virtual_ip}
+                nova::api::auth_uri: {get_input: keystone_auth_uri}
+                nova::api::identity_uri: {get_input: keystone_identity_uri}
                 nova::api::api_bind_address: {get_input: controller_host}
                 nova::api::metadata_listen: {get_input: controller_host}
                 nova::api::admin_password: {get_input: nova_password}