Icinga Module - Graphite
Find a file
2017-09-20 14:27:50 +02:00
.github Add GitHub issue template 2017-06-09 14:17:13 +02:00
application Merge branch 'bugfix/load-graphs-img-s-synchronously-48' into next 2017-09-20 14:27:50 +02:00
library/Graphite Cache filesystem read operations' results 2017-09-20 11:37:47 +02:00
public Load graphs' <img/>s synchronously 2017-09-20 11:37:47 +02:00
sample-config templates: restructured, modified README 2016-02-16 16:54:40 +01:00
.gitignore Add .gitignore 2016-10-19 17:06:04 +02:00
configuration.php Drop /show/overview 2017-09-20 11:38:07 +02:00
COPYING Add license 2016-05-11 16:40:04 +02:00
README.md Fix paths in README.md 2016-02-17 01:00:32 +01:00
run.php Remove obsolete monitoring hooks 2017-09-01 18:08:33 +02:00

Graphite module for Icinga Web 2

General Information

This module integrates an existing Graphite installation in your Icinga Web 2 web frontend.

Features

  • Global overview underneath History / Graphite menu section
  • Detail view actions: render graphs for hosts and services

Requirements

  • Icinga Web 2 v2.1.0
  • Icinga 2 v2.4.0 using the new Graphite tree in (#9461).
  • Graphite and Graphite Web

Prepare Icinga2

Enable the graphite feature:

icinga2 feature enable graphite

Adjust it's configuration in /etc/icinga2/features-enabled/graphite.conf:

library "perfdata"

object GraphiteWriter "graphite" {
  host = "127.0.0.1"
  port = 2003
  enable_send_thresholds = true
}

And then restart Icinga2. Enabling thresholds is not a hard requirement. However, some templates look better when they are able to render a max values or similar.

Installation

Just extract/clone this module to a graphite subfolder in your Icinga Web 2 module path. Enable the graphite module in your Icinga Web 2 frontend (Configuration -> Modules -> graphite -> enable) and it should work out of the box.

NB: It is best practice to install 3rd party modules into a distinct module folder for example /usr/share/icingaweb2/modules. In case you don't know where this might be please check the module path in your Icinga Web 2 configuration.

Configuration

Copy the sample configuration to /etc/icingaweb2/modules like so:

mkdir -p /etc/icingaweb2/modules/graphite
cp -rv sample-config/icinga2/* /etc/icingaweb2/modules/graphite

Change permissions:

chown -R root:icingaweb2 /etc/icingaweb2/modules/graphite
chmod -R 2755 /etc/icingaweb2/modules/graphite

Edit /etc/icingaweb2/modules/graphite/config.ini and set web\_url to the Graphite web host.

[graphite]
web_url = http://my.graphite.web

You don't need any configuration in your Icinga 2 installation (e.g. additional custom vars).

Testdrive

Icinga 2 and Graphite feature enabled:

icinga2 feature enable graphite

Graphite and Graphite Web running, e.g. as docker instance:

sudo docker run -d --name graphite --restart=always -p 9090:80 -p 2003:2003 hopsoft/graphite-statsd

Icinga Web 2 with Graphite module enabled

[graphite]
web_url = http://localhost:9090