Merge "Add keepalived-healthcheck-interval config option"

This commit is contained in:
Zuul 2020-09-04 15:07:56 +00:00 committed by Gerrit Code Review
commit 7a28689ccc
7 changed files with 22 additions and 8 deletions

View File

@ -366,3 +366,11 @@ options:
description: | description: |
Manually disable lbaas services. Set this option to True if Octavia Manually disable lbaas services. Set this option to True if Octavia
is used with neutron. This option is ignored for Train+ OpenStack. is used with neutron. This option is ignored for Train+ OpenStack.
keepalived-healthcheck-interval:
type: int
default: 30
description: |
By default all HA routers will check their external network gateway
by sending a ping and if that fails they trigger a vrrp transition. This
option defines how frequently this check is performed. Setting this value
to 0 will disable the healthchecks.

View File

@ -175,6 +175,8 @@ class NeutronGatewayContext(NeutronAPIContext):
'availability_zone': get_availability_zone(), 'availability_zone': get_availability_zone(),
'enable_nfg_logging': api_settings['enable_nfg_logging'], 'enable_nfg_logging': api_settings['enable_nfg_logging'],
'ovsdb_timeout': config('ovsdb-timeout'), 'ovsdb_timeout': config('ovsdb-timeout'),
'keepalived_healthcheck_interval':
config('keepalived-healthcheck-interval')
} }
ctxt['local_ip'] = get_local_ip() ctxt['local_ip'] = get_local_ip()

View File

@ -30,8 +30,8 @@ gateway_external_network_id = {{ ext_net_id }}
external_network_bridge = br-ex external_network_bridge = br-ex
{% endif -%} {% endif -%}
agent_mode = {{ agent_mode }} agent_mode = {{ agent_mode }}
{% if use_l3ha -%} {% if use_l3ha and keepalived_healthcheck_interval -%}
ha_vrrp_health_check_interval = 30 ha_vrrp_health_check_interval = {{ keepalived_healthcheck_interval }}
{% endif -%} {% endif -%}
[AGENT] [AGENT]

View File

@ -25,8 +25,8 @@ gateway_external_network_id = {{ ext_net_id }}
external_network_bridge = br-ex external_network_bridge = br-ex
{% endif -%} {% endif -%}
agent_mode = {{ agent_mode }} agent_mode = {{ agent_mode }}
{% if use_l3ha -%} {% if use_l3ha and keepalived_healthcheck_interval -%}
ha_vrrp_health_check_interval = 30 ha_vrrp_health_check_interval = {{ keepalived_healthcheck_interval }}
{% endif -%} {% endif -%}
[AGENT] [AGENT]

View File

@ -25,8 +25,8 @@ gateway_external_network_id = {{ ext_net_id }}
external_network_bridge = br-ex external_network_bridge = br-ex
{% endif -%} {% endif -%}
agent_mode = {{ agent_mode }} agent_mode = {{ agent_mode }}
{% if use_l3ha -%} {% if use_l3ha and keepalived_healthcheck_interval -%}
ha_vrrp_health_check_interval = 30 ha_vrrp_health_check_interval = {{ keepalived_healthcheck_interval }}
{% endif -%} {% endif -%}
[AGENT] [AGENT]

View File

@ -25,8 +25,8 @@ gateway_external_network_id = {{ ext_net_id }}
external_network_bridge = br-ex external_network_bridge = br-ex
{% endif -%} {% endif -%}
agent_mode = {{ agent_mode }} agent_mode = {{ agent_mode }}
{% if use_l3ha -%} {% if use_l3ha and keepalived_healthcheck_interval -%}
ha_vrrp_health_check_interval = 30 ha_vrrp_health_check_interval = {{ keepalived_healthcheck_interval }}
{% endif -%} {% endif -%}
[AGENT] [AGENT]

View File

@ -204,6 +204,8 @@ class TestNeutronGatewayContext(CharmTestCase):
self.test_config.set('ovsdb-timeout', 10) self.test_config.set('ovsdb-timeout', 10)
self.test_config.set('keepalived-healthcheck-interval', 0)
self.network_get_primary_address.side_effect = NotImplementedError self.network_get_primary_address.side_effect = NotImplementedError
self.unit_get.return_value = '10.5.0.1' self.unit_get.return_value = '10.5.0.1'
# Provided by neutron-api relation # Provided by neutron-api relation
@ -237,6 +239,7 @@ class TestNeutronGatewayContext(CharmTestCase):
'nfg_log_output_base': '/var/log/firewall-logs', 'nfg_log_output_base': '/var/log/firewall-logs',
'nfg_log_rate_limit': 100, 'nfg_log_rate_limit': 100,
'ovsdb_timeout': 10, 'ovsdb_timeout': 10,
'keepalived_healthcheck_interval': 0,
}) })
@patch.object(neutron_contexts, 'validate_nfg_log_path', lambda x: x) @patch.object(neutron_contexts, 'validate_nfg_log_path', lambda x: x)
@ -299,6 +302,7 @@ class TestNeutronGatewayContext(CharmTestCase):
'nfg_log_output_base': None, 'nfg_log_output_base': None,
'nfg_log_rate_limit': None, 'nfg_log_rate_limit': None,
'ovsdb_timeout': 60, 'ovsdb_timeout': 60,
'keepalived_healthcheck_interval': 30,
}) })
@patch('os.environ.get') @patch('os.environ.get')