Initial commit
diff --git a/galera/files/debian.cnf b/galera/files/debian.cnf
new file mode 100644
index 0000000..2be2e68
--- /dev/null
+++ b/galera/files/debian.cnf
@@ -0,0 +1,12 @@
+[client]
+host = localhost
+user = debian-sys-maint
+password = {{ pillar['mysql_config']['maintenance_password'] }}
+socket = /var/run/mysqld/mysqld.sock
+
+[mysql_upgrade]
+host = localhost
+user = debian-sys-maint
+password = {{ pillar['mysql_config']['maintenance_password'] }}
+socket = /var/run/mysqld/mysqld.sock
+basedir = /usr
\ No newline at end of file
diff --git a/galera/files/my.cnf b/galera/files/my.cnf
new file mode 100644
index 0000000..91628d3
--- /dev/null
+++ b/galera/files/my.cnf
@@ -0,0 +1,189 @@
+# All files in this package is subject to the GPL v2 license
+# More information is in the COPYING file in the top directory of this package.
+# Copyright (C) 2011 severalnines.com
+{%- if pillar.galera.master is defined %}
+{%- from "galera/map.jinja" import master with context %}
+{%- set service = master %}
+{%- endif %}
+{%- if pillar.galera.slave is defined %}
+{%- from "galera/map.jinja" import slave with context %}
+{%- set service = slave %}
+{%- endif %}
+[MYSQLD]
+user=mysql
+basedir=/usr/
+datadir=/var/lib/mysql
+socket=/var/run/mysqld/mysqld.sock
+pid_file=mysqld.pid
+port=3306
+log_error=/var/log/mysql.log
+log_warnings=2
+#log_output=FILE
+### INNODB OPTIONS 
+innodb_buffer_pool_size=9211M
+innodb_flush_log_at_trx_commit=2
+innodb_file_per_table=1
+innodb_data_file_path = ibdata1:100M:autoextend
+## You may want to tune the below depending on number of cores and disk sub
+innodb_read_io_threads=4
+innodb_write_io_threads=4
+innodb_io_capacity=200
+innodb_doublewrite=1
+innodb_log_file_size=1024M
+innodb_log_buffer_size=96M
+innodb_buffer_pool_instances=8
+innodb_log_files_in_group=2
+innodb_thread_concurrency=64
+#innodb_file_format=barracuda
+innodb_flush_method = O_DIRECT
+innodb_autoinc_lock_mode=2
+## avoid statistics update when doing e.g show tables
+innodb_stats_on_metadata=0
+default_storage_engine=innodb
+
+bind-address={{ service.bind.address }}
+
+# CHARACTER SET
+#collation_server = utf8_unicode_ci
+#init_connect='SET NAMES utf8'
+character_set_server = utf8
+
+# REPLICATION SPECIFIC
+#server_id must be unique across all mysql servers participating in replication.
+#server_id=SERVERID
+binlog_format=ROW
+#log_slave_updates=1
+#log_bin=binlog
+#relay_log=relay-bin
+#expire_logs_days=7
+#gtid_mode=ON
+#enforce_gtid_consistency=1
+# OTHER THINGS, BUFFERS ETC
+key_buffer_size = 24M
+tmp_table_size = 64M
+max_heap_table_size = 64M
+max_allowed_packet = 512M
+#sort_buffer_size = 256K
+#read_buffer_size = 256K
+#read_rnd_buffer_size = 512K
+#myisam_sort_buffer_size = 8M
+skip_name_resolve
+memlock=0
+sysdate_is_now=1
+max_connections=2000
+thread_cache_size=512
+query_cache_type = 0
+query_cache_size = 0
+table_open_cache=1024
+lower_case_table_names=0
+# 5.6 backwards compatibility
+#explicit_defaults_for_timestamp=1
+##
+## WSREP options
+##
+
+# Full path to wsrep provider library or 'none'
+wsrep_provider=/usr/lib/galera/libgalera_smm.so
+
+wsrep_node_address={{ service.bind.address }}
+# Provider specific configuration options
+wsrep_provider_options="gcache.size=8192M"
+
+# Logical cluster name. Should be the same for all nodes.
+wsrep_cluster_name="my_wsrep_cluster"
+
+# Group communication system handle
+#wsrep_cluster_address=gcomm://10.0.0.3:4567,10.0.0.4:4567,10.0.0.2:4567
+wsrep_cluster_address=gcomm://{% for member in service.members %}{{ member.host}}{% if not loop.last %},{% endif %}{% endfor %}
+
+# Human_readable node name (non-unique). Hostname by default.
+wsrep_node_name={{ service.bind.address }}
+
+# Address for incoming client connections. Autodetect by default.
+#wsrep_node_incoming_address=
+
+# How many threads will process writesets from other nodes
+wsrep_slave_threads=8
+
+# DBUG options for wsrep provider
+#wsrep_dbug_option
+
+# Generate fake primary keys for non-PK tables (required for multi-master
+# and parallel applying operation)
+wsrep_certify_nonPK=1
+
+# Location of the directory with data files. Needed for non-mysqldump
+# state snapshot transfers. Defaults to mysql_real_data_home.
+#wsrep_data_home_dir=
+
+# Maximum number of rows in write set
+wsrep_max_ws_rows=131072
+
+# Maximum size of write set
+wsrep_max_ws_size=1073741824
+
+# to enable debug level logging, set this to 1
+wsrep_debug=0
+
+# convert locking sessions into transactions
+wsrep_convert_LOCK_to_trx=0
+
+# how many times to retry deadlocked autocommits
+wsrep_retry_autocommit=1
+
+# change auto_increment_increment and auto_increment_offset automatically
+wsrep_auto_increment_control=1
+
+# replicate myisam
+wsrep_replicate_myisam=1
+# retry autoinc insert, which failed for duplicate key error
+wsrep_drupal_282555_workaround=0
+
+# enable "strictly synchronous" semantics for read operations
+wsrep_causal_reads=0
+
+# Command to call when node status or cluster membership changes.
+# Will be passed all or some of the following options:
+# --status  - new status of this node
+# --uuid    - UUID of the cluster
+# --primary - whether the component is primary or not ("yes"/"no")
+# --members - comma-separated list of members
+# --index   - index of this node in the list
+#wsrep_notify_cmd=
+
+##
+## WSREP State Transfer options
+##
+
+# State Snapshot Transfer method
+# ClusterControl currently DOES NOT support wsrep_sst_method=mysqldump
+wsrep_sst_method=xtrabackup
+
+# Address on THIS node to receive SST at. DON'T SET IT TO DONOR ADDRESS!!!
+# (SST method dependent. Defaults to the first IP of the first interface)
+#wsrep_sst_receive_address=
+
+# SST authentication string. This will be used to send SST to joining nodes.
+# Depends on SST method. For mysqldump method it is root:<root password>
+wsrep_sst_auth={{ service.admin.user }}:{{ service.admin.password }}
+
+# Desired SST donor name.
+#wsrep_sst_donor=
+
+# Protocol version to use
+# wsrep_protocol_version=
+[MYSQL]
+socket=/var/run/mysqld/mysqld.sock
+#default_character_set=utf8
+[client]
+socket=/var/run/mysqld/mysqld.sock
+default_character_set=utf8
+[mysqldump]
+max_allowed_packet = 512M
+socket=/var/run/mysqld/mysqld.sock
+default_character_set=utf8
+[MYSQLD_SAFE]
+pid_file=mysqld.pid
+log_error=/var/log/mysql.log
+basedir=/usr/
+datadir=/var/lib/mysql
diff --git a/galera/files/my.cnf.bootstrap b/galera/files/my.cnf.bootstrap
new file mode 100644
index 0000000..b5cbd93
--- /dev/null
+++ b/galera/files/my.cnf.bootstrap
@@ -0,0 +1,102 @@
+# All files in this package is subject to the GPL v2 license
+# More information is in the COPYING file in the top directory of this package.
+# Copyright (C) 2011 severalnines.com
+{%- if pillar.galera.master is defined %}
+{%- from "galera/map.jinja" import master with context %}
+{%- set service = master %}
+{%- endif %}
+{%- if pillar.galera.slave is defined %}
+{%- from "galera/map.jinja" import slave with context %}
+{%- set service = slave %}
+{%- endif %}
+[MYSQLD]
+user=mysql
+basedir=/usr/
+datadir=/var/lib/mysql
+socket=/var/run/mysqld/mysqld.sock
+pid_file=mysqld.pid
+port=3306
+log_error=/var/log/mysql.log
+log_warnings=2
+#log_output=FILE
+### INNODB OPTIONS 
+innodb_buffer_pool_size=9211M
+innodb_flush_log_at_trx_commit=2
+innodb_file_per_table=1
+innodb_data_file_path = ibdata1:100M:autoextend
+## You may want to tune the below depending on number of cores and disk sub
+innodb_read_io_threads=4
+innodb_write_io_threads=4
+innodb_io_capacity=200
+innodb_doublewrite=1
+innodb_log_file_size=1024M
+innodb_log_buffer_size=96M
+innodb_buffer_pool_instances=8
+innodb_log_files_in_group=2
+innodb_thread_concurrency=64
+#innodb_file_format=barracuda
+innodb_flush_method = O_DIRECT
+innodb_autoinc_lock_mode=2
+## avoid statistics update when doing e.g show tables
+innodb_stats_on_metadata=0
+default_storage_engine=innodb
+
+bind-address={{ service.bind.address }}
+
+# CHARACTER SET
+#collation_server = utf8_unicode_ci
+#init_connect='SET NAMES utf8'
+character_set_server = utf8
+
+# REPLICATION SPECIFIC
+#server_id must be unique across all mysql servers participating in replication.
+#server_id=SERVERID
+binlog_format=ROW
+#log_slave_updates=1
+#log_bin=binlog
+#relay_log=relay-bin
+#expire_logs_days=7
+#gtid_mode=ON
+#enforce_gtid_consistency=1
+# OTHER THINGS, BUFFERS ETC
+key_buffer_size = 24M
+tmp_table_size = 64M
+max_heap_table_size = 64M
+max_allowed_packet = 512M
+#sort_buffer_size = 256K
+#read_buffer_size = 256K
+#read_rnd_buffer_size = 512K
+#myisam_sort_buffer_size = 8M
+skip_name_resolve
+memlock=0
+sysdate_is_now=1
+max_connections=2000
+thread_cache_size=512
+query_cache_type = 0
+query_cache_size = 0
+table_open_cache=1024
+lower_case_table_names=0
+# 5.6 backwards compatibility
+#explicit_defaults_for_timestamp=1
+#
+
+# Desired SST donor name.
+#wsrep_sst_donor=
+
+# Protocol version to use
+# wsrep_protocol_version=
+[MYSQL]
+socket=/var/run/mysqld/mysqld.sock
+#default_character_set=utf8
+[client]
+socket=/var/run/mysqld/mysqld.sock
+default_character_set=utf8
+[mysqldump]
+max_allowed_packet = 512M
+socket=/var/run/mysqld/mysqld.sock
+default_character_set=utf8
+[MYSQLD_SAFE]
+pid_file=mysqld.pid
+log_error=/var/log/mysql.log
+basedir=/usr/
+datadir=/var/lib/mysql
diff --git a/galera/files/my.cnf.init b/galera/files/my.cnf.init
new file mode 100644
index 0000000..97ece92
--- /dev/null
+++ b/galera/files/my.cnf.init
@@ -0,0 +1,188 @@
+# All files in this package is subject to the GPL v2 license
+# More information is in the COPYING file in the top directory of this package.
+# Copyright (C) 2011 severalnines.com
+{%- if pillar.galera.master is defined %}
+{%- from "galera/map.jinja" import master with context %}
+{%- set service = master %}
+{%- endif %}
+{%- if pillar.galera.slave is defined %}
+{%- from "galera/map.jinja" import slave with context %}
+{%- set service = slave %}
+{%- endif %}
+[MYSQLD]
+user=mysql
+basedir=/usr/
+datadir=/var/lib/mysql
+socket=/var/run/mysqld/mysqld.sock
+pid_file=mysqld.pid
+port=3306
+log_error=/var/log/mysql.log
+log_warnings=2
+#log_output=FILE
+### INNODB OPTIONS 
+innodb_buffer_pool_size=9211M
+innodb_flush_log_at_trx_commit=2
+innodb_file_per_table=1
+innodb_data_file_path = ibdata1:100M:autoextend
+## You may want to tune the below depending on number of cores and disk sub
+innodb_read_io_threads=4
+innodb_write_io_threads=4
+innodb_io_capacity=200
+innodb_doublewrite=1
+innodb_log_file_size=1024M
+innodb_log_buffer_size=96M
+innodb_buffer_pool_instances=8
+innodb_log_files_in_group=2
+innodb_thread_concurrency=64
+#innodb_file_format=barracuda
+innodb_flush_method = O_DIRECT
+innodb_autoinc_lock_mode=2
+## avoid statistics update when doing e.g show tables
+innodb_stats_on_metadata=0
+default_storage_engine=innodb
+
+bind-address={{ service.bind.address }}
+
+# CHARACTER SET
+#collation_server = utf8_unicode_ci
+#init_connect='SET NAMES utf8'
+character_set_server = utf8
+
+# REPLICATION SPECIFIC
+#server_id must be unique across all mysql servers participating in replication.
+#server_id=SERVERID
+binlog_format=ROW
+#log_slave_updates=1
+#log_bin=binlog
+#relay_log=relay-bin
+#expire_logs_days=7
+#gtid_mode=ON
+#enforce_gtid_consistency=1
+# OTHER THINGS, BUFFERS ETC
+key_buffer_size = 24M
+tmp_table_size = 64M
+max_heap_table_size = 64M
+max_allowed_packet = 512M
+#sort_buffer_size = 256K
+#read_buffer_size = 256K
+#read_rnd_buffer_size = 512K
+#myisam_sort_buffer_size = 8M
+skip_name_resolve
+memlock=0
+sysdate_is_now=1
+max_connections=2000
+thread_cache_size=512
+query_cache_type = 0
+query_cache_size = 0
+table_open_cache=1024
+lower_case_table_names=0
+# 5.6 backwards compatibility
+#explicit_defaults_for_timestamp=1
+##
+## WSREP options
+##
+
+# Full path to wsrep provider library or 'none'
+wsrep_provider=/usr/lib/galera/libgalera_smm.so
+
+wsrep_node_address={{ service.bind.address }}
+# Provider specific configuration options
+wsrep_provider_options="gcache.size=8192M"
+
+# Logical cluster name. Should be the same for all nodes.
+wsrep_cluster_name="my_wsrep_cluster"
+
+# Group communication system handle
+wsrep_cluster_address=gcomm://
+
+# Human_readable node name (non-unique). Hostname by default.
+wsrep_node_name={{ service.bind.address }}
+
+# Address for incoming client connections. Autodetect by default.
+#wsrep_node_incoming_address=
+
+# How many threads will process writesets from other nodes
+wsrep_slave_threads=8
+
+# DBUG options for wsrep provider
+#wsrep_dbug_option
+
+# Generate fake primary keys for non-PK tables (required for multi-master
+# and parallel applying operation)
+wsrep_certify_nonPK=1
+
+# Location of the directory with data files. Needed for non-mysqldump
+# state snapshot transfers. Defaults to mysql_real_data_home.
+#wsrep_data_home_dir=
+
+# Maximum number of rows in write set
+wsrep_max_ws_rows=131072
+
+# Maximum size of write set
+wsrep_max_ws_size=1073741824
+
+# to enable debug level logging, set this to 1
+wsrep_debug=0
+
+# convert locking sessions into transactions
+wsrep_convert_LOCK_to_trx=0
+
+# how many times to retry deadlocked autocommits
+wsrep_retry_autocommit=1
+
+# change auto_increment_increment and auto_increment_offset automatically
+wsrep_auto_increment_control=1
+
+# replicate myisam
+wsrep_replicate_myisam=1
+# retry autoinc insert, which failed for duplicate key error
+wsrep_drupal_282555_workaround=0
+
+# enable "strictly synchronous" semantics for read operations
+wsrep_causal_reads=0
+
+# Command to call when node status or cluster membership changes.
+# Will be passed all or some of the following options:
+# --status  - new status of this node
+# --uuid    - UUID of the cluster
+# --primary - whether the component is primary or not ("yes"/"no")
+# --members - comma-separated list of members
+# --index   - index of this node in the list
+#wsrep_notify_cmd=
+
+##
+## WSREP State Transfer options
+##
+
+# State Snapshot Transfer method
+# ClusterControl currently DOES NOT support wsrep_sst_method=mysqldump
+wsrep_sst_method=xtrabackup
+
+# Address on THIS node to receive SST at. DON'T SET IT TO DONOR ADDRESS!!!
+# (SST method dependent. Defaults to the first IP of the first interface)
+#wsrep_sst_receive_address=
+
+# SST authentication string. This will be used to send SST to joining nodes.
+# Depends on SST method. For mysqldump method it is root:<root password>
+wsrep_sst_auth={{ service.admin.user }}:{{ service.admin.password }}
+
+# Desired SST donor name.
+#wsrep_sst_donor=
+
+# Protocol version to use
+# wsrep_protocol_version=
+[MYSQL]
+socket=/var/run/mysqld/mysqld.sock
+#default_character_set=utf8
+[client]
+socket=/var/run/mysqld/mysqld.sock
+default_character_set=utf8
+[mysqldump]
+max_allowed_packet = 512M
+socket=/var/run/mysqld/mysqld.sock
+default_character_set=utf8
+[MYSQLD_SAFE]
+pid_file=mysqld.pid
+log_error=/var/log/mysql.log
+basedir=/usr/
+datadir=/var/lib/mysql