version up : percona-toolkit 2.2.8.
[slapos.git] / stack / erp5 / instance-mariadb.cfg.in
1 [buildout]
2 parts =
3   publish-mariadb-url
4   mariadb-instance
5   logrotate
6   logrotate-entry-mariadb
7   cron
8   cron-entry-logrotate
9   cron-entry-mariadb-backup
10   binary-link
11   promise
12
13 eggs-directory = {{ eggs_directory }}
14 develop-eggs-directory = {{ develop_eggs_directory }}
15 offline = true
16
17 [publish-mariadb-url]
18 recipe = slapos.cookbook:publishurl
19 url = mysql://${mariadb-instance:user}:${mariadb-instance:password}@${mariadb-instance:ip}:${mariadb-instance:port}/${mariadb-instance:database}
20
21 [cron-entry-mariadb-backup]
22 <= cron
23 recipe = slapos.cookbook:cron.d
24 name = mariadb-backup
25 frequency = 0 0 * * *
26 command = ${mariadb-instance:backup-script}
27
28 [mariadb-instance]
29 recipe = slapos.cookbook:generic.mysql
30
31 # Options
32 user = user
33 parallel-test-database-amount = ${slap-parameter:test-database-amount}
34 port = 45678
35 ip = ${slap-network-information:local-ipv4}
36 database = erp5
37 test-user = erp5_test
38 test-database = erp5_test
39 mysql-test-database-base = testdb
40 mysql-test-user-base = testuser
41
42 # Paths
43 wrapper = ${basedirectory:services}/mariadb
44 update-wrapper = ${basedirectory:services}/mariadb_update
45 backup-script = ${rootdirectory:bin}/innobackupex-controller
46 full-backup-directory = ${directory:mariadb-backup-full}
47 incremental-backup-directory = ${directory:mariadb-backup-incremental}
48 data-directory = ${directory:mariadb-data}
49 pid-file = ${basedirectory:run}/mariadb.pid
50 socket = ${basedirectory:run}/mariadb.sock
51 error-log = ${basedirectory:log}/mariadb_error.log
52 slow-query-log = ${basedirectory:log}/mariadb_slowquery.log
53 conf-file = ${rootdirectory:etc}/mariadb.cnf
54 bin-directory = ${rootdirectory:bin}
55 innobackupex-incremental = ${rootdirectory:bin}/innobackupex-incremental
56 innobackupex-full = ${rootdirectory:bin}/innobackupex-full
57
58 # Binary information
59 innobackupex-binary = {{ xtrabackup_location }}/bin/innobackupex
60 mysql-base-directory = {{ mariadb_location }}
61 mysql-binary = {{ mariadb_location }}/bin/mysql
62 mysql-install-binary = {{ mariadb_location }}/scripts/mysql_install_db
63 mysql-upgrade-binary = {{ mariadb_location }}/bin/mysql_upgrade
64 mysqld-binary = {{ mariadb_location }}/bin/mysqld
65 pt-align-binary = {{ perl_siteprefix }}/bin/pt-align
66 pt-archiver-binary = {{ perl_siteprefix }}/bin/pt-archiver
67 pt-config-diff-binary = {{ perl_siteprefix }}/bin/pt-config-diff
68 pt-deadlock-logger-binary = {{ perl_siteprefix }}/bin/pt-deadlock-logger
69 pt-diskstats-binary = {{ perl_siteprefix }}/bin/pt-diskstats
70 pt-duplicate-key-checker-binary = {{ perl_siteprefix }}/bin/pt-duplicate-key-checker
71 pt-fifo-split-binary = {{ perl_siteprefix }}/bin/pt-fifo-split
72 pt-find-binary = {{ perl_siteprefix }}/bin/pt-find
73 pt-fingerprint-binary = {{ perl_siteprefix }}/bin/pt-fingerprint
74 pt-fk-error-logger-binary = {{ perl_siteprefix }}/bin/pt-fk-error-logger
75 pt-heartbeat-binary = {{ perl_siteprefix }}/bin/pt-heartbeat
76 pt-index-usage-binary = {{ perl_siteprefix }}/bin/pt-index-usage
77 pt-ioprofile-binary = {{ perl_siteprefix }}/bin/pt-ioprofile
78 pt-kill-binary = {{ perl_siteprefix }}/bin/pt-kill
79 pt-mext-binary = {{ perl_siteprefix }}/bin/pt-mext
80 pt-mysql-summary-binary = {{ perl_siteprefix }}/bin/pt-mysql-summary
81 pt-online-schema-change-binary = {{ perl_siteprefix }}/bin/pt-online-schema-change
82 pt-pmp-binary = {{ perl_siteprefix }}/bin/pt-pmp
83 pt-query-digest-binary = {{ perl_siteprefix }}/bin/pt-query-digest
84 pt-show-grants-binary = {{ perl_siteprefix }}/bin/pt-show-grants
85 pt-sift-binary = {{ perl_siteprefix }}/bin/pt-sift
86 pt-slave-delay-binary = {{ perl_siteprefix }}/bin/pt-slave-delay
87 pt-slave-find-binary = {{ perl_siteprefix }}/bin/pt-slave-find
88 pt-slave-restart-binary = {{ perl_siteprefix }}/bin/pt-slave-restart
89 pt-stalk-binary = {{ perl_siteprefix }}/bin/pt-stalk
90 pt-summary-binary = {{ perl_siteprefix }}/bin/pt-summary
91 pt-table-checksum-binary = {{ perl_siteprefix }}/bin/pt-table-checksum
92 pt-table-sync-binary = {{ perl_siteprefix }}/bin/pt-table-sync
93 pt-table-usage-binary = {{ perl_siteprefix }}/bin/pt-table-usage
94 pt-upgrade-binary = {{ perl_siteprefix }}/bin/pt-upgrade
95 pt-variable-advisor-binary = {{ perl_siteprefix }}/bin/pt-variable-advisor
96 pt-visual-explain-binary = {{ perl_siteprefix }}/bin/pt-visual-explain
97 xtrabackup-binary = {{ xtrabackup_location }}/bin/xtrabackup_51
98 perl-binary = {{ perl_location }}/bin/perl
99
100 [logrotate]
101 recipe = slapos.cookbook:logrotate
102 # Binaries
103 logrotate-binary = {{ logrotate_location }}/usr/sbin/logrotate
104 gzip-binary = {{ gzip_location }}/bin/gzip
105 gunzip-binary = {{ gzip_location }}/bin/gunzip
106 # Directories
107 wrapper = ${rootdirectory:bin}/logrotate
108 conf = ${rootdirectory:etc}/logrotate.conf
109 logrotate-entries = ${directory:logrotate-entries}
110 backup = ${directory:logrotate-backup}
111 state-file = ${rootdirectory:srv}/logrotate.status
112
113 [logrotate-entry-mariadb]
114 <= logrotate
115 recipe = slapos.cookbook:logrotate.d
116 name = mariadb
117 log = ${mariadb-instance:error-log} ${mariadb-instance:slow-query-log}
118 post = ${mariadb-instance:mysql-binary} --no-defaults -B --socket=${mariadb-instance:socket} -e "FLUSH LOGS"
119
120 [cron]
121 recipe = slapos.cookbook:cron
122 dcrond-binary = {{ dcron_location }}/sbin/crond
123 cron-entries = ${directory:cron-entries}
124 crontabs = ${directory:crontabs}
125 cronstamps = ${directory:cronstamps}
126 catcher = ${cron-simplelogger:wrapper}
127 binary = ${basedirectory:services}/crond
128
129 [cron-simplelogger]
130 recipe = slapos.cookbook:simplelogger
131 wrapper = ${rootdirectory:bin}/cron_simplelogger
132 log = ${basedirectory:log}/cron.log
133
134 [cron-entry-logrotate]
135 <= cron
136 recipe = slapos.cookbook:cron.d
137 name = logrotate
138 frequency = 0 0 * * *
139 command = ${logrotate:wrapper}
140
141 [binary-link]
142 recipe = slapos.cookbook:symbolic.link
143 target-directory = ${rootdirectory:bin}
144 link-binary =
145   {{ coreutils_location }}/bin/basename
146   {{ coreutils_location }}/bin/cat
147   {{ coreutils_location }}/bin/cp
148   {{ coreutils_location }}/bin/ls
149   {{ coreutils_location }}/bin/tr
150   {{ coreutils_location }}/bin/uname
151   {{ gettext_location }}/lib/gettext/hostname
152   {{ grep_location }}/bin/grep
153   {{ sed_location }}/bin/sed
154   {{ mariadb_location }}/bin/mysql
155
156 [rootdirectory]
157 recipe = slapos.cookbook:mkdirectory
158 etc = ${buildout:directory}/etc
159 var = ${buildout:directory}/var
160 srv = ${buildout:directory}/srv
161 bin = ${buildout:directory}/bin
162
163 [basedirectory]
164 recipe = slapos.cookbook:mkdirectory
165 log = ${rootdirectory:var}/log
166 services = ${rootdirectory:etc}/run
167 promise = ${rootdirectory:etc}/promise
168 run = ${rootdirectory:var}/run
169 backup = ${rootdirectory:srv}/backup
170
171 [directory]
172 recipe = slapos.cookbook:mkdirectory
173 cron-entries = ${rootdirectory:etc}/cron.d
174 crontabs = ${rootdirectory:etc}/crontabs
175 cronstamps = ${rootdirectory:etc}/cronstamps
176 ca-dir = ${rootdirectory:srv}/ssl
177 mariadb-backup-full = ${basedirectory:backup}/mariadb-full
178 mariadb-backup-incremental = ${basedirectory:backup}/mariadb-incremental
179 mariadb-data = ${rootdirectory:srv}/mariadb
180 logrotate-backup = ${basedirectory:backup}/logrotate
181 logrotate-entries = ${rootdirectory:etc}/logrotate.d
182
183 [promise]
184 recipe = slapos.cookbook:check_port_listening
185 path = ${basedirectory:promise}/mariadb
186 hostname = ${mariadb-instance:ip}
187 port = ${mariadb-instance:port}
188
189 [slap-parameter]
190 test-database-amount = 100