Jcrespo has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/361456 )

Change subject: mariadb: refactor option support and move it to hiera
......................................................................


mariadb: refactor option support and move it to hiera

Remove options from site.pp, move them to hiera.

The right place for the socket is /run.
Add configurable basedir, it is /opt/wmf-mariadb10 for MariaDB 10.0
and /opt/wmf-mariadb101 for MariaDB 10.1. Needed on stretch due to
not having a mysqld_safe anymore.

Bug: T148507
Bug: T168356
Change-Id: Id163fa600d2c98fa22475fd4052881a7c16bc709
---
A hieradata/hosts/db1015.yaml
A hieradata/hosts/db1018.yaml
A hieradata/hosts/db1021.yaml
A hieradata/hosts/db1026.yaml
A hieradata/hosts/db1028.yaml
A hieradata/hosts/db1029.yaml
A hieradata/hosts/db1030.yaml
A hieradata/hosts/db1031.yaml
A hieradata/hosts/db1033.yaml
A hieradata/hosts/db1034.yaml
A hieradata/hosts/db1035.yaml
A hieradata/hosts/db1036.yaml
A hieradata/hosts/db1037.yaml
A hieradata/hosts/db1038.yaml
A hieradata/hosts/db1039.yaml
A hieradata/hosts/db1041.yaml
A hieradata/hosts/db1044.yaml
A hieradata/hosts/db1045.yaml
A hieradata/hosts/db1049.yaml
A hieradata/hosts/db1050.yaml
A hieradata/hosts/db1051.yaml
A hieradata/hosts/db1052.yaml
A hieradata/hosts/db1053.yaml
A hieradata/hosts/db1054.yaml
A hieradata/hosts/db1055.yaml
A hieradata/hosts/db1056.yaml
A hieradata/hosts/db1059.yaml
A hieradata/hosts/db1060.yaml
A hieradata/hosts/db1061.yaml
A hieradata/hosts/db1062.yaml
A hieradata/hosts/db1063.yaml
A hieradata/hosts/db1064.yaml
A hieradata/hosts/db1065.yaml
A hieradata/hosts/db1066.yaml
A hieradata/hosts/db1067.yaml
A hieradata/hosts/db1068.yaml
A hieradata/hosts/db1070.yaml
A hieradata/hosts/db1071.yaml
A hieradata/hosts/db1072.yaml
A hieradata/hosts/db1073.yaml
A hieradata/hosts/db1074.yaml
A hieradata/hosts/db1075.yaml
A hieradata/hosts/db1076.yaml
A hieradata/hosts/db1077.yaml
A hieradata/hosts/db1078.yaml
A hieradata/hosts/db1079.yaml
A hieradata/hosts/db1080.yaml
A hieradata/hosts/db1081.yaml
A hieradata/hosts/db1082.yaml
A hieradata/hosts/db1083.yaml
A hieradata/hosts/db1085.yaml
A hieradata/hosts/db1086.yaml
A hieradata/hosts/db1087.yaml
A hieradata/hosts/db1088.yaml
A hieradata/hosts/db1089.yaml
A hieradata/hosts/db1090.yaml
A hieradata/hosts/db1091.yaml
A hieradata/hosts/db1092.yaml
A hieradata/hosts/db1093.yaml
A hieradata/hosts/db1094.yaml
A hieradata/hosts/db1097.yaml
A hieradata/hosts/db2016.yaml
A hieradata/hosts/db2018.yaml
A hieradata/hosts/db2019.yaml
A hieradata/hosts/db2023.yaml
A hieradata/hosts/db2028.yaml
A hieradata/hosts/db2029.yaml
A hieradata/hosts/db2033.yaml
A hieradata/hosts/db2034.yaml
A hieradata/hosts/db2036.yaml
A hieradata/hosts/db2037.yaml
A hieradata/hosts/db2038.yaml
A hieradata/hosts/db2039.yaml
A hieradata/hosts/db2040.yaml
A hieradata/hosts/db2042.yaml
A hieradata/hosts/db2043.yaml
A hieradata/hosts/db2044.yaml
A hieradata/hosts/db2045.yaml
A hieradata/hosts/db2046.yaml
A hieradata/hosts/db2047.yaml
A hieradata/hosts/db2048.yaml
A hieradata/hosts/db2050.yaml
A hieradata/hosts/db2051.yaml
A hieradata/hosts/db2052.yaml
A hieradata/hosts/db2053.yaml
A hieradata/hosts/db2054.yaml
A hieradata/hosts/db2055.yaml
A hieradata/hosts/db2057.yaml
A hieradata/hosts/db2058.yaml
A hieradata/hosts/db2059.yaml
A hieradata/hosts/db2060.yaml
A hieradata/hosts/db2061.yaml
A hieradata/hosts/db2062.yaml
A hieradata/hosts/db2065.yaml
A hieradata/hosts/db2066.yaml
A hieradata/hosts/db2067.yaml
A hieradata/hosts/db2068.yaml
A hieradata/hosts/db2069.yaml
A hieradata/hosts/db2070.yaml
A hieradata/hosts/db2071.yaml
A hieradata/hosts/db2072.yaml
A hieradata/hosts/es1011.yaml
A hieradata/hosts/es1012.yaml
A hieradata/hosts/es1013.yaml
A hieradata/hosts/es1014.yaml
A hieradata/hosts/es1015.yaml
A hieradata/hosts/es1016.yaml
A hieradata/hosts/es1017.yaml
A hieradata/hosts/es1018.yaml
A hieradata/hosts/es1019.yaml
A hieradata/hosts/es2011.yaml
A hieradata/hosts/es2012.yaml
A hieradata/hosts/es2013.yaml
A hieradata/hosts/es2014.yaml
A hieradata/hosts/es2015.yaml
A hieradata/hosts/es2016.yaml
A hieradata/hosts/es2017.yaml
A hieradata/hosts/es2018.yaml
A hieradata/hosts/es2019.yaml
M manifests/site.pp
M modules/mariadb/manifests/config.pp
M modules/mariadb/manifests/heartbeat.pp
M modules/mariadb/manifests/monitor_replication.pp
M modules/mariadb/manifests/service.pp
M modules/role/manifests/mariadb.pp
M modules/role/manifests/mariadb/core.pp
M modules/role/manifests/mariadb/dbstore.pp
M modules/role/manifests/mariadb/dbstore2.pp
M modules/role/manifests/mariadb/labs_deprecated.pp
M modules/role/manifests/mariadb/misc.pp
M modules/role/manifests/mariadb/misc/eventlogging.pp
M modules/role/manifests/mariadb/misc/phabricator.pp
M modules/role/manifests/mariadb/parsercache.pp
M modules/role/manifests/mariadb/sanitarium2.pp
M modules/role/manifests/mariadb/tendril.pp
M modules/role/manifests/mariadb/wikitech.pp
M modules/role/templates/mariadb/mysqld_config/production.my.cnf.erb
137 files changed, 440 insertions(+), 292 deletions(-)

Approvals:
  Marostegui: Looks good to me, but someone else must approve
  jenkins-bot: Verified
  Jcrespo: Looks good to me, approved



diff --git a/hieradata/hosts/db1015.yaml b/hieradata/hosts/db1015.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db1015.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1018.yaml b/hieradata/hosts/db1018.yaml
new file mode 100644
index 0000000..9b907d8
--- /dev/null
+++ b/hieradata/hosts/db1018.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's2'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1021.yaml b/hieradata/hosts/db1021.yaml
new file mode 100644
index 0000000..9b907d8
--- /dev/null
+++ b/hieradata/hosts/db1021.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's2'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1026.yaml b/hieradata/hosts/db1026.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db1026.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1028.yaml b/hieradata/hosts/db1028.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db1028.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1029.yaml b/hieradata/hosts/db1029.yaml
new file mode 100644
index 0000000..8b3d379
--- /dev/null
+++ b/hieradata/hosts/db1029.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'x1'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1030.yaml b/hieradata/hosts/db1030.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db1030.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1031.yaml b/hieradata/hosts/db1031.yaml
new file mode 100644
index 0000000..bf53ebf
--- /dev/null
+++ b/hieradata/hosts/db1031.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'x1'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1033.yaml b/hieradata/hosts/db1033.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db1033.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1034.yaml b/hieradata/hosts/db1034.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db1034.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1035.yaml b/hieradata/hosts/db1035.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db1035.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1036.yaml b/hieradata/hosts/db1036.yaml
new file mode 100644
index 0000000..9b907d8
--- /dev/null
+++ b/hieradata/hosts/db1036.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's2'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1037.yaml b/hieradata/hosts/db1037.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db1037.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1038.yaml b/hieradata/hosts/db1038.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db1038.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1039.yaml b/hieradata/hosts/db1039.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db1039.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1041.yaml b/hieradata/hosts/db1041.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db1041.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1044.yaml b/hieradata/hosts/db1044.yaml
new file mode 100644
index 0000000..a340b8a
--- /dev/null
+++ b/hieradata/hosts/db1044.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 's3'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1045.yaml b/hieradata/hosts/db1045.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db1045.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1049.yaml b/hieradata/hosts/db1049.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db1049.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1050.yaml b/hieradata/hosts/db1050.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db1050.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1051.yaml b/hieradata/hosts/db1051.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1051.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1052.yaml b/hieradata/hosts/db1052.yaml
new file mode 100644
index 0000000..aa8ca44
--- /dev/null
+++ b/hieradata/hosts/db1052.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's1'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1053.yaml b/hieradata/hosts/db1053.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db1053.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1054.yaml b/hieradata/hosts/db1054.yaml
new file mode 100644
index 0000000..9af454e
--- /dev/null
+++ b/hieradata/hosts/db1054.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's2'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1055.yaml b/hieradata/hosts/db1055.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1055.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1056.yaml b/hieradata/hosts/db1056.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db1056.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1059.yaml b/hieradata/hosts/db1059.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db1059.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1060.yaml b/hieradata/hosts/db1060.yaml
new file mode 100644
index 0000000..9b907d8
--- /dev/null
+++ b/hieradata/hosts/db1060.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's2'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1061.yaml b/hieradata/hosts/db1061.yaml
new file mode 100644
index 0000000..161cc96
--- /dev/null
+++ b/hieradata/hosts/db1061.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's6'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1062.yaml b/hieradata/hosts/db1062.yaml
new file mode 100644
index 0000000..9682add
--- /dev/null
+++ b/hieradata/hosts/db1062.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's7'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1063.yaml b/hieradata/hosts/db1063.yaml
new file mode 100644
index 0000000..4191aef
--- /dev/null
+++ b/hieradata/hosts/db1063.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's5'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1064.yaml b/hieradata/hosts/db1064.yaml
new file mode 100644
index 0000000..278e1cb
--- /dev/null
+++ b/hieradata/hosts/db1064.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 's4'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1065.yaml b/hieradata/hosts/db1065.yaml
new file mode 100644
index 0000000..1a775a1
--- /dev/null
+++ b/hieradata/hosts/db1065.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 's1'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1066.yaml b/hieradata/hosts/db1066.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1066.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1067.yaml b/hieradata/hosts/db1067.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1067.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1068.yaml b/hieradata/hosts/db1068.yaml
new file mode 100644
index 0000000..196962b
--- /dev/null
+++ b/hieradata/hosts/db1068.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's4'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1070.yaml b/hieradata/hosts/db1070.yaml
new file mode 100644
index 0000000..6f2d1af
--- /dev/null
+++ b/hieradata/hosts/db1070.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 's5'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1071.yaml b/hieradata/hosts/db1071.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db1071.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1072.yaml b/hieradata/hosts/db1072.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1072.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1073.yaml b/hieradata/hosts/db1073.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1073.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1074.yaml b/hieradata/hosts/db1074.yaml
new file mode 100644
index 0000000..9b907d8
--- /dev/null
+++ b/hieradata/hosts/db1074.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's2'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1075.yaml b/hieradata/hosts/db1075.yaml
new file mode 100644
index 0000000..0ce1cd8
--- /dev/null
+++ b/hieradata/hosts/db1075.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's3'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1076.yaml b/hieradata/hosts/db1076.yaml
new file mode 100644
index 0000000..9b907d8
--- /dev/null
+++ b/hieradata/hosts/db1076.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's2'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1077.yaml b/hieradata/hosts/db1077.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db1077.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1078.yaml b/hieradata/hosts/db1078.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db1078.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1079.yaml b/hieradata/hosts/db1079.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db1079.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1080.yaml b/hieradata/hosts/db1080.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1080.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1081.yaml b/hieradata/hosts/db1081.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db1081.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1082.yaml b/hieradata/hosts/db1082.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db1082.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1083.yaml b/hieradata/hosts/db1083.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1083.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1085.yaml b/hieradata/hosts/db1085.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db1085.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1086.yaml b/hieradata/hosts/db1086.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db1086.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1087.yaml b/hieradata/hosts/db1087.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db1087.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1088.yaml b/hieradata/hosts/db1088.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db1088.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1089.yaml b/hieradata/hosts/db1089.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db1089.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1090.yaml b/hieradata/hosts/db1090.yaml
new file mode 100644
index 0000000..9b907d8
--- /dev/null
+++ b/hieradata/hosts/db1090.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's2'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1091.yaml b/hieradata/hosts/db1091.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db1091.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1092.yaml b/hieradata/hosts/db1092.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db1092.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1093.yaml b/hieradata/hosts/db1093.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db1093.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1094.yaml b/hieradata/hosts/db1094.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db1094.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db1097.yaml b/hieradata/hosts/db1097.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db1097.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2016.yaml b/hieradata/hosts/db2016.yaml
new file mode 100644
index 0000000..aa8ca44
--- /dev/null
+++ b/hieradata/hosts/db2016.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's1'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2018.yaml b/hieradata/hosts/db2018.yaml
new file mode 100644
index 0000000..0ce1cd8
--- /dev/null
+++ b/hieradata/hosts/db2018.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's3'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2019.yaml b/hieradata/hosts/db2019.yaml
new file mode 100644
index 0000000..196962b
--- /dev/null
+++ b/hieradata/hosts/db2019.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's4'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2023.yaml b/hieradata/hosts/db2023.yaml
new file mode 100644
index 0000000..4191aef
--- /dev/null
+++ b/hieradata/hosts/db2023.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's5'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2028.yaml b/hieradata/hosts/db2028.yaml
new file mode 100644
index 0000000..161cc96
--- /dev/null
+++ b/hieradata/hosts/db2028.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's6'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2029.yaml b/hieradata/hosts/db2029.yaml
new file mode 100644
index 0000000..9682add
--- /dev/null
+++ b/hieradata/hosts/db2029.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 's7'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'STATEMENT'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2033.yaml b/hieradata/hosts/db2033.yaml
new file mode 100644
index 0000000..bf53ebf
--- /dev/null
+++ b/hieradata/hosts/db2033.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'x1'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2034.yaml b/hieradata/hosts/db2034.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db2034.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2036.yaml b/hieradata/hosts/db2036.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db2036.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2037.yaml b/hieradata/hosts/db2037.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db2037.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2038.yaml b/hieradata/hosts/db2038.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db2038.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2039.yaml b/hieradata/hosts/db2039.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db2039.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2040.yaml b/hieradata/hosts/db2040.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db2040.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2042.yaml b/hieradata/hosts/db2042.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db2042.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2043.yaml b/hieradata/hosts/db2043.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db2043.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2044.yaml b/hieradata/hosts/db2044.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db2044.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2045.yaml b/hieradata/hosts/db2045.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db2045.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2046.yaml b/hieradata/hosts/db2046.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db2046.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2047.yaml b/hieradata/hosts/db2047.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db2047.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2048.yaml b/hieradata/hosts/db2048.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db2048.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2050.yaml b/hieradata/hosts/db2050.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db2050.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2051.yaml b/hieradata/hosts/db2051.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db2051.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2052.yaml b/hieradata/hosts/db2052.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db2052.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2053.yaml b/hieradata/hosts/db2053.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db2053.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2054.yaml b/hieradata/hosts/db2054.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db2054.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2055.yaml b/hieradata/hosts/db2055.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db2055.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2057.yaml b/hieradata/hosts/db2057.yaml
new file mode 100644
index 0000000..42ef9b8
--- /dev/null
+++ b/hieradata/hosts/db2057.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's3'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2058.yaml b/hieradata/hosts/db2058.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db2058.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2059.yaml b/hieradata/hosts/db2059.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db2059.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2060.yaml b/hieradata/hosts/db2060.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db2060.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2061.yaml b/hieradata/hosts/db2061.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db2061.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2062.yaml b/hieradata/hosts/db2062.yaml
new file mode 100644
index 0000000..e60febc
--- /dev/null
+++ b/hieradata/hosts/db2062.yaml
@@ -0,0 +1 @@
+mariadb::shard: 's1'
diff --git a/hieradata/hosts/db2065.yaml b/hieradata/hosts/db2065.yaml
new file mode 100644
index 0000000..958da0b
--- /dev/null
+++ b/hieradata/hosts/db2065.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's4'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2066.yaml b/hieradata/hosts/db2066.yaml
new file mode 100644
index 0000000..987af0e
--- /dev/null
+++ b/hieradata/hosts/db2066.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's5'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2067.yaml b/hieradata/hosts/db2067.yaml
new file mode 100644
index 0000000..f41d15a
--- /dev/null
+++ b/hieradata/hosts/db2067.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's6'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2068.yaml b/hieradata/hosts/db2068.yaml
new file mode 100644
index 0000000..bc07613
--- /dev/null
+++ b/hieradata/hosts/db2068.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's7'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2069.yaml b/hieradata/hosts/db2069.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db2069.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2070.yaml b/hieradata/hosts/db2070.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db2070.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2071.yaml b/hieradata/hosts/db2071.yaml
new file mode 100644
index 0000000..b1bf6dc
--- /dev/null
+++ b/hieradata/hosts/db2071.yaml
@@ -0,0 +1,2 @@
+mariadb::shard: 's1'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/db2072.yaml b/hieradata/hosts/db2072.yaml
new file mode 100644
index 0000000..e60febc
--- /dev/null
+++ b/hieradata/hosts/db2072.yaml
@@ -0,0 +1 @@
+mariadb::shard: 's1'
diff --git a/hieradata/hosts/es1011.yaml b/hieradata/hosts/es1011.yaml
new file mode 100644
index 0000000..eff055b
--- /dev/null
+++ b/hieradata/hosts/es1011.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'es2'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es1012.yaml b/hieradata/hosts/es1012.yaml
new file mode 100644
index 0000000..e96a5f9
--- /dev/null
+++ b/hieradata/hosts/es1012.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es1'
+mariadb::mysql_role: 'standalone'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es1013.yaml b/hieradata/hosts/es1013.yaml
new file mode 100644
index 0000000..d17b32a
--- /dev/null
+++ b/hieradata/hosts/es1013.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es2'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es1014.yaml b/hieradata/hosts/es1014.yaml
new file mode 100644
index 0000000..9a66e16
--- /dev/null
+++ b/hieradata/hosts/es1014.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'es3'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es1015.yaml b/hieradata/hosts/es1015.yaml
new file mode 100644
index 0000000..d17b32a
--- /dev/null
+++ b/hieradata/hosts/es1015.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es2'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es1016.yaml b/hieradata/hosts/es1016.yaml
new file mode 100644
index 0000000..e96a5f9
--- /dev/null
+++ b/hieradata/hosts/es1016.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es1'
+mariadb::mysql_role: 'standalone'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es1017.yaml b/hieradata/hosts/es1017.yaml
new file mode 100644
index 0000000..bd6233d
--- /dev/null
+++ b/hieradata/hosts/es1017.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es3'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es1018.yaml b/hieradata/hosts/es1018.yaml
new file mode 100644
index 0000000..e96a5f9
--- /dev/null
+++ b/hieradata/hosts/es1018.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es1'
+mariadb::mysql_role: 'standalone'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es1019.yaml b/hieradata/hosts/es1019.yaml
new file mode 100644
index 0000000..bd6233d
--- /dev/null
+++ b/hieradata/hosts/es1019.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es3'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2011.yaml b/hieradata/hosts/es2011.yaml
new file mode 100644
index 0000000..e7fde35
--- /dev/null
+++ b/hieradata/hosts/es2011.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'es1'
+mariadb::mysql_role: 'standalone'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2012.yaml b/hieradata/hosts/es2012.yaml
new file mode 100644
index 0000000..e7fde35
--- /dev/null
+++ b/hieradata/hosts/es2012.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'es1'
+mariadb::mysql_role: 'standalone'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2013.yaml b/hieradata/hosts/es2013.yaml
new file mode 100644
index 0000000..e7fde35
--- /dev/null
+++ b/hieradata/hosts/es2013.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'es1'
+mariadb::mysql_role: 'standalone'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2014.yaml b/hieradata/hosts/es2014.yaml
new file mode 100644
index 0000000..d17b32a
--- /dev/null
+++ b/hieradata/hosts/es2014.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es2'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2015.yaml b/hieradata/hosts/es2015.yaml
new file mode 100644
index 0000000..d17b32a
--- /dev/null
+++ b/hieradata/hosts/es2015.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es2'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2016.yaml b/hieradata/hosts/es2016.yaml
new file mode 100644
index 0000000..eff055b
--- /dev/null
+++ b/hieradata/hosts/es2016.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'es2'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2017.yaml b/hieradata/hosts/es2017.yaml
new file mode 100644
index 0000000..bd6233d
--- /dev/null
+++ b/hieradata/hosts/es2017.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es3'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2018.yaml b/hieradata/hosts/es2018.yaml
new file mode 100644
index 0000000..9a66e16
--- /dev/null
+++ b/hieradata/hosts/es2018.yaml
@@ -0,0 +1,4 @@
+mariadb::shard: 'es3'
+mariadb::mysql_role: 'master'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/hieradata/hosts/es2019.yaml b/hieradata/hosts/es2019.yaml
new file mode 100644
index 0000000..bd6233d
--- /dev/null
+++ b/hieradata/hosts/es2019.yaml
@@ -0,0 +1,3 @@
+mariadb::shard: 'es3'
+mariadb::binlog_format: 'ROW'
+mariadb::socket: '/tmp/mysql.sock'
diff --git a/manifests/site.pp b/manifests/site.pp
index 038eba9..b7bab95 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -352,58 +352,33 @@
 # s1 (enwiki) core production dbs on eqiad
 # eqiad master
 node 'db1052.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's1',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
-
-node /^db10(51|55|66|67|72|73|80|83|89)\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard => 's1',
-    }
-}
-
-# row-based replication to sanitarium2 (T150960)
-node 'db1065.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's1',
-        binlog_format => 'ROW',
-    }
+# eqiad replicas
+node /^db10(51|55|65|66|67|72|73|80|83|89)\.eqiad\.wmnet/ {
+    role(mariadb::core)
 }
 
 # s1 (enwiki) core production dbs on codfw
 # codfw master
 node 'db2016.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's1',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
+# codfw replicas
 node /^db20(34|42|48|55|62|69|70|71|72)\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 's1',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # s2 (large wikis) core production dbs on eqiad
 # eqiad master
 node 'db1054.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's2',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
+# eqiad replicas
 node /^db10(18|21|36|60|74|76|90)\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard => 's2',
-    }
+    role(mariadb::core)
 }
 
 # To be decommissioned in T162699
@@ -414,158 +389,87 @@
 # s2 (large wikis) core production dbs on codfw
 # codfw master
 node 'db2017.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's2',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
 node /^db20(35|41|49|56|63|64)\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 's2',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # s3 (default) core production dbs on eqiad
 # Lots of tables!
 # eqiad master
 node 'db1075.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's3',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
-node /^db10(15|35|38|77|78)\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard => 's3',
-    }
-}
-
-# Testing row-based replication to sanitarium2 (T150802)
-node 'db1044.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's3',
-        binlog_format => 'ROW',
-    }
+node /^db10(15|35|38|44|77|78)\.eqiad\.wmnet/ {
+    role(mariadb::core)
 }
 
 # s3 (default) core production dbs on codfw
 # codfw master
 node 'db2018.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's3',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
 node /^db20(36|43|50|57)\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 's3',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # s4 (commons) core production dbs on eqiad
 # eqiad master
 node 'db1068.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's4',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
-node /^db10(53|56|59|81|84|91|97)\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard => 's4',
-    }
+node /^db10(53|56|59|64|81|84|91|97)\.eqiad\.wmnet/ {
+    role(mariadb::core)
 }
 
 # row-based replication to sanitarium2 (T150960)
 node 'db1064.eqiad.wmnet' {
-    class { 'role::mariadb::core':
-        shard         => 's4',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # s4 (commons) core production dbs on codfw
 # codfw master
 node 'db2019.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's4',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
 node /^db20(37|44|51|58|65)\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 's4',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # s5 (wikidata/dewiki) core production dbs on eqiad
 # eqiad master
 node 'db1063.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's5',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
-# row-based replication to sanitarium2 (T153743)
-node 'db1070.eqiad.wmnet' {
-    class { 'role::mariadb::core':
-        shard         => 's5',
-        binlog_format => 'ROW',
-    }
-}
-
-node /^db10(26|45|49|71|82|87|92)\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard => 's5',
-    }
+node /^db10(26|45|49|70|71|82|87|92)\.eqiad\.wmnet/ {
+    role(mariadb::core)
 }
 
 # s5 (wikidata/dewiki) core production dbs on codfw
 # codfw master
 node 'db2023.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's5',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
 node /^db20(38|45|52|59|66)\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 's5',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # s6 core production dbs on eqiad
 # eqiad master
 node 'db1061.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's6',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
 node /^db10(30|37|50|85|88|93)\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard => 's6',
-    }
+    role(mariadb::core)
 }
 
 # To be decommissioned in T166486
@@ -576,18 +480,11 @@
 # s6 core production dbs on codfw
 # codfw master
 node 'db2028.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's6',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
 node /^db20(39|46|53|60|67)\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 's6',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # To be decommissioned in T163778
@@ -598,60 +495,36 @@
 # s7 (centralauth, meta et al.) core production dbs on eqiad
 # eqiad master
 node 'db1062.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's7',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
 node /^db10(28|33|34|39|41|79|86|94)\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard => 's7',
-    }
+    role(mariadb::core)
 }
 
 # s7 (centralauth, meta et al.) core production dbs on codfw
 # codfw master
 node 'db2029.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 's7',
-        master        => true,
-        binlog_format => 'STATEMENT',
-    }
+    role(mariadb::core)
 }
 
 node /^db20(40|47|54|61|68)\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 's7',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 ## x1 shard
 # eqiad
 node 'db1031.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 'x1',
-        master        => true,
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 node 'db1029.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 'x1',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # codfw
 node 'db2033.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 'x1',
-        master        => true,
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 ## m1 shard
@@ -920,85 +793,52 @@
 
 ## eqiad servers
 node /^es101[268]\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard => 'es1',
-    }
+    role(mariadb::core)
 }
 
 ## codfw servers
 node /^es201[123]\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 'es1',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # External Storage, Shard 2 (es2) databases
 
 ## eqiad servers
 node 'es1011.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 'es2',
-        master        => true,
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 node /^es101[35]\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 'es2',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 ## codfw servers
 node 'es2016.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 'es2',
-        master        => true,
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 node /^es201[45]\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 'es2',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # External Storage, Shard 3 (es3) databases
 
 ## eqiad servers
 node 'es1014.eqiad.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 'es3',
-        master        => true,
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 node /^es101[79]\.eqiad\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 'es3',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 ## codfw servers
 node 'es2018.codfw.wmnet' {
-    class { '::role::mariadb::core':
-        shard         => 'es3',
-        master        => true,
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 node /^es201[79]\.codfw\.wmnet/ {
-    class { '::role::mariadb::core':
-        shard         => 'es3',
-        binlog_format => 'ROW',
-    }
+    role(mariadb::core)
 }
 
 # Disaster recovery hosts for external storage
diff --git a/modules/mariadb/manifests/config.pp 
b/modules/mariadb/manifests/config.pp
index b6e9954..9670967 100644
--- a/modules/mariadb/manifests/config.pp
+++ b/modules/mariadb/manifests/config.pp
@@ -12,9 +12,10 @@
     $config                 = 'mariadb/default.my.cnf.erb',
     $prompt                 = '\u@\h(\d)> ',
     $password               = 'undefined',
+    $basedir                = '/opt/wmf-mariadb10',
     $datadir                = '/srv/sqldata',
     $tmpdir                 = '/srv/tmp',
-    $socket                 = '/var/run/mysqld/mysqld.sock',
+    $socket                 = '/run/mysqld/mysqld.sock',
     $port                   = 3306,
     $sql_mode               = '',
     $read_only              = 0,
@@ -65,8 +66,8 @@
     # if the socket location is different from the default, it is the role
     # class' reponsability to handle it (otherwise this could have side
     # efects, like changing / or /tmp permissions
-    if $socket == '/var/run/mysqld/mysqld.sock' {
-        file { '/var/run/mysqld':
+    if $socket == '/run/mysqld/mysqld.sock' {
+        file { '/run/mysqld':
             ensure => directory,
             mode   => '0775',
             owner  => 'root',
@@ -85,7 +86,7 @@
     file { "${datadir}/my.cnf":
         ensure => absent,
     }
-    file { '/opt/wmf-mariadb10/my.cnf':
+    file { "${basedir}/my.cnf":
         ensure => absent,
     }
 
diff --git a/modules/mariadb/manifests/heartbeat.pp 
b/modules/mariadb/manifests/heartbeat.pp
index ca84b82..16f5d40 100644
--- a/modules/mariadb/manifests/heartbeat.pp
+++ b/modules/mariadb/manifests/heartbeat.pp
@@ -4,6 +4,7 @@
     $interval   = 1,
     $shard      = 'unknown',
     $datacenter = 'none',
+    $socket     = '/run/mysqld/mysqld.sock',
 ) {
 
 
@@ -21,11 +22,12 @@
         exec { 'pt-heartbeat':
             command => "/usr/bin/perl \
             /usr/local/bin/pt-heartbeat-wikimedia \
-            --defaults-file=/root/.my.cnf -D heartbeat \
+            --defaults-file=/dev/null \
+            --user=root --host=localhost -D heartbeat \
             --shard=${shard} --datacenter=${datacenter} \
             --update --replace --interval=${interval} \
             --set-vars=\"binlog_format=STATEMENT\" \
-            -S /tmp/mysql.sock --daemonize \
+            -S ${socket} --daemonize \
             --pid /var/run/pt-heartbeat.pid",
             unless  => '/bin/ps --pid $(cat /var/run/pt-heartbeat.pid) \
             > /dev/null 2>&1',
diff --git a/modules/mariadb/manifests/monitor_replication.pp 
b/modules/mariadb/manifests/monitor_replication.pp
index 12dff0a..1b14986 100644
--- a/modules/mariadb/manifests/monitor_replication.pp
+++ b/modules/mariadb/manifests/monitor_replication.pp
@@ -2,11 +2,11 @@
 # TODO: Revisit the is_critical part. We probably want pages for DB problems 
for
 # at least a group of people
 define mariadb::monitor_replication(
-    $is_critical   = true,
-    $contact_group = 'dba',
+    $is_critical   = false,
+    $contact_group = 'admins',
     $lag_warn      = 60,
     $lag_crit      = 300,
-    $socket        = '/tmp/mysql.sock',
+    $socket        = '/run/mysqld/mysqld.sock',
     $multisource   = true,
     $warn_stopped  = true,
     ) {
diff --git a/modules/mariadb/manifests/service.pp 
b/modules/mariadb/manifests/service.pp
index 90d85a6..fa77640 100644
--- a/modules/mariadb/manifests/service.pp
+++ b/modules/mariadb/manifests/service.pp
@@ -15,38 +15,46 @@
 
 class mariadb::service (
     $package = 'wmf-mariadb10',
+    $basedir = '',
     $manage  = false,
     $ensure  = stopped,
     $enable  = false,
     ) {
 
-    $basedir = "/opt/${package}"
-    file { "${basedir}/service":
-        ensure  => present,
-        owner   => 'root',
-        group   => 'root',
-        mode    => '0755',
-        content => template('mariadb/mariadb.server.erb'),
-        require => Package[$package],
+    if $basedir == '' {
+        $basedir = "/opt/${package}"
     }
 
-    file { '/etc/init.d/mysql':
-        ensure  => 'link',
-        target  => "${basedir}/service",
-        require => File["${basedir}/service"],
-    }
+    if os_version('debian >= stretch') {
+        #TODO: setup optional systemd options
+    } else {
+        file { "${basedir}/service":
+            ensure  => present,
+            owner   => 'root',
+            group   => 'root',
+            mode    => '0755',
+            content => template('mariadb/mariadb.server.erb'),
+            require => Package[$package],
+        }
 
-    file { '/etc/init.d/mariadb':
-        ensure  => 'link',
-        target  => "${basedir}/service",
-        require => File["${basedir}/service"],
-    }
+        file { '/etc/init.d/mysql':
+            ensure  => 'link',
+            target  => "${basedir}/service",
+            require => File["${basedir}/service"],
+        }
 
-    if $manage {
-        service { 'mysql':
-            ensure  => $ensure,
-            enable  => $enable,
-            require => File['/etc/init.d/mysql'],
+        file { '/etc/init.d/mariadb':
+            ensure  => 'link',
+            target  => "${basedir}/service",
+            require => File["${basedir}/service"],
+        }
+
+        if $manage {
+            service { 'mysql':
+                ensure  => $ensure,
+                enable  => $enable,
+                require => File['/etc/init.d/mysql'],
+            }
         }
     }
 
diff --git a/modules/role/manifests/mariadb.pp 
b/modules/role/manifests/mariadb.pp
index 3539039..398832c 100644
--- a/modules/role/manifests/mariadb.pp
+++ b/modules/role/manifests/mariadb.pp
@@ -155,7 +155,7 @@
     $mysql_group,
     $mysql_role,
     $mysql_shard = '',
-    $socket = '/tmp/mysql.sock',
+    $socket = '/run/mysqld/mysqld.sock',
     ) {
 
     salt::grain { 'mysql_group':
diff --git a/modules/role/manifests/mariadb/core.pp 
b/modules/role/manifests/mariadb/core.pp
index 044d26d..dec83ba 100644
--- a/modules/role/manifests/mariadb/core.pp
+++ b/modules/role/manifests/mariadb/core.pp
@@ -1,9 +1,18 @@
-class role::mariadb::core(
-    $shard,
-    $ssl           = 'puppet-cert',
-    $binlog_format = 'MIXED',
-    $master        = false,
-    ) {
+class role::mariadb::core {
+    if os_version('debian >= stretch') {
+        $default_package = 'wmf-mariadb101'
+    } else {
+        $default_package = 'wmf-mariadb10'
+    }
+    $package = hiera('mariadb::package', $default_package)
+    $basedir = hiera('mariadb::basedir',  "/opt/${package}")
+    $socket = hiera('mariadb::socket', '/run/mysqld/mysqld.sock')
+    $datadir = hiera('mariadb::datadir', '/srv/sqldata')
+    $tmpdir = hiera('mariadb::tmpdir', '/srv/tmp')
+    $shard = hiera('mariadb::shard', undef)
+    $mysql_role = hiera('mariadb::mysql_role', 'slave')
+    $ssl = hiera('mariadb::ssl', 'puppet-cert')
+    $binlog_format = hiera('mariadb::binlog_format', 'ROW')
 
     system::role { 'mariadb::core':
         description => "Core DB Server ${shard}",
@@ -19,14 +28,11 @@
     # off: for shard(s) of a single machine, with no slaves
     # slave: for all slaves
     # both: for masters (they are slaves and masters at the same time)
-    if ($shard == 'es1') {
-        $mysql_role = 'standalone'
+    if ($mysql_role == 'standalone') {
         $semi_sync = 'off'
-    } elsif $master == true {
-        $mysql_role = 'master'
+    } elsif $mysql_role == 'master' {
         $semi_sync = 'both'
     } else {
-        $mysql_role = 'slave'
         $semi_sync = 'slave'
     }
 
@@ -34,35 +40,23 @@
         mysql_group => 'core',
         mysql_shard => $shard,
         mysql_role  => $mysql_role,
+        socket      => $socket,
     }
 
-    # FIXME: Get package, socket, datadir, etc. from hiera
-    # FIXME: Support multiple instances per host
-    if (os_version('debian >= stretch')) {
-        # stretch defaults to MariaDB 10.1 with systemd
-        $package = 'wmf-mariadb101'
-        # TODO: manage custom systemd preferences like ulimits
-        # ignore service managing for now
-        $initd = false
-    } else {
-        # jessie, trusty defaults to MariaDB 10.0 with init.d
-        $package = 'wmf-mariadb10'
-        $initd = true
-    }
     class {'mariadb::packages_wmf':
         package => $package,
     }
-    if $initd {
-        class {'mariadb::service':
-            package => $package,
-        }
+    class {'mariadb::service':
+        package => $package,
     }
 
     # Read only forced on also for the masters of the primary datacenter
     class { 'mariadb::config':
         config           => 'role/mariadb/mysqld_config/production.my.cnf.erb',
-        datadir          => '/srv/sqldata',
-        tmpdir           => '/srv/tmp',
+        basedir          => $basedir,
+        datadir          => $datadir,
+        tmpdir           => $tmpdir,
+        socket           => $socket,
         p_s              => 'on',
         ssl              => $ssl,
         binlog_format    => $binlog_format,
@@ -73,7 +67,7 @@
     include role::mariadb::grants::core
     class { 'role::mariadb::grants::production':
         shard    => 'core',
-        prompt   => "PRODUCTION ${shard}",
+        prompt   => "PRODUCTION ${shard} ${mysql_role}",
         password => $passwords::misc::scripts::mysql_root_pass,
     }
 
@@ -87,11 +81,14 @@
         multisource   => false,
         is_critical   => $replication_is_critical,
         contact_group => $contact_group,
+        socket        => $socket,
     }
 
+    $heartbeat_enabled = $mysql_role == 'master'
     class { 'mariadb::heartbeat':
         shard      => $shard,
         datacenter => $::site,
-        enabled    => $master,
+        enabled    => $heartbeat_enabled,
+        socket     => $socket,
     }
 }
diff --git a/modules/role/manifests/mariadb/dbstore.pp 
b/modules/role/manifests/mariadb/dbstore.pp
index bc7c641..d6b5246 100644
--- a/modules/role/manifests/mariadb/dbstore.pp
+++ b/modules/role/manifests/mariadb/dbstore.pp
@@ -27,6 +27,7 @@
     class {'role::mariadb::groups':
         mysql_group => 'dbstore',
         mysql_role  => 'slave',
+        socket      => '/tmp/mysql.sock',
     }
 
     class { 'mariadb::config':
@@ -44,5 +45,6 @@
         lag_warn      => $lag_warn,
         lag_crit      => $lag_crit,
         warn_stopped  => $warn_stopped,
+        socket        => '/tmp/mysql.sock',
     }
 }
diff --git a/modules/role/manifests/mariadb/dbstore2.pp 
b/modules/role/manifests/mariadb/dbstore2.pp
index 89ec562..1195339 100644
--- a/modules/role/manifests/mariadb/dbstore2.pp
+++ b/modules/role/manifests/mariadb/dbstore2.pp
@@ -27,6 +27,7 @@
     class {'role::mariadb::groups':
         mysql_group => 'dbstore',
         mysql_role  => 'slave',
+        socket      => '/tmp/mysql.sock',
     }
 
     class { 'mariadb::config':
@@ -44,5 +45,6 @@
         lag_warn      => $lag_warn,
         lag_crit      => $lag_crit,
         warn_stopped  => $warn_stopped,
+        socket        => '/tmp/mysql.sock',
     }
 }
diff --git a/modules/role/manifests/mariadb/labs_deprecated.pp 
b/modules/role/manifests/mariadb/labs_deprecated.pp
index 7c941ed..f2c2e2a 100644
--- a/modules/role/manifests/mariadb/labs_deprecated.pp
+++ b/modules/role/manifests/mariadb/labs_deprecated.pp
@@ -19,6 +19,7 @@
     class { 'role::mariadb::groups':
         mysql_group => 'labs',
         mysql_role  => 'slave',
+        socket      => '/tmp/mysql.sock',
     }
 
     include mariadb::packages_wmf
diff --git a/modules/role/manifests/mariadb/misc.pp 
b/modules/role/manifests/mariadb/misc.pp
index 07055f8..d424575 100644
--- a/modules/role/manifests/mariadb/misc.pp
+++ b/modules/role/manifests/mariadb/misc.pp
@@ -26,6 +26,7 @@
         mysql_group => 'misc',
         mysql_shard => $shard,
         mysql_role  => $mysql_role,
+        socket      => '/tmp/mysql.sock', # temporary workaround T148507
     }
 
     include mariadb::packages_wmf
@@ -49,6 +50,7 @@
         shard      => $shard,
         datacenter => $::site,
         enabled    => $master,
+        socket     => '/tmp/mysql.sock', # temporary workaround T148507
     }
 }
 
diff --git a/modules/role/manifests/mariadb/misc/eventlogging.pp 
b/modules/role/manifests/mariadb/misc/eventlogging.pp
index 633491e..82394e5 100644
--- a/modules/role/manifests/mariadb/misc/eventlogging.pp
+++ b/modules/role/manifests/mariadb/misc/eventlogging.pp
@@ -24,6 +24,7 @@
         mysql_group => 'misc',
         mysql_shard => $shard,
         mysql_role  => $mysql_role,
+        socket      => '/tmp/mysql.sock',
     }
 
     include mariadb::packages_wmf
@@ -54,6 +55,7 @@
         shard      => $shard,
         datacenter => $::site,
         enabled    => $master,
+        socket     => '/tmp/mysql.sock',
     }
 }
 
diff --git a/modules/role/manifests/mariadb/misc/phabricator.pp 
b/modules/role/manifests/mariadb/misc/phabricator.pp
index bb59a7e..35ae252 100644
--- a/modules/role/manifests/mariadb/misc/phabricator.pp
+++ b/modules/role/manifests/mariadb/misc/phabricator.pp
@@ -31,6 +31,7 @@
         mysql_group => 'misc',
         mysql_shard => $shard,
         mysql_role  => $mysql_role,
+        socket      => '/tmp/mysql.sock',
     }
 
     $read_only = $master ? {
@@ -84,6 +85,7 @@
         shard      => $shard,
         datacenter => $::site,
         enabled    => $master,
+        socket     => '/tmp/mysql.sock',
     }
 
     unless $master {
@@ -91,6 +93,7 @@
             is_critical   => false,
             contact_group => 'admins',
             multisource   => false,
+            socket        => '/tmp/mysql.sock',
         }
     }
 }
diff --git a/modules/role/manifests/mariadb/parsercache.pp 
b/modules/role/manifests/mariadb/parsercache.pp
index afc96e8..0fd04c1 100644
--- a/modules/role/manifests/mariadb/parsercache.pp
+++ b/modules/role/manifests/mariadb/parsercache.pp
@@ -14,6 +14,7 @@
         mysql_group => 'parsercache',
         mysql_shard => $shard,
         mysql_role  => 'master',
+        socket      => '/tmp/mysql.sock',
     }
 
     system::role { 'mariadb::parsercache':
@@ -42,6 +43,7 @@
         shard      => $shard,
         datacenter => $::site,
         enabled    => true,
+        socket     => '/tmp/mysql.sock',
     }
 
     # mysql monitoring access from tendril (db1011)
diff --git a/modules/role/manifests/mariadb/sanitarium2.pp 
b/modules/role/manifests/mariadb/sanitarium2.pp
index bf079a9..158f015 100644
--- a/modules/role/manifests/mariadb/sanitarium2.pp
+++ b/modules/role/manifests/mariadb/sanitarium2.pp
@@ -22,6 +22,7 @@
     class { 'role::mariadb::groups':
         mysql_group => 'labs',
         mysql_role  => 'slave',
+        socket      => '/tmp/mysql.sock',
     }
 
     class {'mariadb::packages_wmf':
diff --git a/modules/role/manifests/mariadb/tendril.pp 
b/modules/role/manifests/mariadb/tendril.pp
index fd2260d..84f9b79 100644
--- a/modules/role/manifests/mariadb/tendril.pp
+++ b/modules/role/manifests/mariadb/tendril.pp
@@ -16,6 +16,7 @@
     class {'role::mariadb::groups':
         mysql_group => 'tendril',
         mysql_role  => 'standalone',
+        socket      => '/tmp/mysql.sock',
     }
 
     class { 'mariadb::config':
diff --git a/modules/role/manifests/mariadb/wikitech.pp 
b/modules/role/manifests/mariadb/wikitech.pp
index b1ee818..81ca30b 100644
--- a/modules/role/manifests/mariadb/wikitech.pp
+++ b/modules/role/manifests/mariadb/wikitech.pp
@@ -12,6 +12,7 @@
     class { 'role::mariadb::groups':
         mysql_group => 'wikitech',
         mysql_role  => 'standalone',
+        socket      => '/tmp/mysql.sock',
     }
 
     include mariadb::packages_wmf
diff --git a/modules/role/templates/mariadb/mysqld_config/production.my.cnf.erb 
b/modules/role/templates/mariadb/mysqld_config/production.my.cnf.erb
index 9d1e44e..93c9b19 100644
--- a/modules/role/templates/mariadb/mysqld_config/production.my.cnf.erb
+++ b/modules/role/templates/mariadb/mysqld_config/production.my.cnf.erb
@@ -3,16 +3,8 @@
 
 [client]
 port   = 3306
-socket = /tmp/mysql.sock
-<% if @ssl == 'on' %>
-# ssl
-ssl-ca=/etc/mysql/ssl/cacert.pem
-ssl-cert=/etc/mysql/ssl/server-cert.pem
-ssl-key=/etc/mysql/ssl/server-key.pem
-# skip server cert validation until we generate one cert per server
-# it would check the cert's common name against the host
-# ssl-verify-server-cert
-<% elsif @ssl == 'puppet-cert' %>
+socket = <%= @socket %>
+<% if @ssl == 'on' or @ssl == 'puppet-cert' %>
 # ssl
 ssl-ca=/etc/ssl/certs/Puppet_Internal_CA.pem
 ssl-cert=/etc/mysql/ssl/cert.pem
@@ -24,9 +16,10 @@
 
 # administrative options
 user       = mysql
-socket     = /tmp/mysql.sock
+socket     = <%= @socket %>
 port       = 3306
 extra-port = 3307
+basedir    = <%= @basedir %>
 datadir    = <%= @datadir %>
 tmpdir     = <%= @tmpdir %>
 server_id  = <%= @server_id %>
@@ -157,13 +150,7 @@
 innodb_read_io_threads         = 16
 innodb_write_io_threads        = 8
 <% end %>
-<% if @ssl == 'on' %>
-# ssl
-ssl-ca=/etc/mysql/ssl/cacert.pem
-ssl-cert=/etc/mysql/ssl/server-cert.pem
-ssl-key=/etc/mysql/ssl/server-key.pem
-ssl-cipher=TLSv1.2
-<% elsif @ssl == 'puppet-cert' %>
+<% if @ssl == 'on' or @ssl == 'puppet-cert' %>
 # ssl
 ssl-ca=/etc/ssl/certs/Puppet_Internal_CA.pem
 ssl-cert=/etc/mysql/ssl/cert.pem

-- 
To view, visit https://gerrit.wikimedia.org/r/361456
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Id163fa600d2c98fa22475fd4052881a7c16bc709
Gerrit-PatchSet: 15
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Jcrespo <[email protected]>
Gerrit-Reviewer: Giuseppe Lavagetto <[email protected]>
Gerrit-Reviewer: Jcrespo <[email protected]>
Gerrit-Reviewer: Marostegui <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to