Giuseppe Lavagetto has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/183226

Change subject: mediawiki: create "canary" pools to allow testing on subclusters
......................................................................

mediawiki: create "canary" pools to allow testing on subclusters

We badly need to be able to test new features we want to introduce on a
subset of nodes of our production cluster. This is a first attempt at
codifying that in puppet.

Change-Id: Ie839baa325554b32f44283f967189b0e0e4c2f3e
Signed-off-by: Giuseppe Lavagetto <glavage...@wikimedia.org>
---
A hieradata/role/common/mediawiki/appserver/canary_api.yaml
A hieradata/role/common/mediawiki/canary_appserver.yaml
M manifests/role/mediawiki.pp
M manifests/site.pp
4 files changed, 34 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/26/183226/1

diff --git a/hieradata/role/common/mediawiki/appserver/canary_api.yaml 
b/hieradata/role/common/mediawiki/appserver/canary_api.yaml
new file mode 100644
index 0000000..b0e6bea
--- /dev/null
+++ b/hieradata/role/common/mediawiki/appserver/canary_api.yaml
@@ -0,0 +1,3 @@
+role::mediawiki::webserver::pool: api
+admin::groups:
+  - deployment
diff --git a/hieradata/role/common/mediawiki/canary_appserver.yaml 
b/hieradata/role/common/mediawiki/canary_appserver.yaml
new file mode 100644
index 0000000..9aff32e
--- /dev/null
+++ b/hieradata/role/common/mediawiki/canary_appserver.yaml
@@ -0,0 +1,4 @@
+cluster: appserver
+role::mediawiki::webserver::pool: apaches
+admin::groups:
+  - deployment
diff --git a/manifests/role/mediawiki.pp b/manifests/role/mediawiki.pp
index 91ce421..b4c8743 100644
--- a/manifests/role/mediawiki.pp
+++ b/manifests/role/mediawiki.pp
@@ -128,3 +128,13 @@
     }
 
 }
+
+# Class for a subgroup of appservers where we can test experimental features
+class role::mediawiki::canary_appserver {
+    include role::mediawiki::appserver
+}
+
+# Ditto, for api
+class role::mediawiki::appserver::canary_api {
+    include role::mediawiki::appserver::api
+}
diff --git a/manifests/site.pp b/manifests/site.pp
index b48a02d..1e1dcb4 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -1997,8 +1997,15 @@
     include role::mediawiki::jobrunner
 }
 
-#mw1017-mw1113 are apaches
-node /^mw1(01[7-9]|0[2-9][0-9]|10[0-9]|11[0-3])\.eqiad\.wmnet$/ {
+# mw1017-mw1025 are canary appservers
+node /^mw10(1[7-9]|2[0-5])\.eqiad\.wmnet$/ {
+    $cluster = 'appserver'
+    role mediawiki::canary_appserver
+    include ::admin
+}
+
+# mw1026-mw1113 are appservers
+node /^mw1(02[6-9]|0[3-9][0-9]|10[0-9]|11[0-3])\.eqiad\.wmnet$/ {
     $cluster = 'appserver'
     if $::hostname =~ /^mw10(5[45])$/ {
         $ganglia_aggregator = true
@@ -2008,8 +2015,15 @@
     include ::admin
 }
 
+# mw1114-mw1119 are canary api appservers
+node /^mw111[4-9]\.eqiad\.wmnet$/ {
+    $cluster = 'api_appserver'
+    role mediawiki::appserver::canary_api
+    include admin
+}
+
 # mw1114-1148 are api apaches
-node /^mw11(1[4-9]|[23][0-9]|4[0-8])\.eqiad\.wmnet$/ {
+node /^mw11([23][0-9]|4[0-8])\.eqiad\.wmnet$/ {
     $cluster = 'api_appserver'
     if $::hostname =~ /^mw111[45]$/ {
         $ganglia_aggregator = true

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie839baa325554b32f44283f967189b0e0e4c2f3e
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Giuseppe Lavagetto <glavage...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to