Merge branch 'master' into 'master'

Set sysctl kernel.sem for postgresql max connections

Set semaphore parameters in sysctl to support 2000+ postgresql connections.

See merge request !499
This commit is contained in:
Marin Jankovski 2015-10-02 10:04:10 +00:00
commit dff749b36a
2 changed files with 12 additions and 0 deletions

View File

@ -281,6 +281,10 @@ default['gitlab']['postgresql']['md5_auth_cidr_addresses'] = []
default['gitlab']['postgresql']['trust_auth_cidr_addresses'] = []
default['gitlab']['postgresql']['shmmax'] = kernel['machine'] =~ /x86_64/ ? 17179869184 : 4294967295
default['gitlab']['postgresql']['shmall'] = kernel['machine'] =~ /x86_64/ ? 4194304 : 1048575
default['gitlab']['postgresql']['semmsl'] = 250
default['gitlab']['postgresql']['semmns'] = 32000
default['gitlab']['postgresql']['semopm'] = 32
default['gitlab']['postgresql']['semmni'] = ((node['gitlab']['postgresql']['max_connections'].to_i / 16) + 250)
# Resolves CHEF-3889
if (node['memory']['total'].to_i / 4) > ((node['gitlab']['postgresql']['shmmax'].to_i / 1024) - 2097152)

View File

@ -73,6 +73,14 @@ sysctl "kernel.shmall" do
value node['gitlab']['postgresql']['shmall']
end
sem = "#{node['gitlab']['postgresql']['semmsl']} "
sem += "#{node['gitlab']['postgresql']['semmns']} "
sem += "#{node['gitlab']['postgresql']['semopm']} "
sem += "#{node['gitlab']['postgresql']['semmni']}"
sysctl "kernel.sem" do
value sem
end
execute "/opt/gitlab/embedded/bin/initdb -D #{postgresql_data_dir} -E UTF8" do
user postgresql_user
not_if { File.exists?(File.join(postgresql_data_dir, "PG_VERSION")) }