From 0a68adb3f7d76389d0849069630030c7f4600307 Mon Sep 17 00:00:00 2001 From: Giulio Fidente Date: Fri, 10 Jul 2015 03:28:46 +0200 Subject: Allow configuration of MySQL max_connections setting The number of connections created to the database depends on the number of running processes and this is a factor of both the nodes count and the cores count. We make it configurable so it can be increased when needed. Change-Id: I41d511bde95d0942706bf7c28cd913498ea165fb --- controller.yaml | 4 ++++ overcloud-without-mergepy.yaml | 5 +++++ puppet/controller-puppet.yaml | 6 ++++++ puppet/manifests/overcloud_controller.pp | 2 +- puppet/manifests/overcloud_controller_pacemaker.pp | 2 +- 5 files changed, 17 insertions(+), 2 deletions(-) diff --git a/controller.yaml b/controller.yaml index a22bb838..1bd1f590 100644 --- a/controller.yaml +++ b/controller.yaml @@ -253,6 +253,10 @@ parameters: lower level default. type: number default: 0 + MysqlMaxConnections: + description: Configures MySQL max_connections config setting + type: number + default: 1024 MysqlRootPassword: type: string hidden: true diff --git a/overcloud-without-mergepy.yaml b/overcloud-without-mergepy.yaml index 4258fe0d..0bc585ce 100644 --- a/overcloud-without-mergepy.yaml +++ b/overcloud-without-mergepy.yaml @@ -410,6 +410,10 @@ parameters: lower level default. type: number default: 0 + MysqlMaxConnections: + description: Configures MySQL max_connections config setting + type: number + default: 1024 NeutronDnsmasqOptions: default: 'dhcp-option-force=26,1400' description: Dnsmasq options for neutron-dhcp-agent. The default value here forces MTU to be set to 1400 to account for the tunnel overhead. @@ -734,6 +738,7 @@ resources: KeystoneSSLCertificateKey: {get_param: KeystoneSSLCertificateKey} MysqlClusterUniquePart: {get_attr: [MysqlClusterUniquePart, value]} MysqlInnodbBufferPoolSize: {get_param: MysqlInnodbBufferPoolSize} + MysqlMaxConnections: {get_param: MysqlMaxConnections} MysqlRootPassword: {get_attr: [MysqlRootPassword, value]} NeutronPublicInterfaceIP: {get_param: NeutronPublicInterfaceIP} NeutronFlatNetworks: {get_param: NeutronFlatNetworks} diff --git a/puppet/controller-puppet.yaml b/puppet/controller-puppet.yaml index 9f531efe..3f01b094 100644 --- a/puppet/controller-puppet.yaml +++ b/puppet/controller-puppet.yaml @@ -258,6 +258,10 @@ parameters: lower level default. type: number default: 0 + MysqlMaxConnections: + description: Configures MySQL max_connections config setting + type: number + default: 1024 MysqlRootPassword: type: string hidden: true @@ -683,6 +687,7 @@ resources: enable_ceph_storage: {get_param: EnableCephStorage} enable_swift_storage: {get_param: EnableSwiftStorage} mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize} + mysql_max_connections: {get_param: MysqlMaxConnections} mysql_root_password: {get_param: MysqlRootPassword} mysql_cluster_name: str_replace: @@ -953,6 +958,7 @@ resources: enable_ceph_storage: {get_input: enable_ceph_storage} enable_swift_storage: {get_input: enable_swift_storage} mysql_innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size} + mysql_max_connections: {get_input: mysql_max_connections} mysql::server::root_password: {get_input: mysql_root_password} mysql_cluster_name: {get_input: mysql_cluster_name} mysql_bind_host: {get_input: mysql_network} diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp index 777ebad6..f17dc831 100644 --- a/puppet/manifests/overcloud_controller.pp +++ b/puppet/manifests/overcloud_controller.pp @@ -90,7 +90,7 @@ if hiera('step') >= 2 { override_options => { 'mysqld' => { 'bind-address' => hiera('mysql_bind_host'), - 'max_connections' => '1024', + 'max_connections' => hiera('mysql_max_connections'), 'open_files_limit' => '-1', }, } diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp index 3c5a0151..8a31a9aa 100644 --- a/puppet/manifests/overcloud_controller_pacemaker.pp +++ b/puppet/manifests/overcloud_controller_pacemaker.pp @@ -140,7 +140,7 @@ if hiera('step') >= 1 { 'query_cache_size' => '0', 'query_cache_type' => '0', 'bind-address' => hiera('mysql_bind_host'), - 'max_connections' => '1024', + 'max_connections' => hiera('mysql_max_connections'), 'open_files_limit' => '-1', 'wsrep_provider' => '/usr/lib64/galera/libgalera_smm.so', 'wsrep_cluster_name' => 'galera_cluster', -- cgit 1.2.3-korg