From eb7fe9bb9bb1298e5e2daed43622b57033c76c34 Mon Sep 17 00:00:00 2001 From: James Slagle Date: Mon, 4 Aug 2014 20:04:18 -0400 Subject: Parameterize network type and tunnel types Remove the hardcoding of gre as the Neutron tenant network type for the Overcloud. This will enable the ability to deploy an Overcloud that uses vxlan instead of gre tunnels. A new parameter, NeutronTunnelTypes, is added to allow configuring the tunnel_types parameter in the Neutron ML2 configuration. This change is required by https://review.openstack.org/#/c/92913 Change-Id: I2c2e2153a61349e58ada28c87aa2338c9f00e7bd --- nova-compute-config.yaml | 1 + nova-compute-instance.yaml | 11 +++++++++++ overcloud-source.yaml | 22 +++++++++++++++++++--- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/nova-compute-config.yaml b/nova-compute-config.yaml index 5dc8f204..48cb81ee 100644 --- a/nova-compute-config.yaml +++ b/nova-compute-config.yaml @@ -38,6 +38,7 @@ resources: ovs: local_ip: {get_input: neutron_local_ip} tenant_network_type: {get_input: neutron_tenant_network_type} + tunnel_types: {get_input: neutron_tunnel_types} network_vlan_ranges: {get_input: neutron_network_vlan_ranges} bridge_mappings: {get_input: neutron_bridge_mappings} enable_tunneling: {get_input: neutron_enable_tunneling} diff --git a/nova-compute-instance.yaml b/nova-compute-instance.yaml index d368f14b..5b54a540 100644 --- a/nova-compute-instance.yaml +++ b/nova-compute-instance.yaml @@ -84,6 +84,16 @@ parameters: default: '' description: A port to add to the NeutronPhysicalBridge. type: string + NeutronNetworkType: + default: 'gre' + description: The tenant network type for Neutron, either gre or vxlan. + 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 RabbitHost: type: string RabbitUserName: @@ -227,6 +237,7 @@ resources: neutron_dsn: {get_param: NeutronDSN} neutron_local_ip: {get_attr: [NovaCompute0, networks, ctlplane, 0]} neutron_tenant_network_type: {get_param: NeutronNetworkType} + neutron_tunnel_types: {get_param: NeutronTunnelTypes} neutron_network_vlan_ranges: {get_param: NeutronNetworkVLANRanges} neutron_bridge_mappings: {get_param: NeutronBridgeMappings} neutron_enable_tunneling: {get_param: NeutronEnableTunnelling} diff --git a/overcloud-source.yaml b/overcloud-source.yaml index 3dbd5712..6cceff2e 100644 --- a/overcloud-source.yaml +++ b/overcloud-source.yaml @@ -235,7 +235,17 @@ parameters: description: Neutron ID for ctlplane network. NeutronDnsmasqOptions: default: 'dhcp-option-force=26,1400' - 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. + description: Dnsmasq options for neutron-dhcp-agent. The default value here forces MTU to be set to 1400 to account for the tunnel overhead. + type: string + NeutronNetworkType: + default: 'gre' + description: The tenant network type for Neutron, either gre or vxlan. + 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 controllerImage: type: string @@ -393,7 +403,10 @@ resources: - - mysql://neutron:unset@ - *compute_database_host - /ovs_neutron - NeutronNetworkType: "gre" + NeutronNetworkType: + get_param: NeutronNetworkType + NeutronTunnelTypes: + get_param: NeutronTunnelTypes NeutronEnableTunnelling: "True" NeutronFlatNetworks: get_param: NeutronFlatNetworks @@ -580,7 +593,10 @@ resources: public_interface_tag: get_param: NeutronPublicInterfaceTag physical_bridge: br-ex - tenant_network_type: gre + tenant_network_type: + get_param: NeutronNetworkType + tunnel_types: + get_param: NeutronTunnelTypes ovs_db: Fn::Join: - '' -- cgit 1.2.3-korg