1 Description: Nova API,Keystone,Heat Engine and API,Glance,Neutron,Dedicated MySQL
2 server,Dedicated RabbitMQ Server,Group of Nova Computes
3 HeatTemplateFormatVersion: '2012-12-12'
7 Description: The password for the keystone admin account, used for monitoring, querying neutron etc.
12 Description: The keystone auth secret.
17 Description: The password for the cinder service account, used by cinder-api.
22 Description: The iSCSI helper to use with cinder.
24 CinderLVMLoopDeviceSize:
26 Description: The size of the loopback file used by the cinder LVM driver.
31 Additional configuration to inject into the cluster. The JSON should have
32 the following structure:
35 [{"section": "SECTIONNAME",
37 [{"option": "OPTIONNAME",
48 [{"section": "default",
50 [{"option": "compute_manager",
51 "value": "ironic.nova.compute.manager.ClusterComputeManager"
58 "value": "nova.cells.rpc_driver.CellsRPCDriver"
66 OvercloudControlFlavor:
68 Description: Flavor for control nodes to request when deploying.
70 OvercloudComputeFlavor:
72 Description: Flavor for compute nodes to request when deploying.
76 Description: The password for the glance service account, used by the glance services.
79 GlanceNotifierStrategy:
80 Description: Strategy to use for Glance notification queue
84 Description: The filepath of the file to use for logging messages from Glance.
89 Description: The password for the Heat service account, used by the Heat services.
93 Default: 'REBUILD_PRESERVE_EPHEMERAL'
94 Description: What policy to use when reconstructing instances. REBUILD for rebuilds, REBUILD_PRESERVE_EPHEMERAL to preserve /mnt.
98 Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
100 NeutronBridgeMappings:
101 Description: The OVS logical->physical bridge mappings to use.
106 Description: The password for the neutron service account, used by neutron agents.
109 CeilometerComputeAgent:
110 Description: Indicates whether the Compute agent is present and expects nova-compute to be configured accordingly
113 AllowedValues: ['', Present]
114 CeilometerMeteringSecret:
116 Description: Secret shared by the ceilometer services.
121 Description: The password for the ceilometer service account.
124 SnmpdReadonlyUserName:
125 Default: ro_snmp_user
126 Description: The user name for SNMPd with readonly rights running on all Overcloud nodes
128 SnmpdReadonlyUserPassword:
130 Description: The user password for SNMPd with readonly rights running on all Overcloud nodes
135 Description: The DNS name of this cloud. E.g. ci-overcloud.tripleo.org
138 Default: libvirt.LibvirtDriver
140 NovaComputeLibvirtType:
145 Default: overcloud-compute
148 Description: The password for the nova service account, used by nova-api.
154 Description: If set, flat networks to configure in neutron plugins.
155 HypervisorNeutronPhysicalBridge:
157 Description: An OVS bridge to create on each hypervisor.
159 HypervisorNeutronPublicInterface:
161 Description: What interface to add to the HypervisorNeutronPhysicalBridge.
163 NeutronPublicInterface:
165 Description: What interface to bridge onto br-ex for network nodes.
167 NeutronPublicInterfaceDefaultRoute:
169 Description: A custom default route for the NeutronPublicInterface.
171 NeutronPublicInterfaceIP:
173 Description: A custom IP address to put onto the NeutronPublicInterface.
175 NeutronPublicInterfaceRawDevice:
177 Description: If set, the public interface is a vlan with this device as the raw device.
179 NeutronControlPlaneID:
182 Description: Neutron ID for ctlplane network.
183 NeutronDnsmasqOptions:
184 Default: 'dhcp-option-force=26,1400'
185 Description: Dnsmasq options for neutron-dhcp-agent. The default value here forces MTU to be set to 1400 to account for the gre tunnel overhead.
189 Default: overcloud-control
195 Description: The username for RabbitMQ
199 Description: The password for RabbitMQ
205 Description: Salt for the rabbit cookie, change this to force the randomly generated rabbit cookie to change.
206 HeatStackDomainAdminPassword:
207 Description: Password for heat_domain_admin user.
213 Description: The live-update username for the undercloud Glance API.
215 LiveUpdateTenantName:
217 Description: The live-update tenant name for the undercloud Glance API.
221 Description: The IP address for the undercloud Glance API.
226 Description: The live-update password for the undercloud Glance API.
228 LiveUpdateComputeImage:
230 Description: The image ID for live-updates to the overcloud compute nodes.
232 MysqlInnodbBufferPoolSize:
234 Specifies the size of the buffer pool in megabytes. Setting to
235 zero should be interpreted as "no value" and will defer to the
239 ControlVirtualInterface:
241 Description: Interface where virtual ip will be assigned.
245 Description: Should be used for arbitrary ips.
249 Type: OS::Neutron::Port
251 name: control_virtual_ip
252 network_id: {Ref: NeutronControlPlaneID}
256 Type: OS::Heat::RandomString
260 Ref: RabbitCookieSalt
263 Path: nova-compute-instance.yaml
264 SubKey: Resources.NovaCompute0Deploy
266 NovaApiHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
267 KeystoneHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
268 RabbitHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
269 NeutronHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
270 GlanceHost: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
271 NovaDSN: {"Fn::Join": ['', ['mysql://nova:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ]}, '/nova']]}
272 CeilometerDSN: {"Fn::Join": ['', ['mysql://ceilometer:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ]}, '/ceilometer']]}
273 NeutronDSN: {"Fn::Join": ['', ['mysql://neutron:unset@', {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ]}, '/neutron']]}
274 NeutronNetworkType: "gre"
275 NeutronEnableTunnelling: "True"
277 Ref: NeutronFlatNetworks
278 NeutronNetworkVLANRanges: ""
279 NeutronPhysicalBridge:
280 Ref: HypervisorNeutronPhysicalBridge
281 NeutronPublicInterface:
282 Ref: HypervisorNeutronPublicInterface
283 NeutronBridgeMappings:
284 Ref: NeutronBridgeMappings
341 NovaCompute0Passthrough:
342 Type: OS::Heat::StructuredDeployment
344 config: {Ref: NovaComputePassthrough}
345 server: {Ref: NovaCompute0}
346 signal_transport: NO_SIGNAL
348 passthrough_config: {Ref: ExtraConfig}
351 Path: nova-compute-instance.yaml
352 SubKey: Resources.NovaCompute0
354 Type: OS::Heat::StructuredConfig
357 completion-signal: {get_input: deploy_signal_id}
364 Ref: NeutronPublicInterfaceIP
366 db: mysql://cinder:unset@localhost/cinder
368 Ref: CinderLVMLoopDeviceSize
372 Ref: CinderISCSIHelper
374 get_input: controller_host
378 db: mysql://glance:unset@localhost/glance
380 get_input: controller_host
383 swift-store-user: service:glance
387 Ref: GlanceNotifierStrategy
393 admin_tenant_name: service
395 auth_encryption_key: unset___________
396 db: mysql://heat:unset@localhost/heat
397 stack_domain_admin_password: {Ref: HeatStackDomainAdminPassword}
398 watch_server_url: {get_input: heat.watch_server_url}
399 metadata_server_url: {get_input: heat.metadata_server_url}
400 waitcondition_server_url: {get_input: heat.waitcondition_server_url}
401 hosts: {get_input: hosts}
403 db: mysql://keystone:unset@localhost/keystone
405 get_input: controller_host
407 innodb_buffer_pool_size: {Ref: MysqlInnodbBufferPoolSize}
409 flat-networks: {Ref: NeutronFlatNetworks}
411 get_input: controller_host
412 metadata_proxy_shared_secret: unset
414 enable_tunneling: 'True'
416 get_input: controller_host
417 bridge_mappings: {Ref: NeutronBridgeMappings}
419 Ref: NeutronPublicInterface
420 public_interface_raw_device:
421 Ref: NeutronPublicInterfaceRawDevice
422 public_interface_route:
423 Ref: NeutronPublicInterfaceDefaultRoute
424 physical_bridge: br-ex
425 tenant_network_type: gre
426 ovs_db: mysql://neutron:unset@localhost/ovs_neutron?charset=utf8
430 Ref: NeutronDnsmasqOptions
432 db: mysql://ceilometer:unset@localhost/ceilometer
433 metering_secret: {Ref: CeilometerMeteringSecret}
435 Ref: CeilometerPassword
437 export_MIB: UCD-SNMP-MIB
439 Ref: SnmpdReadonlyUserName
440 readonly_user_password:
441 Ref: SnmpdReadonlyUserPassword
443 compute_driver: libvirt.LibvirtDriver
444 db: mysql://nova:unset@localhost/nova
445 default_floating_pool:
448 get_input: controller_host
454 get_input: controller_host
465 - {server: {Ref: NtpServer}, fudge: "stratum 0"}
468 Ref: NeutronPublicInterface
472 ip: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
474 Ref: ControlVirtualInterface
475 controllerPassthrough:
476 Type: OS::Heat::StructuredConfig
478 config: {get_input: passthrough_config}
480 Type: OS::Nova::Server
485 Ref: ImageUpdatePolicy
487 Ref: OvercloudControlFlavor
490 user_data_format: SOFTWARE_CONFIG
491 controller0Deployment:
492 Type: OS::Heat::StructuredDeployment
494 config: {Ref: controllerConfig}
495 server: {Ref: controller0}
505 heat.watch_server_url:
509 - {"Fn::Select": [ 0, "Fn::Select": [ ctlplane, { "Fn::GetAtt": [ controller0, networks ]}]]}
511 heat.metadata_server_url:
515 - {"Fn::Select": [ 0, "Fn::Select": [ ctlplane, { "Fn::GetAtt": [ controller0, networks ]}]]}
517 heat.waitcondition_server_url:
521 - {"Fn::Select": [ 0, "Fn::Select": [ ctlplane, { "Fn::GetAtt": [ controller0, networks ]}]]}
522 - ':8000/v1/waitcondition'
579 controller0SSLDeployment:
580 Type: OS::Heat::StructuredDeployment
582 config: {Ref: SSLConfig}
583 server: {Ref: controller0}
584 signal_transport: NO_SIGNAL
586 ssl_certificate: {Ref: SSLCertificate}
587 ssl_key: {Ref: SSLKey}
588 controller0Passthrough:
589 Type: OS::Heat::StructuredDeployment
591 config: {Ref: controllerPassthrough}
592 server: {Ref: controller0}
593 signal_transport: NO_SIGNAL
595 passthrough_config: {Ref: ExtraConfig}
598 Description: URL for the Overcloud Keystone service