aboutsummaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
authorIhar Hrachyshka <ihrachys@redhat.com>2016-06-06 15:36:54 +0200
committerBrent Eagles <beagles@redhat.com>2016-07-05 10:35:22 -0230
commit2a64b67cef74fff86ce6b56b15431b859515844d (patch)
tree5f4a8778ac31c5d6fa9e9177f601ddd54daa414f /puppet
parent56398e72be4fe69add9b6e57a9b7d9ede6ece94c (diff)
neutron: remove tenant MTU configuration options
Since Mitaka, Neutron and Nova do the right thing for MTU, correctly calculating and applying MTU per network, considering its network type and underlying physical network MTU (1500 by default). Neutron now also correctly advertise proper MTU to instances through DHCP and RA mechanisms. With that, there is no reason to have those MTU hacks in deployment tools. Actually, they not only do no good, but break some setups (Jumbo frame aware infrastructure), or at least make them non-optimal (lowering instance MTU to 1400 when it's not needed, or when tunnel overhead does not require 100 bytes). Note that Neutron still has a set of configuration options to allow for custom physical network MTUs (global_physnet_mtu, path_mtu, physical_network_mtus). Those options define underlying infrastructure though, not tenant MTUs. To support Jumbo frames, TripleO should allow to set those options. That said, it's not the immediate goal of the patch, and hence such an effort would require a separate patch. Mitaka+ documentation on MTU configuration for Neutron: http://docs.openstack.org/mitaka/networking-guide/adv-config-mtu.html Change-Id: I540ba5dc69d0506f71b59746efcce94c73f9317f
Diffstat (limited to 'puppet')
-rw-r--r--puppet/compute.yaml12
-rw-r--r--puppet/controller.yaml12
-rw-r--r--puppet/services/neutron-dhcp.yaml24
3 files changed, 1 insertions, 47 deletions
diff --git a/puppet/compute.yaml b/puppet/compute.yaml
index db2d7465..820a2acd 100644
--- a/puppet/compute.yaml
+++ b/puppet/compute.yaml
@@ -118,15 +118,6 @@ parameters:
default: nic1
description: A port to add to the NeutronPhysicalBridge.
type: string
- NeutronTenantMtu:
- description: >
- The default MTU for tenant networks. For VXLAN/GRE tunneling, this should
- be at least 50 bytes smaller than the MTU on the physical network. This
- value will be used to set the MTU on the virtual Ethernet device.
- This number is related to the value of NeutronDnsmasqOptions, since that
- will determine the MTU that is assigned to the VM host through DHCP.
- default: 1400
- type: number
NeutronTunnelTypes:
type: comma_delimited_list
description: |
@@ -517,7 +508,6 @@ resources:
nova::migration::live_migration_tunnelled: {get_input: nova_enable_rbd_backend}
rbd_persistent_storage: {get_input: cinder_enable_rbd_backend}
nova_password: {get_input: nova_password}
- nova::compute::network_device_mtu: {get_input: neutron_tenant_mtu}
nova::compute::vncserver_proxyclient_address: {get_input: nova_vnc_proxyclient_address}
nova::vncproxy::common::vncproxy_protocol: {get_input: nova_vncproxy_protocol}
nova::vncproxy::common::vncproxy_host: {get_input: nova_vncproxy_host}
@@ -543,7 +533,6 @@ resources:
neutron_host: {get_input: neutron_host}
neutron::agents::ml2::ovs::local_ip: {get_input: neutron_local_ip}
- neutron::network_device_mtu: {get_input: neutron_tenant_mtu}
neutron::plugins::ml2::tenant_network_types: {get_input: neutron_tenant_network_types}
neutron::agents::ml2::ovs::tunnel_types: {get_input: neutron_tunnel_types}
neutron::agents::ml2::ovs::extensions: {get_input: neutron_agent_extensions}
@@ -643,7 +632,6 @@ resources:
template: MAPPINGS
params:
MAPPINGS: {get_param: NeutronBridgeMappings}
- neutron_tenant_mtu: {get_param: NeutronTenantMtu}
neutron_enable_tunneling: {get_param: NeutronEnableTunnelling}
neutron_enable_l2pop: {get_param: NeutronEnableL2Pop}
neutron_physical_bridge: {get_param: NeutronPhysicalBridge}
diff --git a/puppet/controller.yaml b/puppet/controller.yaml
index 101d971e..86e7a4b8 100644
--- a/puppet/controller.yaml
+++ b/puppet/controller.yaml
@@ -236,15 +236,6 @@ parameters:
default: nic1
description: What interface to bridge onto br-ex for network nodes.
type: string
- NeutronTenantMtu:
- description: >
- The default MTU for tenant networks. For VXLAN/GRE tunneling, this should
- be at least 50 bytes smaller than the MTU on the physical network. This
- value will be used to set the MTU on the virtual Ethernet device.
- This number is related to the value of NeutronDnsmasqOptions, since that
- will determine the MTU that is assigned to the VM host through DHCP.
- default: 1400
- type: number
NovaEnableDBPurge:
default: true
description: |
@@ -584,7 +575,6 @@ resources:
CLUSTER: {get_param: MysqlClusterUniquePart}
neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
neutron_password: {get_param: NeutronPassword}
- neutron_tenant_mtu: {get_param: NeutronTenantMtu}
neutron_internal_url: { get_param: [ EndpointMap, NeutronInternal, uri ] }
neutron_public_url: { get_param: [ EndpointMap, NeutronPublic, uri ] }
neutron_admin_url: { get_param: [ EndpointMap, NeutronAdmin, uri ] }
@@ -856,7 +846,6 @@ resources:
# Neutron
neutron::bind_host: {get_input: neutron_api_network}
- neutron::network_device_mtu: {get_input: neutron_tenant_mtu}
neutron::agents::ml2::ovs::local_ip: {get_input: neutron_local_ip}
neutron::agents::metadata::metadata_ip: {get_input: neutron_api_network}
neutron::keystone::auth::public_url: {get_input: neutron_public_url }
@@ -950,7 +939,6 @@ resources:
nova::api::api_bind_address: {get_input: nova_api_network}
nova::api::metadata_listen: {get_input: nova_metadata_network}
nova::api::admin_password: {get_input: nova_password}
- nova::compute::network_device_mtu: {get_input: neutron_tenant_mtu}
nova::database_connection: {get_input: nova_dsn}
nova::api_database_connection: {get_input: nova_api_dsn}
nova::glance_api_servers: {get_input: glance_api_servers}
diff --git a/puppet/services/neutron-dhcp.yaml b/puppet/services/neutron-dhcp.yaml
index 80ccf1c2..5d02bc90 100644
--- a/puppet/services/neutron-dhcp.yaml
+++ b/puppet/services/neutron-dhcp.yaml
@@ -13,22 +13,6 @@ parameters:
default: 'False'
description: If True, DHCP provide metadata route to VM.
type: string
- NeutronDnsmasqOptions:
- default: 'dhcp-option-force=26,%MTU%'
- description: >
- Dnsmasq options for neutron-dhcp-agent. The default value here forces MTU
- to be set to the value of NeutronTenantMtu, which should be set to account
- for tunnel overhead.
- type: string
- NeutronTenantMtu:
- description: >
- The default MTU for tenant networks. For VXLAN/GRE tunneling, this should
- be at least 50 bytes smaller than the MTU on the physical network. This
- value will be used to set the MTU on the virtual Ethernet device.
- This value will be used to construct the NeutronDnsmasqOptions, since that
- will determine the MTU that is assigned to the VM host through DHCP.
- default: "1400"
- type: string
resources:
@@ -42,12 +26,6 @@ outputs:
config_settings:
map_merge:
- get_attr: [NeutronBase, role_data, config_settings]
- - neutron::agents::dhcp::dnsmasq_config_file: /etc/neutron/dnsmasq-neutron.conf
- tripleo::profile::base::neutron::dhcp:
- str_replace:
- template: {get_param: NeutronDnsmasqOptions}
- params:
- '%MTU%': {get_param: NeutronTenantMtu}
- neutron::agents::dhcp::enable_isolated_metadata: {get_param: NeutronEnableIsolatedMetadata}
+ - neutron::agents::dhcp::enable_isolated_metadata: {get_param: NeutronEnableIsolatedMetadata}
step_config: |
include tripleo::profile::base::neutron::dhcp