From b0fe8a8409f93c63ead98ea240b2006130e6d5b1 Mon Sep 17 00:00:00 2001 From: Luca Miccini Date: Thu, 2 Apr 2020 14:42:19 +0200 Subject: [PATCH] Allow override of mysql/galera open files limit This commit removes the hard coded value of open-file-limit (16384) and allows operators to override it via: tripleo::profile::pacemaker::database::mysql::open_files_limit tripleo::profile::pacemaker::database::mysql_bundle::open_files_limit manually cherry picked from: I4927eb65a2dc1b5a86fc2141c7b2713f36ad49de Change-Id: Icecdf2f6c806b66266a0c10642b18f47a99d1e65 Closes-bug: #1883131 (cherry picked from commit e791ca04ddc27eb9f95c8d96bfa611e7330dda8a) --- manifests/profile/pacemaker/database/mysql.pp | 7 ++++++- manifests/profile/pacemaker/database/mysql_bundle.pp | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/manifests/profile/pacemaker/database/mysql.pp b/manifests/profile/pacemaker/database/mysql.pp index faa037fb5..4483ba341 100644 --- a/manifests/profile/pacemaker/database/mysql.pp +++ b/manifests/profile/pacemaker/database/mysql.pp @@ -93,6 +93,10 @@ # (Optional) The number of times pcs commands should be retried. # Defaults to hiera('pcs_tries', 20) # +# [*open_files_limit*] +# (Optional) Maximum value for open-files-limit +# Defaults to 16384 +# class tripleo::profile::pacemaker::database::mysql ( $bootstrap_node = hiera('mysql_short_bootstrap_node_name'), $bind_address = $::hostname, @@ -108,6 +112,7 @@ class tripleo::profile::pacemaker::database::mysql ( $ipv6 = str2bool(hiera('mysql_ipv6', false)), $step = Integer(hiera('step')), $pcs_tries = hiera('pcs_tries', 20), + $open_files_limit = 16384, ) { if $::hostname == downcase($bootstrap_node) { $pacemaker_master = true @@ -250,7 +255,7 @@ class tripleo::profile::pacemaker::database::mysql ( op_params => 'promote timeout=300s on-fail=block', master_params => '', meta_params => "master-max=${galera_nodes_count} ordered=true", - resource_params => "additional_parameters='--open-files-limit=16384' enable_creation=true wsrep_cluster_address='gcomm://${galera_nodes}' cluster_host_map='${cluster_host_map}'", + resource_params => "additional_parameters='--open-files-limit=${open_files_limit}' enable_creation=true wsrep_cluster_address='gcomm://${galera_nodes}' cluster_host_map='${cluster_host_map}'", tries => $pcs_tries, location_rule => { resource_discovery => 'exclusive', diff --git a/manifests/profile/pacemaker/database/mysql_bundle.pp b/manifests/profile/pacemaker/database/mysql_bundle.pp index 134b5ac08..b83cb1aab 100644 --- a/manifests/profile/pacemaker/database/mysql_bundle.pp +++ b/manifests/profile/pacemaker/database/mysql_bundle.pp @@ -122,6 +122,10 @@ # (optional) Sets PCMK_tls_priorities in /etc/sysconfig/pacemaker when set # Defaults to hiera('tripleo::pacemaker::tls_priorities', undef) # +# [*open_files_limit*] +# (Optional) Maximum value for open-files-limit +# Defaults to 16384 +# class tripleo::profile::pacemaker::database::mysql_bundle ( $mysql_docker_image = hiera('tripleo::profile::pacemaker::database::mysql_bundle::mysql_docker_image', undef), $control_port = hiera('tripleo::profile::pacemaker::database::mysql_bundle::control_port', '3123'), @@ -144,6 +148,7 @@ class tripleo::profile::pacemaker::database::mysql_bundle ( $tls_priorities = hiera('tripleo::pacemaker::tls_priorities', undef), $pcs_tries = hiera('pcs_tries', 20), $step = Integer(hiera('step')), + $open_files_limit = 16384, ) { if $::hostname == downcase($bootstrap_node) { $pacemaker_master = true @@ -436,7 +441,7 @@ MYSQL_HOST=localhost\n", master_params => '', meta_params => "master-max=${galera_nodes_count} ordered=true container-attribute-target=host", op_params => 'promote timeout=300s on-fail=block', - resource_params => "log='/var/log/mysql/mysqld.log' additional_parameters='--open-files-limit=16384' enable_creation=true wsrep_cluster_address='gcomm://${galera_nodes}' cluster_host_map='${cluster_host_map_string}'", + resource_params => "log='/var/log/mysql/mysqld.log' additional_parameters='--open-files-limit=${open_files_limit}' enable_creation=true wsrep_cluster_address='gcomm://${galera_nodes}' cluster_host_map='${cluster_host_map_string}'", tries => $pcs_tries, location_rule => { resource_discovery => 'exclusive',