Puppet: overcloud compute config
[apex-tripleo-heat-templates.git] / overcloud-without-mergepy.yaml
index 4df8587..803a501 100644 (file)
@@ -59,6 +59,8 @@ parameters:
     default: default
     description: Name of an existing EC2 KeyPair to enable SSH access to the instances
     type: string
+    constraints:
+      - custom_constraint: nova.keypair
   NeutronBridgeMappings:
     description: >
       The OVS logical->physical bridge mappings to use. See the Neutron
@@ -92,7 +94,7 @@ parameters:
     type: string
     hidden: true
   NeutronPublicInterface:
-    default: eth0
+    default: nic1
     description: What interface to bridge onto br-ex for network nodes.
     type: string
   NeutronPublicInterfaceTag:
@@ -105,12 +107,38 @@ parameters:
       overcloud.yaml to include the deployment of VLAN ports to the control
       plane.
     type: string
+  NeutronComputeAgentMode:
+    default: 'dvr'
+    description: Agent mode for the neutron-l3-agent on the compute hosts
+    type: string
+  NeutronAgentMode:
+    default: 'dvr_snat'
+    description: Agent mode for the neutron-l3-agent on the controller hosts
+    type: string
+  NeutronDVR:
+    default: 'False'
+    description: Whether to configure Neutron Distributed Virtual Routers
+    type: string
+  NeutronMetadataProxySharedSecret:
+    default: 'unset'
+    description: Shared secret to prevent spoofing
+    type: string
   NeutronTunnelTypes:
     default: 'gre'
     description: |
         The tunnel types for the Neutron tenant network. To specify multiple
         values, use a comma separated string, like so: 'gre,vxlan'
     type: string
+  NeutronMechanismDrivers:
+    default: 'openvswitch'
+    description: |
+        The mechanism drivers for the Neutron tenant network. To specify multiple
+        values, use a comma separated string, like so: 'openvswitch,l2_population'
+    type: string
+  NeutronAllowL3AgentFailover:
+    default: 'True'
+    description: Allow automatic l3-agent failover
+    type: string
   NovaPassword:
     default: unset
     description: The password for the nova service account, used by nova-api.
@@ -143,6 +171,16 @@ parameters:
     description: The password for RabbitMQ
     type: string
     hidden: true
+  RabbitClientUseSSL:
+    default: false
+    description: >
+        Rabbit client subscriber parameter to specify
+        an SSL connection to the RabbitMQ host.
+    type: string
+  RabbitClientPort:
+    default: 5672
+    description: Set rabbit subscriber port, change this if using SSL
+    type: number
   SnmpdReadonlyUserName:
     default: ro_snmp_user
     description: The user name for SNMPd with readonly rights running on all Overcloud nodes
@@ -185,10 +223,13 @@ parameters:
   controllerImage:
     type: string
     default: overcloud-control
+    constraints:
+      - custom_constraint: glance.image
   OvercloudControlFlavor:
-    default: baremetal
     description: Flavor for control nodes to request when deploying.
     type: string
+    constraints:
+      - custom_constraint: nova.flavor
   ControlVirtualInterface:
     default: 'br-ex'
     description: Interface where virtual ip will be assigned.
@@ -267,6 +308,15 @@ parameters:
     description: Keystone key for signing tokens.
     type: string
     hidden: true
+  KeystoneSSLCertificate:
+    default: ''
+    description: Keystone certificate for verifying token validity.
+    type: string
+  KeystoneSSLCertificateKey:
+    default: ''
+    description: Keystone key for signing tokens.
+    type: string
+    hidden: true
   MysqlInnodbBufferPoolSize:
     description: >
         Specifies the size of the buffer pool in megabytes. Setting to
@@ -347,30 +397,9 @@ parameters:
       the openvswitch agent. Typically should not need to be changed.
     type: string
   HypervisorNeutronPublicInterface:
-    default: 'eth0'
+    default: nic1
     description: What interface to add to the HypervisorNeutronPhysicalBridge.
     type: string
-  LiveUpdateComputeImage:
-    type: string
-    description: The image ID for live-updates to the overcloud compute nodes.
-    default: ''
-  LiveUpdateHost:
-    type: string
-    description: The IP address for the undercloud Glance API.
-    default: ''
-  LiveUpdatePassword:
-    type: string
-    default: ''
-    description: The live-update password for the undercloud Glance API.
-    hidden: true
-  LiveUpdateTenantName:
-    type: string
-    description: The live-update tenant name for the undercloud Glance API.
-    default: ''
-  LiveUpdateUserName:
-    type: string
-    description: The live-update username for the undercloud Glance API.
-    default: ''
   NeutronNetworkVLANRanges:
     default: 'datacentre'
     description: >
@@ -393,10 +422,13 @@ parameters:
   NovaImage:
     type: string
     default: overcloud-compute
+    constraints:
+      - custom_constraint: glance.image
   OvercloudComputeFlavor:
     description: Use this flavor
     type: string
-    default: baremetal
+    constraints:
+      - custom_constraint: nova.flavor
 
 # Block storage specific parameters
   BlockStorageCount:
@@ -406,18 +438,20 @@ parameters:
     default: overcloud-cinder-volume
     type: string
   OvercloudBlockStorageFlavor:
-    default: baremetal
     description: Flavor for block storage nodes to request when deploying.
     type: string
+    constraints:
+      - custom_constraint: nova.flavor
 
 # Object storage specific parameters
   ObjectStorageCount:
     type: number
     default: 0
   OvercloudSwiftStorageFlavor:
-    default: baremetal
     description: Flavor for Swift storage nodes to request when deploying.
     type: string
+    constraints:
+      - custom_constraint: nova.flavor
   SwiftStorageImage:
     default: overcloud-swift-storage
     type: string
@@ -456,6 +490,8 @@ resources:
           KeystoneCACertificate: {get_param: KeystoneCACertificate}
           KeystoneSigningCertificate: {get_param: KeystoneSigningCertificate}
           KeystoneSigningKey: {get_param: KeystoneSigningKey}
+          KeystoneSSLCertificate: {get_param: KeystoneSSLCertificate}
+          KeystoneSSLCertificateKey: {get_param: KeystoneSSLCertificateKey}
           MysqlClusterUniquePart: {get_attr: [MysqlClusterUniquePart, value]}
           MysqlInnodbBufferPoolSize: {get_param: MysqlInnodbBufferPoolSize}
           MysqlRootPassword: {get_attr: [MysqlRootPassword, value]}
@@ -468,12 +504,19 @@ resources:
           NeutronPublicInterfaceRawDevice: {get_param: NeutronPublicInterfaceRawDevice}
           NeutronPassword: {get_param: NeutronPassword}
           NeutronDnsmasqOptions: {get_param: NeutronDnsmasqOptions}
+          NeutronDVR: {get_param: NeutronDVR}
+          NeutronMetadataProxySharedSecret: {get_param: NeutronMetadataProxySharedSecret}
+          NeutronAgentMode: {get_param: NeutronAgentMode}
+          NeutronMechanismDrivers: {get_param: NeutronMechanismDrivers}
+          NeutronAllowL3AgentFailover: {get_param: NeutronAllowL3AgentFailover}
           NovaPassword: {get_param: NovaPassword}
           NtpServer: {get_param: NtpServer}
           PublicVirtualInterface: {get_param: PublicVirtualInterface}
           RabbitUserName: {get_param: RabbitUserName}
           RabbitPassword: {get_param: RabbitPassword}
           RabbitCookie: {get_attr: [RabbitCookie, value]}
+          RabbitClientUseSSL: {get_param: RabbitClientUseSSL}
+          RabbitClientPort: {get_param: RabbitClientPort}
           SnmpdReadonlyUserName: {get_param: SnmpdReadonlyUserName}
           SnmpdReadonlyUserPassword: {get_param: SnmpdReadonlyUserPassword}
           SSLCertificate: {get_param: SSLCertificate}
@@ -506,11 +549,6 @@ resources:
           ImageUpdatePolicy: {get_param: ImageUpdatePolicy}
           KeyName: {get_param: KeyName}
           KeystoneHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
-          LiveUpdateComputeImage: {get_param: LiveUpdateComputeImage}
-          LiveUpdateHost: {get_param: LiveUpdateHost}
-          LiveUpdatePassword: {get_param: LiveUpdatePassword}
-          LiveUpdateTenantName: {get_param: LiveUpdateTenantName}
-          LiveUpdateUserName: {get_param: LiveUpdateUserName}
           NeutronBridgeMappings: {get_param: NeutronBridgeMappings}
           NeutronEnableTunnelling: {get_param: NeutronEnableTunnelling}
           NeutronFlatNetworks: {get_param: NeutronFlatNetworks}
@@ -521,6 +559,12 @@ resources:
           NeutronPassword: {get_param: NeutronPassword}
           NeutronPhysicalBridge: {get_param: HypervisorNeutronPhysicalBridge}
           NeutronPublicInterface: {get_param: HypervisorNeutronPublicInterface}
+          NeutronDVR: {get_param: NeutronDVR}
+          NeutronMetadataProxySharedSecret: {get_param: NeutronMetadataProxySharedSecret}
+          NeutronAgentMode: {get_param: NeutronComputeAgentMode}
+          NeutronPublicInterfaceRawDevice: {get_param: NeutronPublicInterfaceRawDevice}
+          NeutronMechanismDrivers: {get_param: NeutronMechanismDrivers}
+          NeutronAllowL3AgentFailover: {get_param: NeutronAllowL3AgentFailover}
           NovaApiHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
           NovaComputeDriver: {get_param: NovaComputeDriver}
           NovaComputeExtraConfig: {get_param: NovaComputeExtraConfig}
@@ -533,24 +577,12 @@ resources:
           RabbitUserName: {get_param: RabbitUserName}
           SnmpdReadonlyUserName: {get_param: SnmpdReadonlyUserName}
           SnmpdReadonlyUserPassword: {get_param: SnmpdReadonlyUserPassword}
-          NovaDSN:
-            list_join:
-              - ''
-              - - mysql://nova:unset@
-                - &compute_database_host {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
-                - /nova
           CeilometerDSN:
             list_join:
               - ''
               - - mysql://ceilometer:unset@
-                - *compute_database_host
+                - &compute_database_host {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
                 - /ceilometer
-          NeutronDSN:
-            list_join:
-              - ''
-              - - mysql://neutron:unset@
-                - *compute_database_host
-                - /ovs_neutron
 
   BlockStorage:
     type: OS::Heat::ResourceGroup
@@ -564,12 +596,8 @@ resources:
           CinderISCSIHelper: {get_param: CinderISCSIHelper}
           CinderLVMLoopDeviceSize: {get_param: CinderLVMLoopDeviceSize}
           CinderPassword: {get_param: CinderPassword}
-          ControllerIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
+          VirtualIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
           KeyName: {get_param: KeyName}
-          NeutronEnableTunnelling: {get_param: NeutronEnableTunnelling}
-          NeutronNetworkType: {get_param: NeutronNetworkType}
-          NeutronPassword: {get_param: NeutronPassword}
-          NeutronPublicInterface: {get_param: NeutronPublicInterface}
           Flavor: {get_param: OvercloudBlockStorageFlavor}
           RabbitPassword: {get_param: RabbitPassword}
           RabbitUserName: {get_param: RabbitUserName}
@@ -618,6 +646,10 @@ resources:
             list_join:
             - ','
             - {get_attr: [Controller, hostname]}
+        sysctl:
+          net.ipv4.tcp_keepalive_time: 5
+          net.ipv4.tcp_keepalive_probes: 5
+          net.ipv4.tcp_keepalive_intvl: 1
 
   MysqlRootPassword:
     type: OS::Heat::RandomString