Volans has uploaded a new change for review.
https://gerrit.wikimedia.org/r/287144
Change subject: MariaDB: set $master true for codfw masters
......................................................................
MariaDB: set $master true for codfw masters
- Allow to set $master = true for all master regardless of the
datacenter in which they are.
- Start pt-heartbeat only for masters in the $::mw_primary datacenter.
Bug: T134481
Change-Id: Ic9d0de49c008f4fa740714baaf51b7a96ff6396d
---
M manifests/role/mariadb.pp
M manifests/site.pp
2 files changed, 41 insertions(+), 15 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/puppet
refs/changes/44/287144/1
diff --git a/manifests/role/mariadb.pp b/manifests/role/mariadb.pp
index 1ad388f..d5fdba2 100644
--- a/manifests/role/mariadb.pp
+++ b/manifests/role/mariadb.pp
@@ -131,9 +131,10 @@
shard => $shard,
}
+ $heartbeat_enabled = $master and ($::mw_primary == $::site)
class { 'mariadb::heartbeat':
shard => $shard,
- enabled => $master,
+ enabled => $heartbeat_enabled,
}
}
@@ -206,6 +207,8 @@
include coredb_mysql::snapshot
}
+ # TODO: detect the active datacenter in order to allow to set
+ # $master => true on the master in each datacenter.
class { 'mariadb::heartbeat':
shard => $shard,
enabled => $master,
@@ -218,7 +221,7 @@
}
}
-# Eventlogging needs tobe sandboxed by itself. It can consume resources
+# Eventlogging needs to be sandboxed by itself. It can consume resources
# unpredictably, especially during backfilling. It also benefits greatly
# from a setup tuned for TokuDB.
class role::mariadb::misc::eventlogging(
@@ -260,6 +263,8 @@
shard => $shard,
}
+ # TODO: detect the active datacenter in order to allow to set
+ # $master => true on the master in each datacenter once replicated.
class { 'mariadb::heartbeat':
shard => $shard,
enabled => $master,
@@ -507,7 +512,6 @@
include passwords::misc::scripts
include role::mariadb::ferm
- # N.B.: NON $::mw_primary masters are considered slaves for now
if ($shard == 'es1') {
$mysql_role = 'standalone'
} elsif $master == true {
@@ -574,9 +578,10 @@
contact_group => $contact_group,
}
+ $heartbeat_enabled = $master and ($::mw_primary == $::site)
class { 'mariadb::heartbeat':
shard => $shard,
- enabled => $master,
+ enabled => $heartbeat_enabled,
}
}
diff --git a/manifests/site.pp b/manifests/site.pp
index ca69f80..d4eee0b 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -454,7 +454,7 @@
node 'db2016.codfw.wmnet' {
class { 'role::mariadb::core':
shard => 's1',
- master => false,
+ master => true,
p_s => 'on',
binlog_format => 'STATEMENT',
ssl => 'puppet-cert',
@@ -499,7 +499,7 @@
node 'db2017.codfw.wmnet' {
class { 'role::mariadb::core':
shard => 's2',
- master => false,
+ master => true,
p_s => 'on',
binlog_format => 'STATEMENT',
ssl => 'multiple-ca',
@@ -545,7 +545,7 @@
node 'db2018.codfw.wmnet' {
class { 'role::mariadb::core':
shard => 's3',
- master => false,
+ master => true,
p_s => 'on',
binlog_format => 'STATEMENT',
ssl => 'puppet-cert',
@@ -590,7 +590,7 @@
node 'db2019.codfw.wmnet' {
class { 'role::mariadb::core':
shard => 's4',
- master => false,
+ master => true,
p_s => 'on',
binlog_format => 'STATEMENT',
ssl => 'puppet-cert',
@@ -635,7 +635,7 @@
node 'db2023.codfw.wmnet' {
class { 'role::mariadb::core':
shard => 's5',
- master => false,
+ master => true,
p_s => 'on',
binlog_format => 'STATEMENT',
ssl => 'puppet-cert',
@@ -680,7 +680,7 @@
node 'db2028.codfw.wmnet' {
class { 'role::mariadb::core':
shard => 's6',
- master => false,
+ master => true,
p_s => 'on',
binlog_format => 'STATEMENT',
ssl => 'puppet-cert',
@@ -725,7 +725,7 @@
node 'db2029.codfw.wmnet' {
class { 'role::mariadb::core':
shard => 's7',
- master => false,
+ master => true,
p_s => 'on',
binlog_format => 'STATEMENT',
ssl => 'puppet-cert',
@@ -764,7 +764,7 @@
node 'db2009.codfw.wmnet' {
class { 'role::mariadb::core':
shard => 'x1',
- master => false,
+ master => true,
p_s => 'on',
binlog_format => 'ROW',
ssl => 'puppet-cert',
@@ -1050,6 +1050,17 @@
include base::firewall
}
+## codfw master
+node 'es2015.codfw.wmnet' {
+ class { 'role::mariadb::core':
+ shard => 'es2',
+ master => true,
+ p_s => 'on',
+ binlog_format => 'ROW',
+ }
+ include base::firewall
+}
+
## codfw servers (decommissioning)
node /es200[567]\.codfw\.wmnet/ {
class { 'role::mariadb::core':
@@ -1060,8 +1071,8 @@
include base::firewall
}
-## codfw servers
-node /es201[456]\.codfw\.wmnet/ {
+## codfw slaves
+node /es201[46]\.codfw\.wmnet/ {
class { 'role::mariadb::core':
shard => 'es2',
p_s => 'on',
@@ -1092,6 +1103,16 @@
include base::firewall
}
+node 'es2018.codfw.wmnet' {
+ class { 'role::mariadb::core':
+ shard => 'es3',
+ master => true,
+ p_s => 'on',
+ binlog_format => 'ROW',
+ }
+ include base::firewall
+}
+
## codfw servers (decommissioning)
node /es20(08|09|10)\.codfw\.wmnet/ {
class { 'role::mariadb::core':
@@ -1103,7 +1124,7 @@
}
## codfw servers
-node /es201[789]\.codfw\.wmnet/ {
+node /es201[79]\.codfw\.wmnet/ {
class { 'role::mariadb::core':
shard => 'es3',
p_s => 'on',
--
To view, visit https://gerrit.wikimedia.org/r/287144
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic9d0de49c008f4fa740714baaf51b7a96ff6396d
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Volans <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits