- Overview
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with icinga
- Usage - Configuration options and additional functionality
- Reference - An under-the-hood peek at what the module is doing and how
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
This module install an Icinga 2 instance with the new Incinga 2 web interface.
This module install an Icinga 2 instance with the new Incinga 2 web interface. It let you define resources that the instance should monitor.
The usage of stored procedures is optional. The reason is quite simple, in a perfect world, all resources in a network are managed with Puppet. In a real world, there are a lot of resources like switches, routers, printers that can't be managed with Puppet and other resources that aren't managed by Puppet because of whatever reasons. So you have to define monitoring resources anyway beside of stored procedures. Mixing manually defined resources and resources from stored procedures is not really predictable and therefor error-prone. So stored procedures are disabled by default and you should only acitvate them if you know how this can influence the stability of you Icinga 2 instance.
The icinga module will install the following packages and configure them as needed by the module:
- MySQL
- PHP
- Apache
- Icinga2
- Icingaweb2
You need to activate the Icinga repository before you can setup the Icinga instance. If you use a rpm based system from the RedHat family you can use my yum module:
class { "::yum": repo_icinga => true }The module isn't very complex right now, see the usage section for instructions.
The module can be used with server or client installation in mind. What kind of installation is performed can be controlled with parameters.
Simply call the module with parameter type set to client:
class { "::icinga": type => "client" }Simply call the module with parameter type set to server:
class { "::icinga": type => "server" }Here is the list of parameters used by this module.
Specify if client or server components should be installed Default value is client
Specify one or more plugins that should be installed Default value is none (not implemented yet)
Specify if exported resources should be used Default value is false (not implemented yet)
Specify the Icinga servers that are allowed to access monitoring client Default value is 127.0.0.1
This module has been built on and tested against Puppet 4.2 and higher.
The module has been tested on:
- RedHat Enterprise Linux 7
- Scientific Linux 7
- CentOS Linux 7
Testing on other platforms has been light and cannot be guaranteed.
The documentation isn't feature complete yet and not all functions are documented.
If you like to add or improve this module, feel free to fork the module and send me a merge request with the modification.