Skip to content

Commit fb4311d

Browse files
committed
Tune for large deployments
1 parent 3d7272f commit fb4311d

File tree

6 files changed

+101
-0
lines changed

6 files changed

+101
-0
lines changed

modules/server/main.tf

+1
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ module "server" {
8585
db_configuration = var.db_configuration
8686
c3p0_connection_timeout = var.c3p0_connection_timeout
8787
c3p0_connection_debug = var.c3p0_connection_debug
88+
large_deployment = var.large_deployment
8889
}
8990

9091

modules/server/variables.tf

+5
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,11 @@ variable "c3p0_connection_debug" {
305305
default = false
306306
}
307307

308+
variable "large_deployment" {
309+
description = "set up for a deployment with a great number of clients"
310+
default = false
311+
}
312+
308313
variable "quantity" {
309314
description = "number of hosts like this one"
310315
default = 1

salt/server/init.sls

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ include:
1616
- server.initial_content
1717
- server.iss
1818
- server.testsuite
19+
- server.large_deployment
1920
- server.salt_master
2021
- server.tcpdump
2122

salt/server/large_deployment.sls

+75
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# See https://documentation.suse.com/suma/4.3/en/suse-manager/specialized-guides/large-deployments/tuning.html#_environmental_variables
2+
3+
{% if grains.get('large_deployment') | default(false, true) %}
4+
5+
include:
6+
- server
7+
8+
large_scale_increase_tasko_parallel_threads:
9+
file.replace:
10+
- name: /etc/rhn/rhn.conf
11+
- pattern: 'taskomatic.com.redhat.rhn.taskomatic.task.MinionActionExecutor.parallel_threads = (.*)'
12+
- repl: 'taskomatic.com.redhat.rhn.taskomatic.task.MinionActionExecutor.parallel_threads = 3'
13+
- append_if_not_found: True
14+
- require:
15+
- cmd: server_setup
16+
17+
large_scale_increase_hibernate_max_connections:
18+
file.replace:
19+
- name: /etc/rhn/rhn.conf
20+
- pattern: 'hibernate.c3p0.max_size = (.*)'
21+
- repl: 'hibernate.c3p0.max_size = 50'
22+
- append_if_not_found: True
23+
- require:
24+
- cmd: server_setup
25+
26+
large_scale_tune_tomcat_stylesheet:
27+
file.managed:
28+
- name: /root/large_scale_tune_tomcat.xslt
29+
- source:
30+
- salt://server/large_scale_tune_tomcat.xslt
31+
- user: root
32+
- group: root
33+
- mode: 644
34+
35+
large_scale_tune_tomcat_maxthreads:
36+
cmd.run:
37+
- name: xsltproc /root/large_scale_tune_tomcat.xslt /etc/tomcat/server.xml > /tmp/tomcat_server.xml && mv /tmp/tomcat_server.xml /etc/tomcat/server.xml
38+
- require:
39+
- cmd: server_setup
40+
- file: large_scale_tune_tomcat_stylesheet
41+
42+
large_scale_tomcat:
43+
service.running:
44+
- name: tomcat
45+
- watch:
46+
- file: large_scale_increase_tasko_parallel_threads
47+
- file: large_scale_increase_hibernate_max_connections
48+
- cmd: large_scale_tune_tomcat_maxthreads
49+
50+
large_scale_increase_database_max_connections:
51+
file.replace:
52+
- name: /var/lib/pgsql/data/postgresql.conf
53+
- pattern: 'max_connections = (.*)'
54+
- repl: 'max_connections = 450'
55+
- append_if_not_found: True
56+
- require:
57+
- cmd: server_setup
58+
59+
large_scale_increase_database_work_memory:
60+
file.replace:
61+
- name: /var/lib/pgsql/data/postgresql.conf
62+
- pattern: 'work_mem = (.*)'
63+
- repl: 'work_mem = 10MB'
64+
- append_if_not_found: True
65+
- require:
66+
- cmd: server_setup
67+
68+
large_scale_postgresql:
69+
service.running:
70+
- name: postgresql
71+
- watch:
72+
- file: large_scale_increase_database_max_connections
73+
- file: large_scale_increase_database_work_memory
74+
75+
{% endif %}
+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2+
<!-- XSL transformation to tune tomcat server
3+
configuration for large scale deployments -->
4+
5+
<xsl:output omit-xml-declaration="yes" />
6+
7+
<!-- increase maximum number of threads -->
8+
<xsl:template match="Service[@name='Catalina']/Connector/@maxThreads">
9+
<xsl:attribute name="maxThreads">256</xsl:attribute>
10+
</xsl:template>
11+
12+
<!-- just copy the rest -->
13+
<xsl:template match="node()|@*">
14+
<xsl:copy>
15+
<xsl:apply-templates select="node()|@*" />
16+
</xsl:copy>
17+
</xsl:template>
18+
</xsl:stylesheet>

salt/server/testsuite.sls

+1
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ tomcat:
155155
- watch:
156156
- file: enable_salt_content_staging_window
157157
- file: enable_salt_content_staging_advance
158+
- file: enable_kiwi_os_image_building
158159

159160
dump_salt_event_log:
160161
cmd.run:

0 commit comments

Comments
 (0)