Module for managing icinga infrastructure monitoring




8,548 latest version

2.1 quality score

Version information

  • 1.0.0 (latest)
released Jul 3rd 2019

Start using this module


datacentred/icinga — version 1.0.0 Jul 3rd 2019


Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Usage - Configuration options and additional functionality
  4. Limitations - OS compatibility, etc.
  5. Testing - Guide for contributing to the module


This module provides a basic frame work for rolling out Icinga monitoring for your network.

Module Description

This class as it stands creates a standalone monolithic install of the Icinga monitoring daemon, along with a MySQL backed IDO2DB and the Icinga Web front end. It also provides wrappers around the puppet nagios types which work around known deficiencies.


Server Installation

The base installation is simply done via

include icinga::server

It can be configured via puppet data bindings

icinga::server::allow_empty_hostgroup_assignment: 1
icinga::server::use_timezone: 'Europe/London'

Or explicitly

class { 'icinga::server':
  allow_empty_hostgroup_assignment => 1,
  use_timezone                     => 'Europe/London',

You can then define resources to populate the configuration files

icinga::timeperiod { 'timeperiod_24x7':
  description => '24 hours a day, 7 days a week',
  sunday      => '00:00-24:00',
  monday      => '00:00-24:00',
  tuesday     => '00:00-24:00',
  wednesday   => '00:00-24:00',
  thusday     => '00:00-24:00',
  friday      => '00:00-24:00',
  saturday    => '00:00-24:00',

Client Installation

The basic nagios plugins are installed via

include icinga::client

Hosts can then be defined as such, and will be collected on the server

@@icinga::host { $::hostname:
  ensure          => present,
  alias           => $::fqdn,
  address         => $::ipaddress,
  use             => 'dc_host_generic',
  hostgroups      => template('dc_icinga/hostgroups.erb'),
  icon_image      => 'base/ubuntu.png',
  icon_image_alt  => 'Ubuntu 14.04 LTS (trusty)',
  notes           => 'Ubuntu 14.04 LTS servers',
  statusmap_image => 'base/ubuntu.gd2',
  vrml_image      => 'ubuntu.png',

Please refer to my blog post on dynamically creating hostgroups if the above makes little sense


This class has been tested on Ubuntu 14.04 LTS only.


No testing is provided.