Forge Home


Module to install the Open Monitoring Distribution (Check_MK / Nagios)


299,462 latest version

3.1 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.0.6 (latest)
  • 0.0.5
  • 0.0.3
  • 0.0.2
  • 0.0.1
released Aug 28th 2015
This version is compatible with:
  • Puppet >= 3.6.0 <4.0.0
  • , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'fnerdwq-omd', '0.0.6'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add fnerdwq-omd
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install fnerdwq-omd --version 0.0.6

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



fnerdwq/omd — version 0.0.6 Aug 28th 2015

#Puppet omd Module

Build Status

####Table of Contents

  1. Overview
  2. Module Description
  3. Setup
  4. Usage
  5. Limitations
  6. TODOs


This module installs and configures the Open Monitoring Distirbution on a server. It also installs the corresponding Check_MK agent on client systems.

In the installation (multiple) OMD site(s) can be setup and the client nodes can be exported as monitored hosts. The hosts are gathered in a WATO manageable way.

##Module Description

See Overview for now.


###What omd affects

  • If enabled, on the OMD server the repository from is installed.
  • Webserver configuration: In case you are using the puppetlabs-apache module to purge the non-managed configuration, be sure to include the OMD configuration!
  • As default the xinetd configuration on the clients is adjusted to allow acces to the check_mk_agent.

###Setup Requirements

For omd::client a specific version of the check_mk_agent must be given, since no generic Packages is downloadable. See the download page of the check_mk_agent. If you add the check_mk_agent package a private repository, you can set this to latest.

###Beginning with omd

Installing the server with a default site:

include omd::server

Installing a client with host export to the default site - into the folder collected_nodes

class { 'omd::client':
  check_mk_version => '1.2.4p5-1',


Installing server and client see Beginning with omd.

To create additional sites use

omd::site { 'newsite':
  config_hosts_folders => ['important_nodes', 'test_nodes']

As default Omd::Site is collecting hosts for all the configured folders!

To export a client as additional host use

omd::host { 'newsite':
  folder => 'important_nodes',
  tags   => ['production', 'important'],

This will be collected into the important_nodes folder in the newsite site. It receives two extra tags. This host could be exported to an additional site in an arbitray folder but not to the same site again.


For cluster services the nodes in a folder can be put into a cluster - with extra tags specified:

omd::site { 'newsite':
  config_hosts_folders => {
    'important_nodes' => {},
    'clustered_nodes' => {
      'cluster' => true,
      'cluster_tags' => [ 'hacluster', 'web' ],

A host has to be defined in the following way, to be actually put into the cluster

omd::host { 'newsite':
  folder         => 'clustered_nodes',
  tags           => ['production', 'important'],
  cluster_member => true,

###Remark The best way to create sites and hosts is via the corresponding parameters in omd::server and omd::client!

class { 'omd::server':
  sites => {
    'mysite'    => {},
    'othersite' => {
      'config_hosts_folders' => ['otherfolder'],

class { 'omd::client':
  check_mk_version => '1.2.4p5-1',
  hosts            => {
    'mysite'    => {},
    'othersite' => { 'folder' => 'otherfolder' }


Explicitly tested on:

  • Debian 7
  • CentOS/RHEL 6

Other Debian and RedHat like systems may/should work.


  • ...Suggestions?...

Please open an issue on github if you have any suggestions.