Merge "Haproxy configuration"
[apex-tripleo-heat-templates.git] / overcloud-source.yaml
index 5e28ac0..a5784f0 100644 (file)
@@ -71,6 +71,14 @@ Parameters:
     Default: baremetal
     Description: Flavor for compute nodes to request when deploying.
     Type: String
+  GlancePort:
+    Default: 9292
+    Description: Glance port.
+    Type: String
+  GlanceProtocol:
+    Default: http
+    Description: Protocol to use when connecting to glance, set to https for SSL.
+    Type: String
   GlancePassword:
     Default: unset
     Description: The password for the glance service account, used by the glance services.
@@ -248,17 +256,10 @@ Parameters:
     Default: ''
     Description: Keystone self-signed certificate authority certificate.
     Type: String
-    NoEcho: true
-  KeystoneCAKey:
-    Default: ''
-    Description: Keystone certificate authority key.
-    Type: String
-    NoEcho: true
   KeystoneSigningCertificate:
     Default: ''
     Description: Keystone certificate for verifying token validity.
     Type: String
-    NoEcho: true
   KeystoneSigningKey:
     Default: ''
     Description: Keystone key for signing tokens.
@@ -409,10 +410,16 @@ Resources:
           get_input: controller_host
         db-password: unset
         glance:
+          registry:
+            host: {get_input: controller_virtual_ip}
           backend: swift
           db: mysql://glance:unset@localhost/glance
           host:
             get_input: controller_host
+          port:
+            Ref: GlancePort
+          protocol:
+            Ref: GlanceProtocol
           service-password:
             Ref: GlancePassword
           swift-store-user: service:glance
@@ -438,7 +445,6 @@ Resources:
           db: mysql://keystone:unset@localhost/keystone
           host:
             get_input: controller_host
-          ca_key: {Ref: KeystoneCAKey}
           ca_certificate: {Ref: KeystoneCACertificate}
           signing_key: {Ref: KeystoneSigningKey}
           signing_certificate: {Ref: KeystoneSigningCertificate}
@@ -446,8 +452,7 @@ Resources:
           innodb_buffer_pool_size: {Ref: MysqlInnodbBufferPoolSize}
         neutron:
           flat-networks: {Ref: NeutronFlatNetworks}
-          host:
-            get_input: controller_host
+          host: {get_input: controller_virtual_ip}
           metadata_proxy_shared_secret: unset
           ovs:
             enable_tunneling: 'True'
@@ -483,8 +488,7 @@ Resources:
           db: mysql://nova:unset@localhost/nova
           default_floating_pool:
             ext-net
-          host:
-            get_input: controller_host
+          host: {get_input: controller_virtual_ip}
           metadata-proxy: true
           service-password:
             Ref: NovaPassword
@@ -511,6 +515,45 @@ Resources:
               ip: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
               interface:
                 Ref: ControlVirtualInterface
+        haproxy:
+          nodes:
+            Merge::Map:
+              controller0:
+                ip: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
+                name: {"Fn::Select": [ name, {"Fn::GetAtt": [controller0, show]} ] }
+          net_binds:
+            - ip: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
+          services:
+            - name: keystone_admin
+              port: 35357
+            - name: keystone_public
+              port: 5000
+            - name: horizon
+              port: 80
+            - name: neutron
+              port: 9696
+            - name: cinder
+              port: 8776
+            - name: glance_api
+              port: 9292
+            - name: glance_registry
+              port: 9191
+            - name: heat_api
+              port: 8004
+            - name: heat_cloudwatch
+              port: 8003
+            - name: heat_cfn
+              port: 8000
+            - name: nova_ec2
+              port: 8773
+            - name: nova_osapi
+              port: 8774
+            - name: nova_metadata
+              port: 8775
+            - name: ceilometer
+              port: 8777
+            - name: swift_proxy_server
+              port: 8080
   controllerPassthrough:
     Type: OS::Heat::StructuredConfig
     Properties:
@@ -622,6 +665,8 @@ Resources:
                               - show
                           - 'novalocal'
                       - {Ref: CloudName}
+        controller_virtual_ip:
+          {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
   controller0SSLDeployment:
     Type: OS::Heat::StructuredDeployment
     Properties: