Awesome
Description
Monitor is a cookbook for monitoring services, using Sensu, a
monitoring framework. The default recipe installs & configures the
Sensu client (monitoring agent), as well as common service check
dependencies. The master recipe installs & configures the Sensu server,
API, Uchiwa (dashboard), & their dependencies (eg. RabbitMQ & Redis).
The remaining recipes are intended to put monitoring checks in place
in order to monitor specific services (eg. recipe[monitor::redis]
).
Learn more about Sensu Here.
THIS COOKBOOK SERVES AS AN EXAMPLE!!!
There are many ways to deploy/use Sensu and its dependencies, this "wrapper" cookbook is opinionated, you may not agree with its approach and choices. If this cookbook can serve as the base for your monitoring cookbook, fork it :-)
Requirements
Cookbooks:
Attributes
node["monitor"]["master_address"]
- Bypass the chef node search and
explicitly set the address to reach the master server.
node["monitor"]["environment_aware_search"]
- Defaults to false.
If true, will limit search to the node's chef_environment.
node["monitor"]["use_local_ipv4"]
- Defaults to false. If true,
use cloud local_ipv4 when available instead of public_ipv4.
node["monitor"]["sensu_plugin_version"]
- Sensu Plugin library
version.
node["monitor"]["additional_client_attributes"]
- Additional client
attributes to be passed to the sensu_client LWRP.
node["monitor"]["default_handlers"]
- Default event handlers.
node["monitor"]["metric_handlers"]
- Metric event handlers.
Usage
Example: To monitor the Redis service running on a Chef node, include "recipe[monitor::redis]" in its run list.