cookbook 'sensu', '= 0.5.6'
sensu
(66) Versions
0.5.6
-
-
6.0.0
-
5.4.0
-
5.3.0
-
5.2.0
-
5.1.2
-
5.1.1
-
5.1.0
-
5.0.0
-
4.4.0
-
4.3.1
-
4.3.0
-
4.2.1
-
4.2.0
-
4.1.0
-
4.0.6
-
4.0.5
-
4.0.4
-
4.0.3
-
4.0.2
-
4.0.0
-
3.2.0
-
3.1.2
-
3.1.0
-
3.0.0
-
2.12.0
-
2.11.0
-
2.10.0
-
2.9.0
-
2.8.0
-
2.7.0
-
2.6.0
-
2.5.0
-
2.4.0
-
2.3.0
-
2.2.0
-
2.1.0
-
2.0.0
-
1.0.0
-
0.8.0
-
0.7.1
-
0.7.0
-
0.6.2
-
0.6.1
-
0.6.0
-
0.5.6
-
0.5.5
-
0.5.4
-
0.5.3
-
0.5.2
-
0.5.0
-
0.4.0
-
0.3.1
-
0.3.0
-
0.2.0
-
0.1.6
-
0.1.5
-
0.1.4
-
0.1.3
-
0.1.2
-
0.1.1
-
0.0.9
-
0.0.8
-
0.0.7
-
0.0.6
-
0.0.3
-
0.0.1
Follow71
- 6.0.0
- 5.4.0
- 5.3.0
- 5.2.0
- 5.1.2
- 5.1.1
- 5.1.0
- 5.0.0
- 4.4.0
- 4.3.1
- 4.3.0
- 4.2.1
- 4.2.0
- 4.1.0
- 4.0.6
- 4.0.5
- 4.0.4
- 4.0.3
- 4.0.2
- 4.0.0
- 3.2.0
- 3.1.2
- 3.1.0
- 3.0.0
- 2.12.0
- 2.11.0
- 2.10.0
- 2.9.0
- 2.8.0
- 2.7.0
- 2.6.0
- 2.5.0
- 2.4.0
- 2.3.0
- 2.2.0
- 2.1.0
- 2.0.0
- 1.0.0
- 0.8.0
- 0.7.1
- 0.7.0
- 0.6.2
- 0.6.1
- 0.6.0
- 0.5.6
- 0.5.5
- 0.5.4
- 0.5.3
- 0.5.2
- 0.5.0
- 0.4.0
- 0.3.1
- 0.3.0
- 0.2.0
- 0.1.6
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.0.9
- 0.0.8
- 0.0.7
- 0.0.6
- 0.0.3
- 0.0.1
Installs/Configures Sensu
cookbook 'sensu', '= 0.5.6', :supermarket
knife supermarket install sensu
knife supermarket download sensu
DESCRIPTION
Provides LWRP's and service recipes to install and configure
Sensu, a monitoring framework.
This cookbook provides the building blocks for creating a monitoring
cookbook specific to your environment (wrapper). Without such a
wrapper, no Sensu configuration files will be created for your nodes.
An example wrapper cookbook can be found
HERE.
How to Write Reusable Chef Cookbooks
TESTING
This cookbook comes with a Gemfile, Cheffile, and a Vagrantfile for
testing and evaluating Sensu.
cd examples
gem install bundler
bundle install
librarian-chef install
vagrant up
vagrant ssh
COOKBOOK DEPENDENCIES
REQUIREMENTS
SSL configuration
Running Sensu with SSL is recommended, this cookbook uses a data bag
sensu
, with an item ssl
, containing the SSL certificates required.
This cookbook comes with a tool to generate the certificates and data
bag item. If the integrity of the certificates is ever compromised,
you must regenerate and redeploy them.
cd examples/ssl
./ssl_certs.sh generate
knife data bag create sensu
knife data bag from file sensu ssl.json
./ssl_certs.sh clean
RECIPES
sensu::default
Installs Sensu and creates a base configuration file, intended to be
extended. This recipe must be included before any of the Sensu LWRP's
can be used. This recipe does not enable or start any services.
sensu::rabbitmq
Installs and configures RabbitMQ for Sensu, from configuring SSL to
creating a vhost and credentials. This recipe relies heavily on the
community RabbitMQ cookbook LWRP's.
sensu::redis
Installs and configures Redis for Sensu. This recipe uses the
RedisIO cookbook and installs Redis from source.
sensu::server_service
Enables and starts the Sensu server.
sensu::client_service
Enables and starts the Sensu client.
sensu::api_service
Enables and starts the Sensu API.
sensu::dashboard_service
Enables and starts the Sensu dashboard.
ATTRIBUTES
Installation
node.sensu.version
- Sensu build to install.
node.sensu.use_unstable_repo
- If the build resides on the
"unstable" repository.
node.sensu.directory
- Sensu configuration directory.
node.sensu.log_directory
- Sensu log directory.
node.sensu.use_ssl
- If Sensu and RabbitMQ are to use SSL.
node.sensu.use_embedded_ruby
- If Sensu Ruby handlers and plugins
are to use the embedded Ruby in the monolithic package.
RabbitMQ
node.sensu.rabbitmq.host
- RabbitMQ host.
node.sensu.rabbitmq.port
- RabbitMQ port, usually for SSL.
node.sensu.rabbitmq.ssl
- RabbitMQ SSL configuration, DO NOT EDIT THIS.
node.sensu.rabbitmq.vhost
- RabbitMQ vhost for Sensu.
node.sensu.rabbitmq.user
- RabbitMQ user for Sensu.
node.sensu.rabbitmq.password
- RabbitMQ password for Sensu.
Redis
node.sensu.redis.host
- Redis host.
node.sensu.redis.port
- Redis port.
Sensu API
node.sensu.api.host
- Sensu API host, for other services to reach it.
node.sensu.api.bind
- Sensu API bind address.
node.sensu.api.port
- Sensu API port.
Sensu Dashboard
node.sensu.dashboard.bind
- Sensu Dashboard bind address.
node.sensu.dashboard.port
- Sensu Dashboard port.
node.sensu.dashboard.user
- Sensu basic authentication username.
node.sensu.dashboard.password
- Sensu basic authentication password.
LWRP'S
Define a client
sensu_client node.name do address node.ipaddress subscriptions node.roles + ["all"] additional(:cluster => node.cluster) end
Define a handler
sensu_handler "pagerduty" do type "pipe" command "pagerduty.rb" severities ["ok", "critical"] end
Define a check
sensu_check "redis_process" do command "check-procs.rb -p redis-server -C 1" handlers ["default"] subscribers ["redis"] interval 30 additional(:notification => "Redis is not running", :occurrences => 5) end
Define a filter
sensu_filter "environment" do attributes(:client => {:environment => "development"}) negate true end
Define a mutator
sensu_mutator "opentsdb" do command "opentsdb.rb" end
Define a custom configuration snippet
sensu_snippet "irc" do content(:uri => "irc://sensu:password@irc.freenode.net:6667#channel") end
SUPPORT
Please visit #sensu on irc.freenode.net and we will be more than happy
to help.
Dependent cookbooks
apt >= 0.0.0 |
yum >= 0.0.0 |
windows >= 1.8.8 |
rabbitmq >= 2.0.0 |
redisio >= 1.7.0 |