diff options
author | Martin Mágr <mmagr@redhat.com> | 2016-05-23 13:15:42 +0200 |
---|---|---|
committer | Martin Mágr <mmagr@redhat.com> | 2016-08-08 12:16:51 +0000 |
commit | 97e4aa5f761172477e0bccdcc762780ade71bf28 (patch) | |
tree | ddbc2f894d12ea359b22a5e6278e8efd5d924d3b | |
parent | c4360efdc89904f390f6acca30712b025a6c05df (diff) |
New composable service: Sensu
Depends-On: Ic095cd1248cc2ffcef363893b20ff57f7befd6fc
Change-Id: Ia09d14fa9db07595d2e904bd9918e5645ea590c7
-rw-r--r-- | manifests/profile/base/monitoring/rabbitmq.pp | 54 | ||||
-rw-r--r-- | manifests/profile/base/monitoring/sensu.pp | 36 | ||||
-rw-r--r-- | manifests/profile/base/monitoring/uchiwa.pp | 32 | ||||
-rw-r--r-- | metadata.json | 4 |
4 files changed, 125 insertions, 1 deletions
diff --git a/manifests/profile/base/monitoring/rabbitmq.pp b/manifests/profile/base/monitoring/rabbitmq.pp new file mode 100644 index 0000000..4c5ad41 --- /dev/null +++ b/manifests/profile/base/monitoring/rabbitmq.pp @@ -0,0 +1,54 @@ +# Copyright 2016 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# == Class: tripleo::profile::base::sensu::rabbitmq +# +# RabbitMQ configuration for Sensu stack for TripleO +# +# === Parameters +# +# [*vhost*] +# (Optional) String. RabbitMQ vhost to be used by Sensu +# Defaults to '/sensu' +# +# [*user*] +# (Optional) String. Username to connect to RabbitMQ server +# Defaults to hiera('rabbit_username', 'sensu') +# +# [*password*] +# (Optional) String. Password to connect to RabbitMQ server +# Defaults to hiera('rabbit_password', undef) +# +class tripleo::profile::base::monitoring::rabbitmq ( + $vhost = hiera('monitoring_rabbitmq_vhost', '/sensu'), + $user = hiera('monitoring_rabbitmq_username', 'sensu'), + $password = hiera('monitoring_rabbitmq_password', undef), +) { + rabbitmq_vhost { 'sensu-rabbit-vhost': + ensure => present, + name => $vhost + } + + rabbitmq_user { 'sensu-rabbit-user': + name => $user, + password => $password, + tags => ['monitoring'] + } + + rabbitmq_user_permissions { "${user}@${vhost}": + configure_permission => '.*', + read_permission => '.*', + write_permission => '.*', + } +} diff --git a/manifests/profile/base/monitoring/sensu.pp b/manifests/profile/base/monitoring/sensu.pp new file mode 100644 index 0000000..af09059 --- /dev/null +++ b/manifests/profile/base/monitoring/sensu.pp @@ -0,0 +1,36 @@ +# Copyright 2016 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# == Class: tripleo::profile::base::monitoring::sensu +# +# Sensu configuration for TripleO +# +# === Parameters +# +# [*step*] +# (Optional) String. The current step of the deployment +# Defaults to hiera('step') +# +class tripleo::profile::base::monitoring::sensu ( + $step = hiera('step', undef), +) { + + if $step == undef or $step >= 3 { + include ::sensu + + package { 'osops-tools-monitoring-oschecks': + ensure => 'present' + } + } +} diff --git a/manifests/profile/base/monitoring/uchiwa.pp b/manifests/profile/base/monitoring/uchiwa.pp new file mode 100644 index 0000000..7c61f3e --- /dev/null +++ b/manifests/profile/base/monitoring/uchiwa.pp @@ -0,0 +1,32 @@ +# Copyright 2016 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# == Class: tripleo::profile::base::monitoring::uchiwa +# +# Monitoring dashboards for TripleO +# +# === Parameters +# +# [*step*] +# (Optional) String. The current step of the deployment +# Defaults to hiera('step') +# +class tripleo::profile::base::monitoring::uchiwa ( + $step = hiera('step', undef), +) { + + if $step == undef or $step >= 3 { + include ::uchiwa + } +} diff --git a/metadata.json b/metadata.json index 457f86e..8d38b3f 100644 --- a/metadata.json +++ b/metadata.json @@ -23,6 +23,8 @@ } ], "dependencies": [ - { "name": "puppetlabs/stdlib", "version_requirement": ">= 3.2.0 < 5.0.0" } + { "name": "puppetlabs/stdlib", "version_requirement": ">= 3.2.0 < 5.0.0" }, + { "name": "sensu/sensu" }, + { "name": "yelp/uchiwa" } ] } |