Yuvipanda has uploaded a new change for review.
https://gerrit.wikimedia.org/r/255080
Change subject: Move all monitoring groups to one file
......................................................................
Move all monitoring groups to one file
Since they have to be imported directly into site.pp (for now),
we shall keep them cleanly in a separate file
Change-Id: Ieb322327e5471c97a5d7707ae25d90972482f61a
---
A manifests/monitoring_groups.pp
M manifests/role/analytics.pp
M manifests/role/aqs.pp
D manifests/role/cache.pp
M manifests/role/coredb.pp
M manifests/role/elasticsearch.pp
M manifests/role/etcd.pp
M manifests/role/ganeti.pp
M manifests/role/logstash.pp
D manifests/role/lvs.pp
M manifests/role/maps.pp
M manifests/role/mediawiki.pp
M manifests/role/memcached.pp
M manifests/role/ocg.pp
M manifests/role/openldap.pp
M manifests/role/parsoid.pp
M manifests/role/rcstream.pp
M manifests/role/redisdb.pp
M manifests/role/restbase.pp
M manifests/role/sca.pp
M manifests/role/scb.pp
M manifests/role/swift.pp
M manifests/role/wdqs.pp
M manifests/role/zotero.pp
M manifests/site.pp
M modules/role/manifests/labs/openstack/nova.pp
26 files changed, 119 insertions(+), 129 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/puppet
refs/changes/80/255080/1
diff --git a/manifests/monitoring_groups.pp b/manifests/monitoring_groups.pp
new file mode 100644
index 0000000..8a394ed
--- /dev/null
+++ b/manifests/monitoring_groups.pp
@@ -0,0 +1,118 @@
+# This file contains virtual resources for setting up monitoring groups
+# This needs to be directly 'imported' for now and hence is in a separate
+# file.
+# Please keep this list alphabetically ordered!
+
+# Analytics
+@monitoring::group { 'analytics_eqiad': description => 'analytics servers in
eqiad' }
+
+# Analytics Query Service
+@monitoring::group { 'aqs_eqiad': description => 'Analytics Query Service
eqiad' }
+@monitoring::group { 'aqs_codfw': description => 'Analytics Query Service
codfw' }
+
+# Cache
+@monitoring::group { 'cache_text_codfw': description => 'codfw text Varnish' }
+@monitoring::group { 'cache_text_eqiad': description => 'eqiad text Varnish' }
+@monitoring::group { 'cache_text_esams': description => 'esams text Varnish' }
+@monitoring::group { 'cache_text_ulsfo': description => 'ulsfo text Varnish' }
+@monitoring::group { 'cache_upload_codfw': description => 'codfw upload
Varnish' }
+@monitoring::group { 'cache_upload_eqiad': description => 'eqiad upload
Varnish' }
+@monitoring::group { 'cache_upload_esams': description => 'esams upload
Varnish' }
+@monitoring::group { 'cache_upload_ulsfo': description => 'ulsfo upload
Varnish' }
+@monitoring::group { 'cache_mobile_codfw': description => 'codfw mobile
Varnish' }
+@monitoring::group { 'cache_mobile_eqiad': description => 'eqiad mobile
Varnish' }
+@monitoring::group { 'cache_mobile_esams': description => 'esams mobile
Varnish' }
+@monitoring::group { 'cache_mobile_ulsfo': description => 'ulsfo mobile
Varnish' }
+@monitoring::group { 'cache_parsoid_eqiad': description => 'Parsoid caches
eqiad' }
+@monitoring::group { 'cache_parsoid_codfw': description => 'Parsoid caches
codfw' }
+@monitoring::group { 'cache_misc_eqiad': description => 'Misc caches eqiad' }
+@monitoring::group { 'cache_maps_eqiad': description => 'Maps caches eqiad' }
+
+# Elasticsearch
+@monitoring::group { 'elasticsearch_eqiad': description => 'eqiad
elasticsearch servers' }
+@monitoring::group { 'elasticsearch_codfw': description => 'codfw
elasticsearch servers' }
+@monitoring::group { 'elasticsearch_esams': description => 'esams
elasticsearch servers' }
+@monitoring::group { 'elasticsearch_ulsfo': description => 'ulsfo
elasticsearch servers' }
+
+# Etcd
+@monitoring::group { 'etcd_eqiad': description => 'eqiad Etcd' }
+
+# Ganeti
+@monitoring::group { 'ganeti_eqiad': description => 'Ganeti virt cluster
eqiad' }
+@monitoring::group { 'ganeti_codfw': description => 'Ganeti virt cluster
codfw' }
+
+# Labs OpenStack Nova (labvirt***)
+@monitoring::group { 'virt_eqiad': description => 'eqiad virt servers' }
+@monitoring::group { 'virt_codfw': description => 'codfw virt servers' }
+
+# LVS
+@monitoring::group { 'lvs': description => 'LVS' }
+@monitoring::group { 'lvs_eqiad': description => 'eqiad LVS servers' }
+@monitoring::group { 'lvs_codfw': description => 'codfw LVS servers' }
+@monitoring::group { 'lvs_ulsfo': description => 'ulsfo LVS servers' }
+@monitoring::group { 'lvs_esams': description => 'esams LVS servers' }
+
+# Logstash
+@monitoring::group { 'logstash_eqiad': description => 'eqiad logstash' }
+
+# Maps
+@monitoring::group { 'maps_eqiad': description => 'eqiad maps servers' }
+@monitoring::group { 'maps_codfw': description => 'codfw maps servers' }
+
+# MediaWiki
+@monitoring::group { 'appserver_eqiad': description => 'eqiad application
servers' }
+@monitoring::group { 'api_appserver_eqiad': description => 'eqiad API
application servers' }
+@monitoring::group { 'imagescaler_eqiad': description => 'eqiad image
scalers' }
+@monitoring::group { 'jobrunner_eqiad': description => 'eqiad jobrunner
application servers' }
+@monitoring::group { 'videoscaler_eqiad': description => 'eqiad video
scaler' }
+
+@monitoring::group { 'appserver_codfw': description => 'codfw application
servers' }
+@monitoring::group { 'api_appserver_codfw': description => 'codfw API
application servers' }
+@monitoring::group { 'imagescaler_codfw': description => 'codfw image
scalers' }
+@monitoring::group { 'jobrunner_codfw': description => 'codfw jobrunner
application servers' }
+@monitoring::group { 'videoscaler_codfw': description => 'codfw video
scaler' }
+
+# Memcached
+@monitoring::group { 'memcached_eqiad': description => 'eqiad memcached' }
+@monitoring::group { 'memcached_codfw': description => 'codfw memcached' }
+
+# MySQL
+@monitoring::group { 'es_eqiad': description => 'eqiad External Storage' }
+@monitoring::group { 'mysql_eqiad': description => 'eqiad mysql core' }
+@monitoring::group { 'mysql_codfw': description => 'codfw mysql core' }
+
+# OCG
+@monitoring::group { 'ocg_eqiad': description => 'offline content generator
eqiad' }
+
+# OpenLDAP (Corp IT)
+@monitoring::group { 'openldap_corp_mirror_eqiad': description => 'Corp OIT
LDAP Mirror' }
+@monitoring::group { 'openldap_corp_mirror_codfw': description => 'Corp OIT
LDAP Mirror codfw' }
+
+# Parsoid
+@monitoring::group { 'parsoid_eqiad': description => 'eqiad parsoid servers' }
+@monitoring::group { 'parsoid_codfw': description => 'codfw parsoid servers' }
+
+# RCStream
+@monitoring::group { 'rcstream_eqiad': description => 'eqiad rcstream' }
+
+# RedisDB
+@monitoring::group { 'redis_eqiad': description => 'eqiad Redis' }
+@monitoring::group { 'redis_codfw': description => 'codfw Redis' }
+
+# RESTBase
+@monitoring::group { 'restbase_eqiad': description => 'Restbase eqiad' }
+@monitoring::group { 'restbase_codfw': description => 'Restbase codfw' }
+
+# Service Clusters
+@monitoring::group { 'sca_eqiad': description => 'Service Cluster A servers' }
+@monitoring::group { 'scb_eqiad': description => 'Service Cluster B servers' }
+
+# Swift
+@monitoring::group { 'swift': description => 'swift servers' }
+
+# Wikidata Query Service
+@monitoring::group{ 'wdqs_eqiad': description => 'Wikidata Query Service
(eqiad)' }
+
+# Zotero
+@monitoring::group { 'zotero_eqiad': description => 'Zotero eqiad' }
+@monitoring::group { 'zotero_codfw': description => 'Zotero codfw' }
diff --git a/manifests/role/analytics.pp b/manifests/role/analytics.pp
index b6270bd..747d38f 100644
--- a/manifests/role/analytics.pp
+++ b/manifests/role/analytics.pp
@@ -1,7 +1,4 @@
# analytics servers (RT-1985)
-
-@monitoring::group { 'analytics_eqiad': description => 'analytics servers in
eqiad' }
-
# == Class role::analytics
# Base class for all analytics nodes.
# All analytics nodes should include this.
diff --git a/manifests/role/aqs.pp b/manifests/role/aqs.pp
index 24c20a5..5e692be 100644
--- a/manifests/role/aqs.pp
+++ b/manifests/role/aqs.pp
@@ -1,6 +1,3 @@
-@monitoring::group { 'aqs_eqiad': description => 'Analytics Query Service
eqiad' }
-@monitoring::group { 'aqs_codfw': description => 'Analytics Query Service
codfw' }
-
# == Class role::aqs
# Analytics Query Service
#
diff --git a/manifests/role/cache.pp b/manifests/role/cache.pp
deleted file mode 100644
index b5b7895..0000000
--- a/manifests/role/cache.pp
+++ /dev/null
@@ -1,20 +0,0 @@
-# XXX this needs to be refactored Elsewhere
-# Virtual resources for the monitoring server
-@monitoring::group { 'cache_text_codfw': description => 'codfw text Varnish' }
-@monitoring::group { 'cache_text_eqiad': description => 'eqiad text Varnish' }
-@monitoring::group { 'cache_text_esams': description => 'esams text Varnish' }
-@monitoring::group { 'cache_text_ulsfo': description => 'ulsfo text Varnish' }
-@monitoring::group { 'cache_upload_codfw': description => 'codfw upload
Varnish' }
-@monitoring::group { 'cache_upload_eqiad': description => 'eqiad upload
Varnish' }
-@monitoring::group { 'cache_upload_esams': description => 'esams upload
Varnish' }
-@monitoring::group { 'cache_upload_ulsfo': description => 'ulsfo upload
Varnish' }
-@monitoring::group { 'cache_mobile_codfw': description => 'codfw mobile
Varnish' }
-@monitoring::group { 'cache_mobile_eqiad': description => 'eqiad mobile
Varnish' }
-@monitoring::group { 'cache_mobile_esams': description => 'esams mobile
Varnish' }
-@monitoring::group { 'cache_mobile_ulsfo': description => 'ulsfo mobile
Varnish' }
-@monitoring::group { 'cache_parsoid_eqiad': description => 'Parsoid caches
eqiad' }
-@monitoring::group { 'cache_parsoid_codfw': description => 'Parsoid caches
codfw' }
-@monitoring::group { 'cache_misc_eqiad': description => 'Misc caches eqiad' }
-@monitoring::group { 'cache_maps_eqiad': description => 'Maps caches eqiad' }
-
-# If you're looking for something that used to be here, check
modules/role/manifests/cache/...
diff --git a/manifests/role/coredb.pp b/manifests/role/coredb.pp
index ce757a0..fcb4ea0 100644
--- a/manifests/role/coredb.pp
+++ b/manifests/role/coredb.pp
@@ -1,8 +1,4 @@
# Virtual resource for the monitoring server
-@monitoring::group { 'es_eqiad': description => 'eqiad External Storage' }
-@monitoring::group { 'mysql_eqiad': description => 'eqiad mysql core' }
-@monitoring::group { 'mysql_codfw': description => 'codfw mysql core' }
-
## for describing replication topology
## hosts must be added here in addition to site.pp
class role::coredb::config {
diff --git a/manifests/role/elasticsearch.pp b/manifests/role/elasticsearch.pp
index f86f894..241d31f 100644
--- a/manifests/role/elasticsearch.pp
+++ b/manifests/role/elasticsearch.pp
@@ -2,12 +2,6 @@
#
# This class sets up Elasticsearch in a WMF-specific way.
#
-
-@monitoring::group { 'elasticsearch_eqiad': description => 'eqiad
elasticsearch servers' }
-@monitoring::group { 'elasticsearch_codfw': description => 'codfw
elasticsearch servers' }
-@monitoring::group { 'elasticsearch_esams': description => 'esams
elasticsearch servers' }
-@monitoring::group { 'elasticsearch_ulsfo': description => 'ulsfo
elasticsearch servers' }
-
class role::elasticsearch::server{
if ($::realm == 'production' and hiera('elasticsearch::rack', undef) ==
undef) {
diff --git a/manifests/role/etcd.pp b/manifests/role/etcd.pp
index cd53efb..011d854 100644
--- a/manifests/role/etcd.pp
+++ b/manifests/role/etcd.pp
@@ -1,10 +1,4 @@
# === Class role::etcd
-#
-# Virtual resource for the monitoring server
-@monitoring::group { 'etcd_eqiad':
- description => 'eqiad Etcd',
-}
-
class role::etcd {
system::role { 'role::etcd':
description => 'Highly-consistent distributed k/v store'
diff --git a/manifests/role/ganeti.pp b/manifests/role/ganeti.pp
index 2f73518..4850189 100644
--- a/manifests/role/ganeti.pp
+++ b/manifests/role/ganeti.pp
@@ -1,8 +1,4 @@
# Role classes for ganeti
-
-@monitoring::group { 'ganeti_eqiad': description => 'Ganeti virt cluster
eqiad' }
-@monitoring::group { 'ganeti_codfw': description => 'Ganeti virt cluster
codfw' }
-
class role::ganeti {
include ::ganeti
diff --git a/manifests/role/logstash.pp b/manifests/role/logstash.pp
index af92ad3..2f8da5f 100644
--- a/manifests/role/logstash.pp
+++ b/manifests/role/logstash.pp
@@ -1,6 +1,4 @@
# vim:sw=4 ts=4 sts=4 et:
-@monitoring::group { 'logstash_eqiad': description => 'eqiad logstash' }
-
# == Class: role::logstash
#
# Provisions Logstash and ElasticSearch.
diff --git a/manifests/role/lvs.pp b/manifests/role/lvs.pp
deleted file mode 100644
index 0829ab5..0000000
--- a/manifests/role/lvs.pp
+++ /dev/null
@@ -1,8 +0,0 @@
-# role/lvs.pp
-
-# TODO: Refactor this somewhere else
-@monitoring::group { 'lvs': description => 'LVS' }
-@monitoring::group { 'lvs_eqiad': description => 'eqiad LVS servers' }
-@monitoring::group { 'lvs_codfw': description => 'codfw LVS servers' }
-@monitoring::group { 'lvs_ulsfo': description => 'ulsfo LVS servers' }
-@monitoring::group { 'lvs_esams': description => 'esams LVS servers' }
diff --git a/manifests/role/maps.pp b/manifests/role/maps.pp
index e05034c..2f167f9 100644
--- a/manifests/role/maps.pp
+++ b/manifests/role/maps.pp
@@ -1,6 +1,3 @@
-@monitoring::group { 'maps_eqiad': description => 'eqiad maps servers' }
-@monitoring::group { 'maps_codfw': description => 'codfw maps servers' }
-
# This role class sets up a maps server with
# the services kartotherian and tilerator
class role::maps {
diff --git a/manifests/role/mediawiki.pp b/manifests/role/mediawiki.pp
index 150a08a..fd12760 100644
--- a/manifests/role/mediawiki.pp
+++ b/manifests/role/mediawiki.pp
@@ -1,15 +1,3 @@
-@monitoring::group { 'appserver_eqiad': description => 'eqiad application
servers' }
-@monitoring::group { 'api_appserver_eqiad': description => 'eqiad API
application servers' }
-@monitoring::group { 'imagescaler_eqiad': description => 'eqiad image
scalers' }
-@monitoring::group { 'jobrunner_eqiad': description => 'eqiad jobrunner
application servers' }
-@monitoring::group { 'videoscaler_eqiad': description => 'eqiad video
scaler' }
-
-@monitoring::group { 'appserver_codfw': description => 'codfw application
servers' }
-@monitoring::group { 'api_appserver_codfw': description => 'codfw API
application servers' }
-@monitoring::group { 'imagescaler_codfw': description => 'codfw image
scalers' }
-@monitoring::group { 'jobrunner_codfw': description => 'codfw jobrunner
application servers' }
-@monitoring::group { 'videoscaler_codfw': description => 'codfw video
scaler' }
-
class role::mediawiki::common {
include ::standard
include ::geoip
diff --git a/manifests/role/memcached.pp b/manifests/role/memcached.pp
index 99c965e..c96a993 100644
--- a/manifests/role/memcached.pp
+++ b/manifests/role/memcached.pp
@@ -1,14 +1,4 @@
# vim: noet
-
-# Virtual resource for monitoring server
-@monitoring::group { 'memcached_eqiad':
- description => 'eqiad memcached',
-}
-
-@monitoring::group { 'memcached_codfw':
- description => 'codfw memcached',
-}
-
class role::memcached {
system::role { 'role::memcached': }
diff --git a/manifests/role/ocg.pp b/manifests/role/ocg.pp
index 4413c3a..8af7e15 100644
--- a/manifests/role/ocg.pp
+++ b/manifests/role/ocg.pp
@@ -1,10 +1,6 @@
# vim: set ts=4 et sw=4:
# role/ocg.pp
# Offline content generator for the MediaWiki collection extension
-
-# Virtual resources for the monitoring server
-@monitoring::group { 'ocg_eqiad': description => 'offline content generator
eqiad' }
-
class role::ocg {
include base::firewall
include standard
diff --git a/manifests/role/openldap.pp b/manifests/role/openldap.pp
index a8c1ddf..e69de29 100644
--- a/manifests/role/openldap.pp
+++ b/manifests/role/openldap.pp
@@ -1,7 +0,0 @@
-# TODO: Move this elsewhere
-@monitoring::group { 'openldap_corp_mirror_eqiad':
- description => 'Corp OIT LDAP Mirror'
-}
-@monitoring::group { 'openldap_corp_mirror_codfw':
- description => 'Corp OIT LDAP Mirror codfw'
-}
diff --git a/manifests/role/parsoid.pp b/manifests/role/parsoid.pp
index 69160fd..fc59fd7 100644
--- a/manifests/role/parsoid.pp
+++ b/manifests/role/parsoid.pp
@@ -1,9 +1,4 @@
# vim: set ts=4 et sw=4:
-
-# TODO: Hiera for this
-@monitoring::group { 'parsoid_eqiad': description => 'eqiad parsoid servers' }
-@monitoring::group { 'parsoid_codfw': description => 'codfw parsoid servers' }
-
class role::parsoid::common {
package { [
'nodejs',
diff --git a/manifests/role/rcstream.pp b/manifests/role/rcstream.pp
index c318945..0103b33 100644
--- a/manifests/role/rcstream.pp
+++ b/manifests/role/rcstream.pp
@@ -1,5 +1,3 @@
-@monitoring::group { 'rcstream_eqiad': description => 'eqiad rcstream' }
-
# == Class: role::rcstream
#
# Provisions a recent changes -> redis -> socket.io -> Nginx setup
diff --git a/manifests/role/redisdb.pp b/manifests/role/redisdb.pp
index 6089270..af7714d 100644
--- a/manifests/role/redisdb.pp
+++ b/manifests/role/redisdb.pp
@@ -2,14 +2,6 @@
# db::redis
# Virtual resource for the monitoring server
-@monitoring::group { 'redis_eqiad':
- description => 'eqiad Redis',
-}
-
-@monitoring::group { 'redis_codfw':
- description => 'codfw Redis',
-}
-
class role::redisdb (
$maxmemory = inline_template('<%= (Float(@memorysize.split[0]) *
0.82).round %>Gb'),
$redis_replication = undef,
diff --git a/manifests/role/restbase.pp b/manifests/role/restbase.pp
index 52e121a..20c4527 100644
--- a/manifests/role/restbase.pp
+++ b/manifests/role/restbase.pp
@@ -1,9 +1,4 @@
# == Class role::restbase
-#
-
-@monitoring::group { 'restbase_eqiad': description => 'Restbase eqiad' }
-@monitoring::group { 'restbase_codfw': description => 'Restbase codfw' }
-
# Config should be pulled from hiera
class role::restbase {
system::role { 'restbase': description => "Restbase ${::realm}" }
diff --git a/manifests/role/sca.pp b/manifests/role/sca.pp
index 2a6afce..3ccf665 100644
--- a/manifests/role/sca.pp
+++ b/manifests/role/sca.pp
@@ -1,6 +1,5 @@
# "Compendium" class for nodes supporting various *oid services
# This class is an intermediate step to better design
-@monitoring::group { 'sca_eqiad': description => 'Service Cluster A servers' }
class role::sca {
include role::apertium
include role::citoid
diff --git a/manifests/role/scb.pp b/manifests/role/scb.pp
index 6e28576..1a49d51 100644
--- a/manifests/role/scb.pp
+++ b/manifests/role/scb.pp
@@ -1,6 +1,5 @@
# "Compendium" class for nodes supporting various *oid services
# This class is an intermediate step to better design
-@monitoring::group { 'scb_eqiad': description => 'Service Cluster B servers' }
class role::scb {
include role::mobileapps
diff --git a/manifests/role/swift.pp b/manifests/role/swift.pp
index 9cab26f..bdd90d6 100644
--- a/manifests/role/swift.pp
+++ b/manifests/role/swift.pp
@@ -1,8 +1,3 @@
-@monitoring::group { 'swift':
- description => 'swift servers',
-}
-
-
class role::swift::stats_reporter {
system::role { 'role::swift::stats_reporter':
description => 'swift statistics reporter',
diff --git a/manifests/role/wdqs.pp b/manifests/role/wdqs.pp
index d1eee26..4ce260a 100644
--- a/manifests/role/wdqs.pp
+++ b/manifests/role/wdqs.pp
@@ -1,6 +1,3 @@
-@monitoring::group{ 'wdqs_eqiad':
- description => 'Wikidata Query Service (eqiad)',
-}
# = Class: role::wdqs
#
# This class sets up Wikidata Query Service
diff --git a/manifests/role/zotero.pp b/manifests/role/zotero.pp
index f7e69f8..38f8cea 100644
--- a/manifests/role/zotero.pp
+++ b/manifests/role/zotero.pp
@@ -4,9 +4,6 @@
# for bibliographic data and related research materials.
# See <https://en.wikipedia.org/wiki/Zotero>.
#
-@monitoring::group { 'zotero_eqiad': description => 'Zotero eqiad' }
-@monitoring::group { 'zotero_codfw': description => 'Zotero codfw' }
-
class role::zotero {
system::role { 'zotero': description => "Zotero ${::realm}" }
diff --git a/manifests/site.pp b/manifests/site.pp
index c3f2b34..6f656c7 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -2,6 +2,7 @@
# site.pp
import 'realm.pp' # These ones first
+import 'monitoring_groups.pp'
import 'misc/*.pp'
import 'network.pp'
import 'role/*.pp'
diff --git a/modules/role/manifests/labs/openstack/nova.pp
b/modules/role/manifests/labs/openstack/nova.pp
index 9ee2799..43b2564 100644
--- a/modules/role/manifests/labs/openstack/nova.pp
+++ b/modules/role/manifests/labs/openstack/nova.pp
@@ -261,7 +261,3 @@
}
}
}
-
-# global icinga hostgroups for virt/labs hosts
-@monitoring::group { 'virt_eqiad': description => 'eqiad virt servers' }
-@monitoring::group { 'virt_codfw': description => 'codfw virt servers' }
--
To view, visit https://gerrit.wikimedia.org/r/255080
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ieb322327e5471c97a5d7707ae25d90972482f61a
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Yuvipanda <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits