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.
247 KeystoneCACertificate:
249 Description: Keystone self-signed certificate authority certificate.
251 KeystoneSigningCertificate:
253 Description: Keystone certificate for verifying token validity.
257 Description: Keystone key for signing tokens.
262 Type: OS::Neutron::Port
264 name: control_virtual_ip
265 network_id: {Ref: NeutronControlPlaneID}
268 MysqlClusterUniquePart:
269 Type: OS::Heat::RandomString
273 Type: OS::Heat::RandomString
277 Ref: RabbitCookieSalt
280 Path: nova-compute-instance.yaml
281 SubKey: Resources.NovaCompute0Deploy
283 NovaApiHost: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
284 KeystoneHost: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
285 RabbitHost: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
286 NeutronHost: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
287 GlanceHost: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
288 NovaDSN: {"Fn::Join": ['', ['mysql://nova:unset@', {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}, '/nova']]}
289 CeilometerDSN: {"Fn::Join": ['', ['mysql://ceilometer:unset@', {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}, '/ceilometer']]}
290 NeutronDSN: {"Fn::Join": ['', ['mysql://neutron:unset@', {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}, '/neutron']]}
291 NeutronNetworkType: "gre"
292 NeutronEnableTunnelling: "True"
294 Ref: NeutronFlatNetworks
295 NeutronNetworkVLANRanges: ""
296 NeutronPhysicalBridge:
297 Ref: HypervisorNeutronPhysicalBridge
298 NeutronPublicInterface:
299 Ref: HypervisorNeutronPublicInterface
300 NeutronBridgeMappings:
301 Ref: NeutronBridgeMappings
358 NovaCompute0Passthrough:
359 Type: OS::Heat::StructuredDeployment
361 config: {Ref: NovaComputePassthrough}
362 server: {Ref: NovaCompute0}
363 signal_transport: NO_SIGNAL
365 passthrough_config: {Ref: ExtraConfig}
368 Path: nova-compute-instance.yaml
369 SubKey: Resources.NovaCompute0
371 Type: OS::Heat::StructuredConfig
373 group: os-apply-config
375 completion-signal: {get_input: deploy_signal_id}
382 Ref: NeutronPublicInterfaceIP
396 nodeid: {get_input: bootstack_nodeid}
398 db: mysql://cinder:unset@localhost/cinder
400 Ref: CinderLVMLoopDeviceSize
404 Ref: CinderISCSIHelper
406 get_input: controller_host
410 host: {get_input: controller_virtual_ip}
412 db: mysql://glance:unset@localhost/glance
414 get_input: controller_host
417 swift-store-user: service:glance
421 Ref: GlanceNotifierStrategy
427 admin_tenant_name: service
429 auth_encryption_key: unset___________
430 db: mysql://heat:unset@localhost/heat
431 stack_domain_admin_password: {Ref: HeatStackDomainAdminPassword}
432 watch_server_url: {get_input: heat.watch_server_url}
433 metadata_server_url: {get_input: heat.metadata_server_url}
434 waitcondition_server_url: {get_input: heat.waitcondition_server_url}
435 hosts: {get_input: hosts}
437 db: mysql://keystone:unset@localhost/keystone
439 get_input: controller_host
440 ca_certificate: {Ref: KeystoneCACertificate}
441 signing_key: {Ref: KeystoneSigningKey}
442 signing_certificate: {Ref: KeystoneSigningCertificate}
444 innodb_buffer_pool_size: {Ref: MysqlInnodbBufferPoolSize}
448 ip: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
453 - {Ref: MysqlClusterUniquePart}
455 flat-networks: {Ref: NeutronFlatNetworks}
456 host: {get_input: controller_virtual_ip}
457 metadata_proxy_shared_secret: unset
459 enable_tunneling: 'True'
461 get_input: controller_host
462 bridge_mappings: {Ref: NeutronBridgeMappings}
464 Ref: NeutronPublicInterface
465 public_interface_raw_device:
466 Ref: NeutronPublicInterfaceRawDevice
467 public_interface_route:
468 Ref: NeutronPublicInterfaceDefaultRoute
469 physical_bridge: br-ex
470 tenant_network_type: gre
471 ovs_db: mysql://neutron:unset@localhost/ovs_neutron?charset=utf8
475 Ref: NeutronDnsmasqOptions
477 db: mysql://ceilometer:unset@localhost/ceilometer
478 metering_secret: {Ref: CeilometerMeteringSecret}
480 Ref: CeilometerPassword
482 export_MIB: UCD-SNMP-MIB
484 Ref: SnmpdReadonlyUserName
485 readonly_user_password:
486 Ref: SnmpdReadonlyUserPassword
488 compute_driver: libvirt.LibvirtDriver
489 db: mysql://nova:unset@localhost/nova
490 default_floating_pool:
492 host: {get_input: controller_virtual_ip}
498 get_input: controller_host
509 - {server: {Ref: NtpServer}, fudge: "stratum 0"}
512 Ref: NeutronPublicInterface
516 ip: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
518 Ref: ControlVirtualInterface
523 ip: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
524 name: {"Fn::Select": [ name, {"Fn::GetAtt": [controller0, show]} ] }
526 - ip: {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
528 - name: keystone_admin
530 - name: keystone_public
540 - name: glance_registry
544 - name: heat_cloudwatch
552 - name: nova_metadata
556 - name: swift_proxy_server
558 controllerPassthrough:
559 Type: OS::Heat::StructuredConfig
561 group: os-apply-config
562 config: {get_input: passthrough_config}
564 Type: OS::Nova::Server
569 Ref: ImageUpdatePolicy
571 Ref: OvercloudControlFlavor
574 user_data_format: SOFTWARE_CONFIG
575 controller0Deployment:
576 Type: OS::Heat::StructuredDeployment
578 config: {Ref: controllerConfig}
579 server: {Ref: controller0}
595 heat.watch_server_url:
599 - {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
601 heat.metadata_server_url:
605 - {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
607 heat.waitcondition_server_url:
611 - {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
612 - ':8000/v1/waitcondition'
669 controller_virtual_ip:
670 {'Fn::Select': [ip_address, 'Fn::Select': [0, 'Fn::GetAtt': [ControlVirtualIP, fixed_ips]]]}
671 controller0SSLDeployment:
672 Type: OS::Heat::StructuredDeployment
674 config: {Ref: SSLConfig}
675 server: {Ref: controller0}
676 signal_transport: NO_SIGNAL
678 ssl_certificate: {Ref: SSLCertificate}
679 ssl_key: {Ref: SSLKey}
680 ssl_ca_certificate: {Ref: SSLCACertificate}
681 controller0Passthrough:
682 Type: OS::Heat::StructuredDeployment
684 config: {Ref: controllerPassthrough}
685 server: {Ref: controller0}
686 signal_transport: NO_SIGNAL
688 passthrough_config: {Ref: ExtraConfig}
691 Description: URL for the Overcloud Keystone service