diff options
Diffstat (limited to 'overcloud-source.yaml')
-rw-r--r-- | overcloud-source.yaml | 102 |
1 files changed, 88 insertions, 14 deletions
diff --git a/overcloud-source.yaml b/overcloud-source.yaml index 60a2cdf5..0ed117b2 100644 --- a/overcloud-source.yaml +++ b/overcloud-source.yaml @@ -110,9 +110,22 @@ parameters: description: Name of an existing EC2 KeyPair to enable SSH access to the instances type: string NeutronBridgeMappings: - description: The OVS logical->physical bridge mappings to use. + description: > + The OVS logical->physical bridge mappings to use. See the Neutron + documentation for details. Defaults to mapping br-ex - the external + bridge on hosts - to a physical name 'datacentre' which can be used + to create provider networks (and we use this for the default floating + network) - if changing this either use different post-install network + scripts or be sure to keep 'datacentre' as a mapping network name. + type: string + default: "datacentre:br-ex" + NeutronNetworkVLANRanges: + default: 'datacentre' + description: > + The Neutron ML2 and OpenVSwitch vlan mapping range to support. See the + Neutron documentation for permitted values. Defaults to permitting any + VLAN on the 'datacentre' physical network (See NeutronBridgeMappings). type: string - default: '' NeutronPassword: default: unset description: The password for the neutron service account, used by neutron agents. @@ -163,14 +176,19 @@ parameters: hidden: true NeutronFlatNetworks: type: string - default: '' - description: If set, flat networks to configure in neutron plugins. + default: 'datacentre' + description: > + If set, flat networks to configure in neutron plugins. Defaults to + 'datacentre' to permit external network creation. HypervisorNeutronPhysicalBridge: - default: '' - description: An OVS bridge to create on each hypervisor. + default: 'br-ex' + description: > + An OVS bridge to create on each hypervisor. This defaults to br-ex the + same as the control plane nodes, as we have a uniform configuration of + the openvswitch agent. Typically should not need to be changed. type: string HypervisorNeutronPublicInterface: - default: '' + default: 'eth0' description: What interface to add to the HypervisorNeutronPhysicalBridge. type: string NeutronPublicInterface: @@ -185,6 +203,16 @@ parameters: default: '' description: A custom IP address to put onto the NeutronPublicInterface. 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 for each control plane node, + and that port will be given the IP address returned by neutron from the + public network. Set CONTROLEXTRA=overcloud-vlan-port.yaml when compiling + overcloud.yaml to include the deployment of VLAN ports to the control + plane. + type: string NeutronPublicInterfaceRawDevice: default: '' description: If set, the public interface is a vlan with this device as the raw device. @@ -259,7 +287,7 @@ parameters: type: json PublicVirtualFixedIPs: default: [] - description: | + description: > Control the IP allocation for the PublicVirtualInterface port. E.g. [{'ip_address':'1.2.3.4'}] type: json @@ -287,6 +315,12 @@ parameters: 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: ControlVirtualIP: type: OS::Neutron::Port @@ -299,6 +333,10 @@ resources: type: OS::Heat::RandomString properties: length: 10 + MysqlRootPassword: + type: OS::Heat::RandomString + properties: + length: 10 PublicVirtualIP: type: OS::Neutron::Port properties: @@ -312,11 +350,13 @@ resources: length: 20 salt: get_param: RabbitCookieSalt - NovaCompute0Deploy: + NovaCompute0Deployment: type: FileInclude Path: nova-compute-instance.yaml - SubKey: resources.NovaCompute0Deploy + SubKey: resources.NovaCompute0Deployment parameters: + DefaultSignalTransport: + get_param: DefaultSignalTransport NovaApiHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} KeystoneHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} NeutronHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} @@ -328,6 +368,7 @@ resources: - - mysql://nova:unset@ - &compute_database_host {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} - /nova + NovaPublicIP: {get_attr: [PublicVirtualIP, fixed_ips, 0, ip_address]} CeilometerDSN: Fn::Join: - '' @@ -344,17 +385,18 @@ resources: NeutronEnableTunnelling: "True" NeutronFlatNetworks: get_param: NeutronFlatNetworks - NeutronNetworkVLANRanges: "" + NeutronNetworkVLANRanges: + get_param: NeutronNetworkVLANRanges NeutronPhysicalBridge: get_param: HypervisorNeutronPhysicalBridge NeutronPublicInterface: get_param: HypervisorNeutronPublicInterface NeutronBridgeMappings: get_param: NeutronBridgeMappings - NovaCompute0AllNodes: + NovaCompute0AllNodesDeployment: type: FileInclude Path: nova-compute-instance.yaml - SubKey: resources.NovaCompute0AllNodesDeploy + SubKey: resources.NovaCompute0AllNodesDeployment parameters: AllNodesConfig: {get_resource: allNodesConfig} NovaCompute0Passthrough: @@ -490,6 +532,7 @@ resources: mysql: innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize} local_bind: true + root-password: {get_resource: MysqlRootPassword} nodes: Merge::Map: controller0: @@ -508,6 +551,7 @@ resources: enable_tunneling: 'True' local_ip: get_input: controller_host + network_vlan_ranges: {get_param: NeutronNetworkVLANRanges} bridge_mappings: {get_param: NeutronBridgeMappings} public_interface: get_param: NeutronPublicInterface @@ -515,6 +559,8 @@ resources: get_param: NeutronPublicInterfaceRawDevice public_interface_route: get_param: NeutronPublicInterfaceDefaultRoute + public_interface_tag: + get_param: NeutronPublicInterfaceTag physical_bridge: br-ex tenant_network_type: gre ovs_db: @@ -654,6 +700,9 @@ resources: port: 3306 extra_server_params: - backup + options: + - timeout client 0 + - timeout server 0 - name: nova_ec2 port: 8773 - name: nova_osapi @@ -692,10 +741,11 @@ resources: networks: - network: ctlplane user_data_format: SOFTWARE_CONFIG - controller0AllNodes: + controller0AllNodesDeployment: depends_on: [controller0Deployment,controller0SSLDeployment,controller0Swift,controller0Passthrough] type: OS::Heat::StructuredDeployment properties: + signal_transport: {get_param: DefaultSignalTransport} config: {get_resource: allNodesConfig} server: {get_resource: controller0} controller0Deployment: @@ -750,6 +800,30 @@ resources: - Fn::Join: - "\n" - Merge::Map: + BlockStorage0: + Fn::Join: + - ' ' + - - {get_attr: [BlockStorage0, networks, ctlplane, 0]} + - {get_attr: [BlockStorage0, show, name]} + - Fn::Join: + - '.' + - - {get_attr: [BlockStorage0, show, name]} + - 'novalocal' + - Fn::Join: + - "\n" + - Merge::Map: + SwiftStorage0: + Fn::Join: + - ' ' + - - {get_attr: [SwiftStorage0, networks, ctlplane, 0]} + - {get_attr: [SwiftStorage0, show, name]} + - Fn::Join: + - '.' + - - {get_attr: [SwiftStorage0, show, name]} + - 'novalocal' + - Fn::Join: + - "\n" + - Merge::Map: controller0: Fn::Join: - ' ' |