Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 1 | # All files in this package is subject to the GPL v2 license |
| 2 | # More information is in the COPYING file in the top directory of this package. |
| 3 | # Copyright (C) 2011 severalnines.com |
| 4 | {%- if pillar.galera.master is defined %} |
| 5 | {%- from "galera/map.jinja" import master with context %} |
| 6 | {%- set service = master %} |
| 7 | {%- endif %} |
| 8 | {%- if pillar.galera.slave is defined %} |
| 9 | {%- from "galera/map.jinja" import slave with context %} |
| 10 | {%- set service = slave %} |
| 11 | {%- endif %} |
| 12 | [MYSQLD] |
| 13 | user=mysql |
| 14 | basedir=/usr/ |
| 15 | datadir=/var/lib/mysql |
Filip Pytloun | ca245cc | 2016-02-16 14:49:45 +0100 | [diff] [blame] | 16 | socket={{ service.socket }} |
Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 17 | pid_file=mysqld.pid |
| 18 | port=3306 |
Filip Pytloun | e40d54c | 2016-02-16 14:22:02 +0100 | [diff] [blame] | 19 | log_error={{ service.log_file }} |
Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 20 | log_warnings=2 |
| 21 | #log_output=FILE |
| 22 | ### INNODB OPTIONS |
| 23 | innodb_buffer_pool_size=9211M |
| 24 | innodb_flush_log_at_trx_commit=2 |
| 25 | innodb_file_per_table=1 |
| 26 | innodb_data_file_path = ibdata1:100M:autoextend |
| 27 | ## You may want to tune the below depending on number of cores and disk sub |
| 28 | innodb_read_io_threads=4 |
| 29 | innodb_write_io_threads=4 |
| 30 | innodb_io_capacity=200 |
| 31 | innodb_doublewrite=1 |
| 32 | innodb_log_file_size=1024M |
| 33 | innodb_log_buffer_size=96M |
| 34 | innodb_buffer_pool_instances=8 |
| 35 | innodb_log_files_in_group=2 |
| 36 | innodb_thread_concurrency=64 |
| 37 | #innodb_file_format=barracuda |
| 38 | innodb_flush_method = O_DIRECT |
| 39 | innodb_autoinc_lock_mode=2 |
| 40 | ## avoid statistics update when doing e.g show tables |
| 41 | innodb_stats_on_metadata=0 |
| 42 | default_storage_engine=innodb |
| 43 | |
| 44 | bind-address={{ service.bind.address }} |
| 45 | |
| 46 | # CHARACTER SET |
| 47 | #collation_server = utf8_unicode_ci |
| 48 | #init_connect='SET NAMES utf8' |
| 49 | character_set_server = utf8 |
| 50 | |
| 51 | # REPLICATION SPECIFIC |
| 52 | #server_id must be unique across all mysql servers participating in replication. |
| 53 | #server_id=SERVERID |
| 54 | binlog_format=ROW |
| 55 | #log_slave_updates=1 |
| 56 | #log_bin=binlog |
| 57 | #relay_log=relay-bin |
| 58 | #expire_logs_days=7 |
| 59 | #gtid_mode=ON |
| 60 | #enforce_gtid_consistency=1 |
| 61 | # OTHER THINGS, BUFFERS ETC |
| 62 | key_buffer_size = 24M |
| 63 | tmp_table_size = 64M |
| 64 | max_heap_table_size = 64M |
| 65 | max_allowed_packet = 512M |
| 66 | #sort_buffer_size = 256K |
| 67 | #read_buffer_size = 256K |
| 68 | #read_rnd_buffer_size = 512K |
| 69 | #myisam_sort_buffer_size = 8M |
| 70 | skip_name_resolve |
| 71 | memlock=0 |
| 72 | sysdate_is_now=1 |
marco | b47411d | 2015-09-30 22:01:44 +0200 | [diff] [blame] | 73 | max_connections={{ service.get('max_connections', 20000) }} |
Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 74 | thread_cache_size=512 |
| 75 | query_cache_type = 0 |
| 76 | query_cache_size = 0 |
| 77 | table_open_cache=1024 |
| 78 | lower_case_table_names=0 |
| 79 | # 5.6 backwards compatibility |
| 80 | #explicit_defaults_for_timestamp=1 |
| 81 | ## |
| 82 | ## WSREP options |
| 83 | ## |
| 84 | |
| 85 | # Full path to wsrep provider library or 'none' |
Filip Pytloun | a3567b8 | 2016-02-16 14:39:22 +0100 | [diff] [blame] | 86 | wsrep_provider={{ service.wsrep_provider }} |
Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 87 | |
| 88 | wsrep_node_address={{ service.bind.address }} |
| 89 | # Provider specific configuration options |
| 90 | wsrep_provider_options="gcache.size=8192M" |
| 91 | |
| 92 | # Logical cluster name. Should be the same for all nodes. |
| 93 | wsrep_cluster_name="my_wsrep_cluster" |
| 94 | |
| 95 | # Group communication system handle |
| 96 | #wsrep_cluster_address=gcomm://10.0.0.3:4567,10.0.0.4:4567,10.0.0.2:4567 |
| 97 | wsrep_cluster_address=gcomm://{% for member in service.members %}{{ member.host}}{% if not loop.last %},{% endif %}{% endfor %} |
| 98 | |
| 99 | # Human_readable node name (non-unique). Hostname by default. |
| 100 | wsrep_node_name={{ service.bind.address }} |
| 101 | |
| 102 | # Address for incoming client connections. Autodetect by default. |
| 103 | #wsrep_node_incoming_address= |
| 104 | |
| 105 | # How many threads will process writesets from other nodes |
| 106 | wsrep_slave_threads=8 |
| 107 | |
| 108 | # DBUG options for wsrep provider |
| 109 | #wsrep_dbug_option |
| 110 | |
| 111 | # Generate fake primary keys for non-PK tables (required for multi-master |
| 112 | # and parallel applying operation) |
| 113 | wsrep_certify_nonPK=1 |
| 114 | |
| 115 | # Location of the directory with data files. Needed for non-mysqldump |
| 116 | # state snapshot transfers. Defaults to mysql_real_data_home. |
| 117 | #wsrep_data_home_dir= |
| 118 | |
| 119 | # Maximum number of rows in write set |
| 120 | wsrep_max_ws_rows=131072 |
| 121 | |
| 122 | # Maximum size of write set |
| 123 | wsrep_max_ws_size=1073741824 |
| 124 | |
| 125 | # to enable debug level logging, set this to 1 |
| 126 | wsrep_debug=0 |
| 127 | |
| 128 | # convert locking sessions into transactions |
| 129 | wsrep_convert_LOCK_to_trx=0 |
| 130 | |
| 131 | # how many times to retry deadlocked autocommits |
| 132 | wsrep_retry_autocommit=1 |
| 133 | |
| 134 | # change auto_increment_increment and auto_increment_offset automatically |
| 135 | wsrep_auto_increment_control=1 |
| 136 | |
| 137 | # replicate myisam |
| 138 | wsrep_replicate_myisam=1 |
| 139 | # retry autoinc insert, which failed for duplicate key error |
| 140 | wsrep_drupal_282555_workaround=0 |
| 141 | |
| 142 | # enable "strictly synchronous" semantics for read operations |
| 143 | wsrep_causal_reads=0 |
| 144 | |
| 145 | # Command to call when node status or cluster membership changes. |
| 146 | # Will be passed all or some of the following options: |
| 147 | # --status - new status of this node |
| 148 | # --uuid - UUID of the cluster |
| 149 | # --primary - whether the component is primary or not ("yes"/"no") |
| 150 | # --members - comma-separated list of members |
| 151 | # --index - index of this node in the list |
| 152 | #wsrep_notify_cmd= |
| 153 | |
| 154 | ## |
| 155 | ## WSREP State Transfer options |
| 156 | ## |
| 157 | |
| 158 | # State Snapshot Transfer method |
| 159 | # ClusterControl currently DOES NOT support wsrep_sst_method=mysqldump |
| 160 | wsrep_sst_method=xtrabackup |
| 161 | |
| 162 | # Address on THIS node to receive SST at. DON'T SET IT TO DONOR ADDRESS!!! |
| 163 | # (SST method dependent. Defaults to the first IP of the first interface) |
| 164 | #wsrep_sst_receive_address= |
| 165 | |
| 166 | # SST authentication string. This will be used to send SST to joining nodes. |
| 167 | # Depends on SST method. For mysqldump method it is root:<root password> |
| 168 | wsrep_sst_auth={{ service.admin.user }}:{{ service.admin.password }} |
| 169 | |
| 170 | # Desired SST donor name. |
| 171 | #wsrep_sst_donor= |
| 172 | |
| 173 | # Protocol version to use |
| 174 | # wsrep_protocol_version= |
| 175 | [MYSQL] |
Filip Pytloun | ca245cc | 2016-02-16 14:49:45 +0100 | [diff] [blame] | 176 | socket={{ service.socket }} |
Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 177 | #default_character_set=utf8 |
| 178 | [client] |
Filip Pytloun | ca245cc | 2016-02-16 14:49:45 +0100 | [diff] [blame] | 179 | socket={{ service.socket }} |
Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 180 | default_character_set=utf8 |
| 181 | [mysqldump] |
| 182 | max_allowed_packet = 512M |
Filip Pytloun | ca245cc | 2016-02-16 14:49:45 +0100 | [diff] [blame] | 183 | socket={{ service.socket }} |
Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 184 | default_character_set=utf8 |
| 185 | [MYSQLD_SAFE] |
| 186 | pid_file=mysqld.pid |
Filip Pytloun | e40d54c | 2016-02-16 14:22:02 +0100 | [diff] [blame] | 187 | log_error={{ service.log_file }} |
Ales Komarek | cba48ac | 2015-04-30 11:40:44 +0200 | [diff] [blame] | 188 | basedir=/usr/ |
| 189 | datadir=/var/lib/mysql |