Move common parameters from the health_manager class
Some health_manager parameters are used not only by health-manager but also by worker. This change migrates the parameter used by these two services from the health_manager class to the controller class, so that we can deploy these two services separately. Change-Id: I33d7a11514508a459546c905afe2165fb9fa1ebf
This commit is contained in:
parent
c7dd10a34f
commit
dd729322ab
manifests
releasenotes/notes
spec/classes
@ -86,12 +86,6 @@
|
|||||||
# (optional) Time to wait for TCP packets for content inspection.
|
# (optional) Time to wait for TCP packets for content inspection.
|
||||||
# Defaults to $::os_service_default
|
# Defaults to $::os_service_default
|
||||||
#
|
#
|
||||||
# [*controller_ip_port_list*]
|
|
||||||
# (optional) The list of controllers in a host:port comma separated
|
|
||||||
# list if multiple. This is added to the amphora config and is used
|
|
||||||
# when it connects back to the controllers to report its health.
|
|
||||||
# Defaults to $::os_service_default
|
|
||||||
#
|
|
||||||
# [*connection_max_retries*]
|
# [*connection_max_retries*]
|
||||||
# (optional) Maximum number of retries when contacting amphora.
|
# (optional) Maximum number of retries when contacting amphora.
|
||||||
# Defaults to $::os_service_default
|
# Defaults to $::os_service_default
|
||||||
@ -200,6 +194,20 @@
|
|||||||
# (optional) Number of gratuitous ARP announcements to make on each refresh interval.
|
# (optional) Number of gratuitous ARP announcements to make on each refresh interval.
|
||||||
# Defaults to $::os_service_default
|
# Defaults to $::os_service_default
|
||||||
#
|
#
|
||||||
|
# [*controller_ip_port_list*]
|
||||||
|
# (optional) The list of controllers in a host:port comma separated
|
||||||
|
# list if multiple. This is added to the amphora config and is used
|
||||||
|
# when it connects back to the controllers to report its health.
|
||||||
|
# Defaults to $::os_service_default
|
||||||
|
#
|
||||||
|
# [*heartbeat_key*]
|
||||||
|
# (optional) Key to validate amphora messages.
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*heartbeat_interval*]
|
||||||
|
# (optional) Sleep time between sending heartbeats.
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
# DEPRECATED PARAMETERS
|
# DEPRECATED PARAMETERS
|
||||||
#
|
#
|
||||||
# [*port_detach_timeout*]
|
# [*port_detach_timeout*]
|
||||||
@ -226,7 +234,6 @@ class octavia::controller (
|
|||||||
$timeout_member_connect = $::os_service_default,
|
$timeout_member_connect = $::os_service_default,
|
||||||
$timeout_member_data = $::os_service_default,
|
$timeout_member_data = $::os_service_default,
|
||||||
$timeout_tcp_inspect = $::os_service_default,
|
$timeout_tcp_inspect = $::os_service_default,
|
||||||
$controller_ip_port_list = $::os_service_default,
|
|
||||||
$connection_max_retries = $::os_service_default,
|
$connection_max_retries = $::os_service_default,
|
||||||
$connection_retry_interval = $::os_service_default,
|
$connection_retry_interval = $::os_service_default,
|
||||||
$connection_logging = $::os_service_default,
|
$connection_logging = $::os_service_default,
|
||||||
@ -251,6 +258,11 @@ class octavia::controller (
|
|||||||
$vrrp_success_count = $::os_service_default,
|
$vrrp_success_count = $::os_service_default,
|
||||||
$vrrp_garp_refresh_interval = $::os_service_default,
|
$vrrp_garp_refresh_interval = $::os_service_default,
|
||||||
$vrrp_garp_refresh_count = $::os_service_default,
|
$vrrp_garp_refresh_count = $::os_service_default,
|
||||||
|
$controller_ip_port_list = $::os_service_default,
|
||||||
|
# TODO(tkainam): Make this parameter required when we remove
|
||||||
|
# health_manager::heartbeat_key
|
||||||
|
$heartbeat_key = undef,
|
||||||
|
$heartbeat_interval = undef,
|
||||||
# DEPRECATED PARAMETERS
|
# DEPRECATED PARAMETERS
|
||||||
$port_detach_timeout = undef,
|
$port_detach_timeout = undef,
|
||||||
) inherits octavia::params {
|
) inherits octavia::params {
|
||||||
@ -294,7 +306,6 @@ Use the octavia::networking class instead')
|
|||||||
'haproxy_amphora/timeout_member_connect' : value => $timeout_member_connect;
|
'haproxy_amphora/timeout_member_connect' : value => $timeout_member_connect;
|
||||||
'haproxy_amphora/timeout_member_data' : value => $timeout_member_data;
|
'haproxy_amphora/timeout_member_data' : value => $timeout_member_data;
|
||||||
'haproxy_amphora/timeout_tcp_inspect' : value => $timeout_tcp_inspect;
|
'haproxy_amphora/timeout_tcp_inspect' : value => $timeout_tcp_inspect;
|
||||||
'health_manager/controller_ip_port_list' : value => join(any2array($controller_ip_port_list), ',');
|
|
||||||
'haproxy_amphora/connection_max_retries' : value => $connection_max_retries;
|
'haproxy_amphora/connection_max_retries' : value => $connection_max_retries;
|
||||||
'haproxy_amphora/connection_retry_interval' : value => $connection_retry_interval;
|
'haproxy_amphora/connection_retry_interval' : value => $connection_retry_interval;
|
||||||
'haproxy_amphora/connection_logging' : value => $connection_logging;
|
'haproxy_amphora/connection_logging' : value => $connection_logging;
|
||||||
@ -319,5 +330,19 @@ Use the octavia::networking class instead')
|
|||||||
'keepalived_vrrp/vrrp_success_count' : value => $vrrp_success_count;
|
'keepalived_vrrp/vrrp_success_count' : value => $vrrp_success_count;
|
||||||
'keepalived_vrrp/vrrp_garp_refresh_interval' : value => $vrrp_garp_refresh_interval;
|
'keepalived_vrrp/vrrp_garp_refresh_interval' : value => $vrrp_garp_refresh_interval;
|
||||||
'keepalived_vrrp/vrrp_garp_refresh_count' : value => $vrrp_garp_refresh_count;
|
'keepalived_vrrp/vrrp_garp_refresh_count' : value => $vrrp_garp_refresh_count;
|
||||||
|
'health_manager/controller_ip_port_list' : value => join(any2array($controller_ip_port_list), ',');
|
||||||
|
}
|
||||||
|
|
||||||
|
# TODO(tkajinam): Remove these if-condition when octavia::health_manager
|
||||||
|
# parameters are removed.
|
||||||
|
if $heartbeat_key != undef {
|
||||||
|
octavia_config{
|
||||||
|
'health_manager/heartbeat_key' : value => $heartbeat_key, secret => true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if $heartbeat_interval != undef {
|
||||||
|
octavia_config{
|
||||||
|
'health_manager/heartbeat_interval' : value => $heartbeat_interval;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,9 +2,6 @@
|
|||||||
#
|
#
|
||||||
# == Parameters
|
# == Parameters
|
||||||
#
|
#
|
||||||
# [*heartbeat_key*]
|
|
||||||
# Key to validate amphora messages.
|
|
||||||
#
|
|
||||||
# [*enabled*]
|
# [*enabled*]
|
||||||
# (optional) Should the service be enabled.
|
# (optional) Should the service be enabled.
|
||||||
# Defaults to true
|
# Defaults to true
|
||||||
@ -45,10 +42,6 @@
|
|||||||
# (optional) Sleep time between health checks in seconds.
|
# (optional) Sleep time between health checks in seconds.
|
||||||
# Defaults to $::os_service_default
|
# Defaults to $::os_service_default
|
||||||
#
|
#
|
||||||
# [*heartbeat_interval*]
|
|
||||||
# (optional) Sleep time between sending heartbeats.
|
|
||||||
# Defaults to $::os_service_default
|
|
||||||
#
|
|
||||||
# [*sock_rlimit*]
|
# [*sock_rlimit*]
|
||||||
# (optional) Sets the value of the heartbeat recv buffer
|
# (optional) Sets the value of the heartbeat recv buffer
|
||||||
# Defaults to $::os_service_default
|
# Defaults to $::os_service_default
|
||||||
@ -59,8 +52,15 @@
|
|||||||
# (optional) The number of workers health_manager spawns
|
# (optional) The number of workers health_manager spawns
|
||||||
# Defaults to undef
|
# Defaults to undef
|
||||||
#
|
#
|
||||||
|
# [*heartbeat_key*]
|
||||||
|
# (optional) Key to validate amphora messages.
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*heartbeat_interval*]
|
||||||
|
# (optional) Sleep time between sending heartbeats.
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
class octavia::health_manager (
|
class octavia::health_manager (
|
||||||
$heartbeat_key,
|
|
||||||
$manage_service = true,
|
$manage_service = true,
|
||||||
$enabled = true,
|
$enabled = true,
|
||||||
$package_ensure = 'present',
|
$package_ensure = 'present',
|
||||||
@ -71,13 +71,22 @@ class octavia::health_manager (
|
|||||||
$failover_threads = $::os_service_default,
|
$failover_threads = $::os_service_default,
|
||||||
$heartbeat_timeout = $::os_service_default,
|
$heartbeat_timeout = $::os_service_default,
|
||||||
$health_check_interval = $::os_service_default,
|
$health_check_interval = $::os_service_default,
|
||||||
$heartbeat_interval = $::os_service_default,
|
|
||||||
$sock_rlimit = $::os_service_default,
|
$sock_rlimit = $::os_service_default,
|
||||||
# DEPRECATED PARAMETERS
|
# DEPRECATED PARAMETERS
|
||||||
$workers = undef,
|
$workers = undef,
|
||||||
|
$heartbeat_key = undef,
|
||||||
|
$heartbeat_interval = undef,
|
||||||
) inherits octavia::params {
|
) inherits octavia::params {
|
||||||
|
|
||||||
include octavia::deps
|
include octavia::deps
|
||||||
|
include octavia::controller
|
||||||
|
|
||||||
|
if $heartbeat_key != undef {
|
||||||
|
warning('The heartbeat_key parameter is deprecated. Use the octavia::controller class parameter instead.')
|
||||||
|
}
|
||||||
|
if $heartbeat_key != undef {
|
||||||
|
warning('The heartbeat_interval parameter is deprecated. Use the octavia::controller class parameter instead.')
|
||||||
|
}
|
||||||
|
|
||||||
validate_legacy(String, 'validate_string', $heartbeat_key)
|
validate_legacy(String, 'validate_string', $heartbeat_key)
|
||||||
|
|
||||||
@ -112,7 +121,6 @@ Use health_update_threads and stats_update_threads instead')
|
|||||||
$stats_update_threads_real = pick($workers, $stats_update_threads)
|
$stats_update_threads_real = pick($workers, $stats_update_threads)
|
||||||
|
|
||||||
octavia_config {
|
octavia_config {
|
||||||
'health_manager/heartbeat_key' : value => $heartbeat_key;
|
|
||||||
'health_manager/bind_ip' : value => $ip;
|
'health_manager/bind_ip' : value => $ip;
|
||||||
'health_manager/bind_port' : value => $port;
|
'health_manager/bind_port' : value => $port;
|
||||||
'health_manager/health_update_threads' : value => $health_update_threads_real;
|
'health_manager/health_update_threads' : value => $health_update_threads_real;
|
||||||
@ -120,7 +128,20 @@ Use health_update_threads and stats_update_threads instead')
|
|||||||
'health_manager/failover_threads' : value => $failover_threads;
|
'health_manager/failover_threads' : value => $failover_threads;
|
||||||
'health_manager/heartbeat_timeout' : value => $heartbeat_timeout;
|
'health_manager/heartbeat_timeout' : value => $heartbeat_timeout;
|
||||||
'health_manager/health_check_interval' : value => $health_check_interval;
|
'health_manager/health_check_interval' : value => $health_check_interval;
|
||||||
'health_manager/heartbeat_interval' : value => $heartbeat_interval;
|
|
||||||
'health_manager/sock_rlimit' : value => $sock_rlimit;
|
'health_manager/sock_rlimit' : value => $sock_rlimit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if $::octavia::controller::heartbeat_key == undef {
|
||||||
|
if $heartbeat_key == undef {
|
||||||
|
fail('The heartbeat_key parameter is required.')
|
||||||
|
}
|
||||||
|
octavia_config {
|
||||||
|
'health_manager/heartbeat_key': value => $heartbeat_key, secret => true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if $::octavia::controller::heartbeat_interval == undef {
|
||||||
|
octavia_config {
|
||||||
|
'health_manager/heartbeat_interval': value => pick($heartbeat_interval, $::os_service_default);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
deprecations:
|
||||||
|
- |
|
||||||
|
The following parameters of the ``octavia::health_manager`` class have been
|
||||||
|
deprecated. Use the same parameters of the ``octavia::controller`` class
|
||||||
|
instead.
|
||||||
|
|
||||||
|
- ``heartbeat_interval``
|
||||||
|
- ``heartbeat_key``
|
@ -30,7 +30,6 @@ describe 'octavia::controller' do
|
|||||||
:timeout_client_data => 60,
|
:timeout_client_data => 60,
|
||||||
:timeout_member_connect => 5,
|
:timeout_member_connect => 5,
|
||||||
:timeout_member_data => 60,
|
:timeout_member_data => 60,
|
||||||
:controller_ip_port_list => ['1.2.3.4:5555', '4.3.2.1:5555'],
|
|
||||||
:connection_max_retries => 240,
|
:connection_max_retries => 240,
|
||||||
:connection_retry_interval => 10,
|
:connection_retry_interval => 10,
|
||||||
:active_connection_max_retries => 15,
|
:active_connection_max_retries => 15,
|
||||||
@ -55,7 +54,10 @@ describe 'octavia::controller' do
|
|||||||
:vrrp_fail_count => 2,
|
:vrrp_fail_count => 2,
|
||||||
:vrrp_success_count => 2,
|
:vrrp_success_count => 2,
|
||||||
:vrrp_garp_refresh_interval => 5,
|
:vrrp_garp_refresh_interval => 5,
|
||||||
:vrrp_garp_refresh_count => 2
|
:vrrp_garp_refresh_count => 2,
|
||||||
|
:controller_ip_port_list => ['1.2.3.4:5555', '4.3.2.1:5555'],
|
||||||
|
:heartbeat_interval => 10,
|
||||||
|
:heartbeat_key => 'default_key',
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -77,7 +79,6 @@ describe 'octavia::controller' do
|
|||||||
is_expected.to contain_octavia_config('haproxy_amphora/timeout_client_data').with_value(60)
|
is_expected.to contain_octavia_config('haproxy_amphora/timeout_client_data').with_value(60)
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/timeout_member_connect').with_value(5)
|
is_expected.to contain_octavia_config('haproxy_amphora/timeout_member_connect').with_value(5)
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/timeout_member_data').with_value(60)
|
is_expected.to contain_octavia_config('haproxy_amphora/timeout_member_data').with_value(60)
|
||||||
is_expected.to contain_octavia_config('health_manager/controller_ip_port_list').with_value('1.2.3.4:5555,4.3.2.1:5555')
|
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/connection_max_retries').with_value(240)
|
is_expected.to contain_octavia_config('haproxy_amphora/connection_max_retries').with_value(240)
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/connection_retry_interval').with_value(10)
|
is_expected.to contain_octavia_config('haproxy_amphora/connection_retry_interval').with_value(10)
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/connection_logging').with_value(false)
|
is_expected.to contain_octavia_config('haproxy_amphora/connection_logging').with_value(false)
|
||||||
@ -103,6 +104,9 @@ describe 'octavia::controller' do
|
|||||||
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_success_count').with_value(2)
|
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_success_count').with_value(2)
|
||||||
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_garp_refresh_interval').with_value(5)
|
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_garp_refresh_interval').with_value(5)
|
||||||
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_garp_refresh_count').with_value(2)
|
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_garp_refresh_count').with_value(2)
|
||||||
|
is_expected.to contain_octavia_config('health_manager/controller_ip_port_list').with_value('1.2.3.4:5555,4.3.2.1:5555')
|
||||||
|
is_expected.to contain_octavia_config('health_manager/heartbeat_interval').with_value(10)
|
||||||
|
is_expected.to contain_octavia_config('health_manager/heartbeat_key').with_value('default_key')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -125,7 +129,6 @@ describe 'octavia::controller' do
|
|||||||
is_expected.to contain_octavia_config('haproxy_amphora/timeout_member_connect').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('haproxy_amphora/timeout_member_connect').with_value('<SERVICE DEFAULT>')
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/timeout_member_data').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('haproxy_amphora/timeout_member_data').with_value('<SERVICE DEFAULT>')
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/timeout_tcp_inspect').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('haproxy_amphora/timeout_tcp_inspect').with_value('<SERVICE DEFAULT>')
|
||||||
is_expected.to contain_octavia_config('health_manager/controller_ip_port_list').with_value('<SERVICE DEFAULT>')
|
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/connection_max_retries').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('haproxy_amphora/connection_max_retries').with_value('<SERVICE DEFAULT>')
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/connection_retry_interval').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('haproxy_amphora/connection_retry_interval').with_value('<SERVICE DEFAULT>')
|
||||||
is_expected.to contain_octavia_config('haproxy_amphora/connection_logging').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('haproxy_amphora/connection_logging').with_value('<SERVICE DEFAULT>')
|
||||||
@ -151,6 +154,9 @@ describe 'octavia::controller' do
|
|||||||
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_success_count').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_success_count').with_value('<SERVICE DEFAULT>')
|
||||||
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_garp_refresh_interval').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_garp_refresh_interval').with_value('<SERVICE DEFAULT>')
|
||||||
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_garp_refresh_count').with_value('<SERVICE DEFAULT>')
|
is_expected.to contain_octavia_config('keepalived_vrrp/vrrp_garp_refresh_count').with_value('<SERVICE DEFAULT>')
|
||||||
|
is_expected.to contain_octavia_config('health_manager/controller_ip_port_list').with_value('<SERVICE DEFAULT>')
|
||||||
|
#is_expected.to contain_octavia_config('health_manager/heartbeat_interval').with_value('<SERVICE DEFAULT>')
|
||||||
|
#is_expected.to contain_octavia_config('health_manager/heartbeat_key').with_value('<SERVICE DEFAULT>')
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'with ssh key access disabled' do
|
context 'with ssh key access disabled' do
|
||||||
|
Loading…
Reference in New Issue
Block a user