From 2e4baccb256d0ed9a67b41b005edac3548972913 Mon Sep 17 00:00:00 2001 From: Timothy Mower Date: Thu, 27 Nov 2014 17:15:30 +0000 Subject: [PATCH 1/2] Upgrade sensu and module Successfully provisioned a monitoring-1 and backup-box-1 with this, after provisioning with master Settings required for latest puppet module - Be explicit about the api - Need to specify a version of the sensu plugin gem - The puppet module changed the default vhost to not include a slash - https://github.com/sensu/sensu-puppet/pull/184 This unfortunately broke our setup, which expected a slash in the vhost. --- Puppetfile | 2 +- Puppetfile.lock | 5 +++-- hieradata/common.yaml | 7 +++---- hieradata/role-monitoring.yaml | 2 ++ modules/performanceplatform/manifests/base.pp | 2 -- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Puppetfile b/Puppetfile index e6d17a7..0e87d17 100644 --- a/Puppetfile +++ b/Puppetfile @@ -17,7 +17,7 @@ mod 'puppetlabs/vcsrepo', '0.1.2' mod 'rodjek/logrotate', '1.1.1' mod 'saz/dnsmasq', '1.0.1' mod 'saz/rsyslog', '2.0.0' -mod 'sensu/sensu', '0.7.7' +mod 'sensu/sensu', '1.3.0' mod 'netmanagers/fail2ban', '1.4.0' mod 'alphagov/account', :git => 'https://github.com/alphagov/puppet-account.git', :ref => 'feature/multiple-ssh-keys' diff --git a/Puppetfile.lock b/Puppetfile.lock index 0697e1c..4e29977 100644 --- a/Puppetfile.lock +++ b/Puppetfile.lock @@ -50,7 +50,8 @@ FORGE rodjek-logrotate (1.1.1) saz-dnsmasq (1.0.1) saz-rsyslog (2.0.0) - sensu-sensu (0.7.7) + sensu-sensu (1.3.0) + maestrodev-wget (>= 1.4.5) puppetlabs-apt (>= 0.0.1) puppetlabs-stdlib (>= 0.0.1) @@ -239,6 +240,6 @@ DEPENDENCIES rodjek-logrotate (= 1.1.1) saz-dnsmasq (= 1.0.1) saz-rsyslog (= 2.0.0) - sensu-sensu (= 0.7.7) + sensu-sensu (= 1.3.0) stankevich-python (>= 0) diff --git a/hieradata/common.yaml b/hieradata/common.yaml index 4968768..4b4c946 100644 --- a/hieradata/common.yaml +++ b/hieradata/common.yaml @@ -147,8 +147,10 @@ rsyslog::client::server: "logging" sensu::rabbitmq_host: 'rabbitmq' sensu::rabbitmq_password: "%{::rabbitmq_sensu_password}" sensu::rabbitmq_port: 5672 +sensu::rabbitmq_vhost: '/sensu' sensu::safe_mode: true -sensu::version: '0.12.1-1' +sensu::version: '0.16.0-1' +sensu::sensu_plugin_version: 'installed' ssh::server::banner: false ssh::server::ciphers: @@ -268,9 +270,6 @@ system_packages: - update-notifier - vim -ruby_packages: - - sensu-plugin - python_packages: - gds-nagios-plugins diff --git a/hieradata/role-monitoring.yaml b/hieradata/role-monitoring.yaml index 86ca6da..3b47099 100644 --- a/hieradata/role-monitoring.yaml +++ b/hieradata/role-monitoring.yaml @@ -72,6 +72,8 @@ sensu::dashboard_user: "%{::basic_auth_username}" sensu::dashboard_password: "%{::basic_auth_password}" sensu::dashboard_port: 8090 sensu::server: true +sensu::api: true +sensu::sensu_plugin_version: 'installed' ufw_rules: allowcarbonfromanywhere: diff --git a/modules/performanceplatform/manifests/base.pp b/modules/performanceplatform/manifests/base.pp index 01ba71c..369eeab 100644 --- a/modules/performanceplatform/manifests/base.pp +++ b/modules/performanceplatform/manifests/base.pp @@ -68,8 +68,6 @@ group => 'gds', } - Package['sensu-plugin'] -> Class['sensu'] - vcsrepo { '/etc/sensu/community-plugins': ensure => present, provider => git, From 3b27922537b2456a88bd96dce43df84cad27ef3c Mon Sep 17 00:00:00 2001 From: Timothy Mower Date: Mon, 1 Dec 2014 17:25:03 +0000 Subject: [PATCH 2/2] Add uchiwa puppet module and config Uchiwa replaces the sensu dashboard Uchiwa defaults to using port 3000, so set the nginx alerts upstream to use that --- Puppetfile | 1 + Puppetfile.lock | 6 ++++++ hieradata/role-monitoring.yaml | 5 ++++- modules/performanceplatform/manifests/monitoring/sensu.pp | 3 +++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/Puppetfile b/Puppetfile index 0e87d17..d0576e8 100644 --- a/Puppetfile +++ b/Puppetfile @@ -19,6 +19,7 @@ mod 'saz/dnsmasq', '1.0.1' mod 'saz/rsyslog', '2.0.0' mod 'sensu/sensu', '1.3.0' mod 'netmanagers/fail2ban', '1.4.0' +mod 'yelp/uchiwa', '0.2.7' mod 'alphagov/account', :git => 'https://github.com/alphagov/puppet-account.git', :ref => 'feature/multiple-ssh-keys' mod 'gini/archive', :git => 'https://github.com/gini/puppet-archive.git', diff --git a/Puppetfile.lock b/Puppetfile.lock index 4e29977..5b66d21 100644 --- a/Puppetfile.lock +++ b/Puppetfile.lock @@ -47,6 +47,7 @@ FORGE puppetlabs-stdlib (< 5.0.0, >= 3.2.0) puppetlabs-stdlib (4.1.0) puppetlabs-vcsrepo (0.1.2) + richardc-datacat (0.6.1) rodjek-logrotate (1.1.1) saz-dnsmasq (1.0.1) saz-rsyslog (2.0.0) @@ -54,6 +55,10 @@ FORGE maestrodev-wget (>= 1.4.5) puppetlabs-apt (>= 0.0.1) puppetlabs-stdlib (>= 0.0.1) + yelp-uchiwa (0.2.7) + puppetlabs-apt (>= 0) + puppetlabs-stdlib (>= 0) + richardc-datacat (>= 0) GIT remote: https://github.com/alphagov/puppet-account.git @@ -242,4 +247,5 @@ DEPENDENCIES saz-rsyslog (= 2.0.0) sensu-sensu (= 1.3.0) stankevich-python (>= 0) + yelp-uchiwa (= 0.2.7) diff --git a/hieradata/role-monitoring.yaml b/hieradata/role-monitoring.yaml index 3b47099..2365046 100644 --- a/hieradata/role-monitoring.yaml +++ b/hieradata/role-monitoring.yaml @@ -14,6 +14,7 @@ classes: - 'performanceplatform::checks::smokey_tests' - 'performanceplatform::checks::ssl' - 'performanceplatform::checks::elasticsearch_log_errors' + - 'uchiwa' nginx::confd_purge: true nginx::vhost_purge: true @@ -119,7 +120,7 @@ vhost_proxies: servername: "%{::alerts_vhost}" ssl: false upstream_server: 'localhost' - upstream_port: 8090 + upstream_port: 3000 sensu_check: false lumberjack_instances: @@ -129,3 +130,5 @@ lumberjack_instances: ruby_packages: - redphone - redis + +uchiwa::install_repo: false diff --git a/modules/performanceplatform/manifests/monitoring/sensu.pp b/modules/performanceplatform/manifests/monitoring/sensu.pp index 6f115b5..4af63a8 100644 --- a/modules/performanceplatform/manifests/monitoring/sensu.pp +++ b/modules/performanceplatform/manifests/monitoring/sensu.pp @@ -74,4 +74,7 @@ }, require => File[$handler_file] } + uchiwa::api { 'sensu': + host => 'localhost', + } }