Improve the L3 Agent support

New features:
- send_arp_for_ha
- periodic_interval
- periodic_fuzzy_delay
- enable_metadata_proxy

Fix bug #1207563

Change-Id: I890a6a9b4dc3eb3a189566578c5fbf5e31c145bf
This commit is contained in:
Emilien Macchi 2013-08-02 01:18:12 +02:00
parent 87edf7758f
commit 273ed74e57
2 changed files with 35 additions and 2 deletions
manifests/agents
spec/classes

@ -46,6 +46,23 @@
# (optional) The port of the metadata server
# Defaults to 9697
#
# [*send_arp_for_ha*]
# (optional) Send this many gratuitous ARPs for HA setup. Set it below or equal to 0
# to disable this feature.
# Defaults to 3
#
# [*periodic_interval*]
# (optional) seconds between re-sync routers' data if needed
# Defaults to 40
#
# [*periodic_fuzzy_delay*]
# (optional) seconds to start to sync routers' data after starting agent
# Defaults to 5
#
# [*enable_metadata_proxy*]
# (optional) can be set to False if the Nova metadata server is not available
# Defaults to True
#
class quantum::agents::l3 (
$package_ensure = 'present',
$enabled = true,
@ -56,7 +73,11 @@ class quantum::agents::l3 (
$router_id = undef,
$gateway_external_network_id = undef,
$handle_internal_only_routers = true,
$metadata_port = '9697'
$metadata_port = '9697',
$send_arp_for_ha = '3',
$periodic_interval = '40',
$periodic_fuzzy_delay = '5',
$enable_metadata_proxy = true
) {
include quantum::params
@ -73,6 +94,10 @@ class quantum::agents::l3 (
'DEFAULT/gateway_external_network_id': value => $gateway_external_network_id;
'DEFAULT/handle_internal_only_routers': value => $handle_internal_only_routers;
'DEFAULT/metadata_port': value => $metadata_port;
'DEFAULT/send_arp_for_ha': value => $send_arp_for_ha;
'DEFAULT/periodic_interval': value => $periodic_interval;
'DEFAULT/periodic_fuzzy_delay': value => $periodic_fuzzy_delay;
'DEFAULT/enable_metadata_proxy': value => $enable_metadata_proxy;
}
if $::quantum::params::l3_agent_package {

@ -16,7 +16,11 @@ describe 'quantum::agents::l3' do
:router_id => nil,
:gateway_external_network_id => nil,
:handle_internal_only_routers => true,
:metadata_port => '9697' }
:metadata_port => '9697',
:send_arp_for_ha => '3',
:periodic_interval => '40',
:periodic_fuzzy_delay => '5',
:enable_metadata_proxy => true }
end
let :params do
@ -39,6 +43,10 @@ describe 'quantum::agents::l3' do
should contain_quantum_l3_agent_config('DEFAULT/gateway_external_network_id').with_value(p[:gateway_external_network_id])
should contain_quantum_l3_agent_config('DEFAULT/handle_internal_only_routers').with_value(p[:handle_internal_only_routers])
should contain_quantum_l3_agent_config('DEFAULT/metadata_port').with_value(p[:metadata_port])
should contain_quantum_l3_agent_config('DEFAULT/send_arp_for_ha').with_value(p[:send_arp_for_ha])
should contain_quantum_l3_agent_config('DEFAULT/periodic_interval').with_value(p[:periodic_interval])
should contain_quantum_l3_agent_config('DEFAULT/periodic_fuzzy_delay').with_value(p[:periodic_fuzzy_delay])
should contain_quantum_l3_agent_config('DEFAULT/enable_metadata_proxy').with_value(p[:enable_metadata_proxy])
end
it 'installs quantum l3 agent package' do