diff options
author | Ihar Hrachyshka <ihrachys@redhat.com> | 2016-06-06 15:36:54 +0200 |
---|---|---|
committer | Brent Eagles <beagles@redhat.com> | 2016-07-05 10:35:22 -0230 |
commit | 2a64b67cef74fff86ce6b56b15431b859515844d (patch) | |
tree | 5f4a8778ac31c5d6fa9e9177f601ddd54daa414f /puppet | |
parent | 56398e72be4fe69add9b6e57a9b7d9ede6ece94c (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.yaml | 12 | ||||
-rw-r--r-- | puppet/controller.yaml | 12 | ||||
-rw-r--r-- | puppet/services/neutron-dhcp.yaml | 24 |
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 |