Merge "Add configurable monitor timeouts for ovn dbs" into stable/queens
This commit is contained in:
commit
3eea0990fa
|
@ -56,6 +56,10 @@
|
||||||
# (optional) Sets PCMK_tls_priorities in /etc/sysconfig/pacemaker when set
|
# (optional) Sets PCMK_tls_priorities in /etc/sysconfig/pacemaker when set
|
||||||
# Defaults to hiera('tripleo::pacemaker::tls_priorities', undef)
|
# Defaults to hiera('tripleo::pacemaker::tls_priorities', undef)
|
||||||
#
|
#
|
||||||
|
# [*dbs_timeout*]
|
||||||
|
# (Optional) timeout for monitor of ovn dbs resource
|
||||||
|
# Defaults to 60
|
||||||
|
#
|
||||||
|
|
||||||
class tripleo::profile::pacemaker::ovn_dbs_bundle (
|
class tripleo::profile::pacemaker::ovn_dbs_bundle (
|
||||||
$ovn_dbs_docker_image = hiera('tripleo::profile::pacemaker::ovn_dbs_bundle::ovn_dbs_docker_image', undef),
|
$ovn_dbs_docker_image = hiera('tripleo::profile::pacemaker::ovn_dbs_bundle::ovn_dbs_docker_image', undef),
|
||||||
|
@ -67,6 +71,7 @@ class tripleo::profile::pacemaker::ovn_dbs_bundle (
|
||||||
$nb_db_port = 6641,
|
$nb_db_port = 6641,
|
||||||
$sb_db_port = 6642,
|
$sb_db_port = 6642,
|
||||||
$tls_priorities = hiera('tripleo::pacemaker::tls_priorities', undef),
|
$tls_priorities = hiera('tripleo::pacemaker::tls_priorities', undef),
|
||||||
|
$dbs_timeout = hiera('tripleo::profile::pacemaker::ovn_dbs_bundle::dbs_timeout', 60),
|
||||||
) {
|
) {
|
||||||
|
|
||||||
if $::hostname == downcase($bootstrap_node) {
|
if $::hostname == downcase($bootstrap_node) {
|
||||||
|
@ -152,7 +157,8 @@ class tripleo::profile::pacemaker::ovn_dbs_bundle (
|
||||||
pacemaker::resource::ocf { "${ovndb_servers_resource_name}":
|
pacemaker::resource::ocf { "${ovndb_servers_resource_name}":
|
||||||
ocf_agent_name => "${ovndb_servers_ocf_name}",
|
ocf_agent_name => "${ovndb_servers_ocf_name}",
|
||||||
master_params => '',
|
master_params => '',
|
||||||
op_params => 'start timeout=200s stop timeout=200s',
|
op_params => "start timeout=200s stop timeout=200s monitor interval=10s role=Master timeout=${dbs_timeout}s \
|
||||||
|
monitor interval=30s role=Slave timeout=${dbs_timeout}s",
|
||||||
resource_params => "master_ip=${ovn_dbs_vip_norm} nb_master_port=${nb_db_port} \
|
resource_params => "master_ip=${ovn_dbs_vip_norm} nb_master_port=${nb_db_port} \
|
||||||
sb_master_port=${sb_db_port} manage_northd=yes inactive_probe_interval=180000",
|
sb_master_port=${sb_db_port} manage_northd=yes inactive_probe_interval=180000",
|
||||||
tries => $pcs_tries,
|
tries => $pcs_tries,
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
features:
|
||||||
|
- |
|
||||||
|
Under pressure, the default monitor timeout value of 20 seconds is not
|
||||||
|
enough to prevent unnecessary failovers of the ovn-dbs pacemaker resource.
|
||||||
|
While spawning a few VMs in the same time this could lead to unnecessary
|
||||||
|
movements of master DB, then re-connections of ovn-controllers (slaves are
|
||||||
|
read-only), further peaks of load on DBs, and at the end it could lead to
|
||||||
|
snowball effect. Now this value can be configurable by dbs_timeout in
|
||||||
|
tripleo::profile::pacemaker::ovn_dbs_bundle and by default is set to 60s.
|
Loading…
Reference in New Issue