description: All-in-one baremetal OpenStack and all dependencies.
-heat_template_version: 2014-10-16
+heat_template_version: 2013-05-23
parameters:
AdminPassword:
default: unset
description: The password for the ceilometer service account.
type: string
hidden: true
+ Debug:
+ default: ''
+ description: Set to True to enable debugging on all services.
+ type: string
SnmpdReadonlyUserName:
default: ro_snmp_user
description: The user name for SNMPd with readonly rights running on all Overcloud nodes
type: string
NeutronPublicInterfaceIP:
default: ''
- description: A custom IP address to put onto the NeutronPublicInterface.
+ description: >
+ A custom IP address to put onto the NeutronPublicInterface bridge.
+ See also NeutronPublicInterfaceTagIP for adding a VLAN tagging IP.
+ NeutronPublicInterfaceIP is deprecated in the context of deploying
+ underclouds - its only needed for the seed bootstrap process.
+ type: string
+ NeutronPublicInterfaceTag:
+ default: ''
+ description: >
+ VLAN tag for creating a public VLAN. The tag will be used to
+ create an access port on the exterior bridge, and that port will be
+ given the IP address returned by neutron from the public network.
type: string
NeutronPublicInterfaceRawDevice:
default: ''
description: Keystone key for signing tokens.
type: string
hidden: true
+ DefaultSignalTransport:
+ default: CFN_SIGNAL
+ description: Transport to use for software-config signals.
+ type: string
+ constraints:
+ - allowed_values: [ CFN_SIGNAL, HEAT_SIGNAL, NO_SIGNAL ]
resources:
RabbitCookie:
type: OS::Heat::RandomString
length: 20
salt:
get_param: RabbitCookieSalt
+ MysqlRootPassword:
+ type: OS::Heat::RandomString
+ properties:
+ length: 10
undercloudConfig:
type: OS::Heat::StructuredConfig
properties:
get_param: NeutronPublicInterfaceIP
controller-address:
get_input: controller_host
+ corosync:
+ bindnetaddr: {get_input: controller_host}
+ mcastport: 5577
+ nodes:
+ Merge::Map:
+ controller0:
+ ip: {get_attr: [undercloud, networks, ctlplane, 0]}
+ pacemaker:
+ stonith_enabled : false
+ recheck_interval : 5
+ quorum_policy : ignore
ceilometer:
db: mysql://ceilometer:unset@localhost/ceilometer
+ debug: {get_param: Debug}
metering_secret: {get_param: CeilometerMeteringSecret}
snmpd_readonly_user_name:
get_param: SnmpdReadonlyUserName
glance:
backend: file
db: mysql://glance:unset@localhost/glance
+ debug: {get_param: Debug}
host: 127.0.0.1
port:
get_param: GlancePort
admin_user: heat
auth_encryption_key: unset___________
db: mysql://heat:unset@localhost/heat
+ debug: {get_param: Debug}
stack_domain_admin_password: {get_param: HeatStackDomainAdminPassword}
watch_server_url: {get_input: heat.watch_server_url}
metadata_server_url: {get_input: heat.metadata_server_url}
waitcondition_server_url: {get_input: heat.waitcondition_server_url}
keystone:
db: mysql://keystone:unset@localhost/keystone
+ debug: {get_param: Debug}
host: 127.0.0.1
ca_certificate: {get_param: KeystoneCACertificate}
signing_key: {get_param: KeystoneSigningKey}
signing_certificate: {get_param: KeystoneSigningCertificate}
mysql:
innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
+ root-password: {get_resource: MysqlRootPassword}
neutron:
+ debug: {get_param: Debug}
host: 127.0.0.1
ovs_db: mysql://neutron:unset@localhost/ovs_neutron?charset=utf8
ovs:
get_param: NeutronPublicInterfaceRawDevice
public_interface_route:
get_param: NeutronPublicInterfaceDefaultRoute
+ public_interface_tag:
+ get_param: NeutronPublicInterfaceTag
physical_bridge: br-ctlplane
physical_network: ctlplane
network_vlan_ranges: ctlplane
networks:
- network: ctlplane
user_data_format: SOFTWARE_CONFIG
- 99_undercloudDeployment:
+ undercloudDeployment:
+ depends_on: [undercloudPassthroughDeployment]
type: OS::Heat::StructuredDeployment
properties:
config: {get_resource: undercloudConfig}
server: {get_resource: undercloud}
+ signal_transport: {get_param: DefaultSignalTransport}
input_values:
bootstack_nodeid:
- Fn::Select:
- - name
- - get_attr:
- - undercloud
- - show
+ get_attr:
+ - undercloud
+ - show
+ - name
controller_host:
- Fn::Select:
- - 0
- - Fn::Select:
- - ctlplane
- - get_attr:
- - undercloud
- - networks
+ get_attr:
+ - undercloud
+ - networks
+ - ctlplane
+ - 0
heat.watch_server_url:
- list_join:
+ Fn::Join:
- ''
- - 'http://'
- - {"Fn::Select": [ 0, "Fn::Select": [ ctlplane, { get_attr: [ undercloud, networks ]}]]}
+ - get_attr: [undercloud, networks, ctlplane, 0]
- ':8003'
heat.metadata_server_url:
- list_join:
+ Fn::Join:
- ''
- - 'http://'
- - {"Fn::Select": [ 0, "Fn::Select": [ ctlplane, { get_attr: [ undercloud, networks ]}]]}
+ - {get_attr: [undercloud, networks, ctlplane, 0]}
- ':8000'
heat.waitcondition_server_url:
- list_join:
+ Fn::Join:
- ''
- - 'http://'
- - {"Fn::Select": [ 0, "Fn::Select": [ ctlplane, { get_attr: [ undercloud, networks ]}]]}
+ - {get_attr: [undercloud, networks, ctlplane, 0]}
- ':8000/v1/waitcondition'
- 00_undercloudPassthroughDeployment:
+ undercloudPassthroughDeployment:
+ depends_on: [undercloudNovaDeployment]
type: OS::Heat::StructuredDeployment
properties:
config: {get_resource: undercloudPassthroughConfig}