Add agent/explicitly_egress_direct support
This configuration parameter for the ML2/OVS agent was added in I14fefe289a19b718b247bf0740ca9bc47f8903f4 and backported up to stable/queens, preventing flooding on integration bridge in some cases. It needs to be enabled on specific node types, so add option to configure it. Related-Bug: #1732067 Change-Id: Iff50d2d086c687ef9ec1ba878e24c06dfc8a7d99
This commit is contained in:
parent
8a89732184
commit
d0bc82d842
@ -184,6 +184,12 @@
|
||||
# (optional) List of <bridge>:<egress_bw>:<ingress_bw>
|
||||
# Defaults to empty list
|
||||
#
|
||||
# [*explicitly_egress_direct*]
|
||||
# (optional) When set to True, the accepted egress unicast traffic will not
|
||||
# use action NORMAL. The accepted egress packets will be taken care of in the
|
||||
# final egress tables direct output flows for unicast traffic. (boolean value)
|
||||
# Defaults to $::os_service_default
|
||||
#
|
||||
# DEPRECATED
|
||||
#
|
||||
# [*ovsdb_interface*]
|
||||
@ -226,6 +232,7 @@ class neutron::agents::ml2::ovs (
|
||||
$tunnel_csum = $::os_service_default,
|
||||
$igmp_snooping_enable = $::os_service_default,
|
||||
$resource_provider_bandwidths = [],
|
||||
$explicitly_egress_direct = $::os_service_default,
|
||||
# DEPRECATED
|
||||
$ovsdb_interface = undef,
|
||||
) {
|
||||
@ -335,6 +342,7 @@ class neutron::agents::ml2::ovs (
|
||||
'agent/extensions': value => join(any2array($extensions), ',');
|
||||
'agent/minimize_polling': value => $minimize_polling;
|
||||
'agent/tunnel_csum': value => $tunnel_csum;
|
||||
'agent/explicitly_egress_direct': value => $explicitly_egress_direct;
|
||||
'ovs/ovsdb_timeout': value => $ovsdb_timeout;
|
||||
'ovs/of_connect_timeout': value => $of_connect_timeout;
|
||||
'ovs/of_request_timeout': value => $of_request_timeout;
|
||||
|
@ -0,0 +1,9 @@
|
||||
---
|
||||
features:
|
||||
- |
|
||||
Add new configuration parameter explicitly_egress_direct for ML2 OVS agent
|
||||
When set to True, the accepted egress unicast traffic will not use action
|
||||
NORMAL. The accepted egress packets will be taken care of in the final
|
||||
egress tables direct output flows for unicast traffic so that operators can
|
||||
set customized integration bridge name in l3 agent configuration.
|
||||
This can be enabled on some nodes to prevent flooding on integration bridge.
|
@ -66,6 +66,7 @@ describe 'neutron::agents::ml2::ovs' do
|
||||
should contain_neutron_agent_ovs('agent/tunnel_types').with_ensure('absent')
|
||||
should contain_neutron_agent_ovs('ovs/igmp_snooping_enable').with_value('<SERVICE DEFAULT>')
|
||||
should_not contain_neutron_agent_ovs('ovs/resource_provider_bandwidths')
|
||||
should contain_neutron_agent_ovs('agent/explicitly_egress_direct').with_value(['<SERVICE DEFAULT>'])
|
||||
end
|
||||
|
||||
it 'installs neutron ovs agent package' do
|
||||
@ -379,6 +380,16 @@ describe 'neutron::agents::ml2::ovs' do
|
||||
end
|
||||
end
|
||||
|
||||
context 'with direct output enabled for egress flows' do
|
||||
before :each do
|
||||
params.merge!(:explicitly_egress_direct => true)
|
||||
end
|
||||
|
||||
it 'configure neutron/plugins/ml2/ml2_conf.ini' do
|
||||
should contain_neutron_agent_ovs('agent/explicitly_egress_direct').with_value(true)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
on_supported_os({
|
||||
|
Loading…
Reference in New Issue
Block a user