Upcoming Changes to Nagios Cookbook

Ohai Chefs,

TL;DR - We’re planning to release version 4.0 of the Opscode nagios cookbook soon. Please see “testing” below for information on testing the changes.

Notable Changes

See “Tickets” below for links to the tickets that are pending review and release.

Helper library

There’s a new helper library to simplify the various repetitive data bag searches and rescues that were done in the server recipe.

This is NagiosDataBags, and looks like this in the recipe:

nagios_bags = NagiosDataBags.new
services = nagios_bags.get('nagios_services')

The argument to the #get method is the name of the data bag.

Simplified services

The only check enabled by default is “check-nagios”. This allows users to define the checks they want in data bags. The README describes the requirements for each of the data bags.

Data bag driven

The cookbook already leveraged data bags fairly heavily, so more of the hardcoded services and other configuration has been refactored out of the recipes and templates and into data bags, with simpler logic in the template to parse the data and write the configuration.

Incompatibilities

The main incompatibility and breaking change is that the default services that are monitored by Nagios is reduced to only the “check-nagios” service. This means that existing installations will need to start converting checks over to the new data bag entries.

Testing

If you’d like to test the new changes, please use this branch:

The version is 3.1.1 so it is different from the currently released version. If you’re using environments on your Chef Server, we recommend setting a version constraint in environments where you don’t want the development version:

cookbook "nagios", "=< 3.1.0"

Tickets

Here’s the tickets that are pending release.

http://tickets.opscode.com/secure/IssueNavigator.jspa?reset=true&jqlQuery=project+%3D+COOK+AND+component+%3D+nagios+AND+status+%3D+"Fix+Committed"+ORDER+BY+priority+DESC&mode=hide

These are the tickets that are pending review:

http://tickets.opscode.com/secure/IssueNavigator.jspa?reset=true&jqlQuery=project+%3D+COOK+AND+component+%3D+nagios+AND+status+%3D+"Fix+Provided"+ORDER+BY+priority+DESC&mode=hide


Joshua Timberman
Technical Community Manager, Opscode, Inc
IRC, Skype, Twitter, Github: jtimberman