Meine kleine HowTo Ecke
Meine kleine HowTo Ecke

Icingaweb2 Graphite Modul

Inhalte

Eine Möglichkeit sich die historischen Performancedaten eines Checks anzuschauen ist das Graphite Modul. (benötigt icingaweb2 2.5 oder neuer)

Es bietet die Möglichkeit die Performancedaten in einer Datenbank zu speichern und anhand der Daten Grafen zu generieren die den Verlauf eines Checks darstellen.

Diese kurze Anleitung beschreibt die Installation unter Debian 9 (Stretch) sowie Ubuntu 16.04 (Xenial Xerus).

Damit das Graphite Modul funktioniert benötigen wir mehrere zusätzliche Softwarepakete wie z.B. den graphite Server (graphite-carbon) und das zugehörige Webinterface (graphite-web).

Vorbereitung

Debian 9

Damit das letztere unter Debian 9 funktioniert müssen wir auf alte Debian Jessie Repositories zurückgreifen, im Strech Repo gibt es noch keine passende Version.

Folgende Zeile müssen wir unter /etc/apt/sources.list hinzufügen:

deb http://httpredir.debian.org/debian jessie main

Gefolgt von einem Update der Paketquellen und dem Installieren der benötigen Pakete:

sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autoremove
sudo apt-get install graphite-web graphite-carbon libapache2-mod-wsgi python-pip
sudo pip install "django==1.4"

Ubuntu 16.04

sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autoremove
sudo apt-get install graphite-web graphite-carbon libapache2-mod-wsgi

Konfiguration

Nachdem wir alles Installiert haben passen wir noch die graphite Settings an.

Folgende Settings sollten unbedingt angepasst werden: SECRET_KEY, TIME_ZONE und ALLOWED_HOSTS.

sudo nano /etc/graphite/local_settings.py

in der Datei /etc/default/graphite-carbon aktivieren wir noch den Cache.

sudo nano /etc/default/graphite-carbon
# Change to true, to enable carbon-cache on boot
CARBON_CACHE_ENABLED=true

Nachdem das erledigt ist können wir voreingestellte Datenbank in Betrieb nehmen.

sudo graphite-manage syncdb 
sudo chown _graphite. /var/lib/graphite/graphite.db

Nun passen wir den Apache an, dass er auch auf Port 8000 lauschen soll und das Graphite-Web auf jeden Port erreichbar ist.

echo Listen 8000 >> /etc/apache2/ports.conf
cp /usr/share/graphite-web/apache2-graphite.conf /etc/apache2/sites-available/graphite.conf
sed -i.org -e "/VirtualHost/s/:80/:8000/" /etc/apache2/sites-available/graphite.conf
a2ensite graphite
service apache2 restart

Nnun sollte das Graphite Webinterface unter dem Port 8000 erreichbar sein.

Damit wäre die Vorbereitung abegschlossen und wir können uns dem eigentlichen Modul widmen. zum herunterladen brauchen wir Git.

sudo apt-get install git
cd /usr/share/icingaweb2/modules/
git clone https://github.com/Icinga/icingaweb2-module-graphite.git graphite
icinga2 feature enable graphite

Das Graphite Feature muss noch konfiguriert werden.

nano /etc/icinga2/features-enabled/graphite.conf
library "perfdata"

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

Und natürlich den Icinga Server neustarten:

sudo service icinga2 restart

Anpassung des Icingaweb2 Moduls

Die nächsten Schritte werden im Icingaweb gemacht.

Nachdem das Modul aktiviert wurde kann im Reiter Backend die Graphite Web URL eingetragen werden:

http://<ICINGA-ADRESSE>:8000

Im Anschluss muss sichergestellt sein, dass in die Icinga_IDO Ressource der Zeichensatz auf latin1 steht. Dazu im Icingaweb unter Konfiguration -> Anwendung- > Ressourcen -> icinga_ido-> Zeichensatz auf „latin1“ setzen und speichern.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

7 Gedanken zu “Icingaweb2 Graphite Modul”