The key to increase the popularity of monitoring is to facilitate the access and to adapt it to current design conceptions. This talk will introduce an approach in OMD to achieve the latter by replacing the classical RRD graphs of performance data with modern ones. For that Grafana in combination with InfluxDB has been integrated into OMD. In particular every effort has been made to keep the former strong-points of similar systems and to rectify potential weak-points in order to ensure especially the practicability.
3. Seite
Überblick
• Was war/ist das Ziel?
• Aktueller Standard PNP4Nagios
• Eingesetzte Programme
– InfluxDB
– Grafana
• Wie kommt man zu einem Graph?
– Backend
– Frontend
• Produktiv-Einsatz
• Ziele erfüllt?
• Was fehlt noch?
16.11.2015 Philip Griesbacher - www.consol.de3
4. Seite
Was war/ist das Ziel?
• Zeitgemäßes „look and feel“
• Alte Stärken beibehalten
• Um neue Funktionen erweitern
• Produktiv einsetzbar
16.11.2015 Philip Griesbacher - www.consol.de4
6. Seite
Gründe für den Wechsel
• Festes Zeitraster
– Informationsverlust durch Normalisierung der Werte
– Feinere Rasterung nur für Neu-Daten
• Primäre Verwendung von RRD-Daten: Erzeugung von RRD-Graphen
– Andere Verwendungszwecke eingeschränkt / Nur über Umwege
16.11.2015 Philip Griesbacher - www.consol.de6
7. Seite
Eingesetzte Programme – InfluxDB
• “An open-source distributed time series database with no external
dependencies (https://influxdb.com/ 06.11.2015).”
16.11.2015 Philip Griesbacher - www.consol.de7
[2]
8. Seite
Eingesetzte Programme – Grafana
• “An open source, feature rich metrics dashboard and graph editor for
Graphite, InfluxDB & OpenTSDB (https://github.com/grafana/grafana 06.11.2015).”
16.11.2015 Philip Griesbacher - www.consol.de8
[3]
9. Seite
Wie kommt man zu einem Graph?
16.11.2015 Philip Griesbacher - www.consol.de9
10. Seite
Backend – Nagflux
• Verbindet „nagiosartige“ Systeme mit InfluxDB
• Schnittstellen:
– Perfdata-Verzeichnis
– Livestatus zur Anreicherung der Performancedaten
– Downtimes
– Notifications
– …
– Daten von Drittsystemen
• Programmiersprache: Go (1.5)
• https://github.com/Griesbacher/nagflux
16.11.2015 Philip Griesbacher - www.consol.de10
15. Seite
Wie sieht ein Template aus?
• Regelsatz:
host = *
service = *
command = *
perfLabel = load1, load5, load15
• Dashboard
– JSON-Objekt
– PHP Code, der JSON-Objekt erzeugt
16.11.2015 Philip Griesbacher - www.consol.de15
16. Seite
Live Demonstration
• Eine eingeschränkte Demo ist auf der thruk.org Demoseite zu sehen
– >>Link<<
• Inhalt der Präsentation
– Erstellung eines Grafana-Dashboards
– Erstellung eines „simple Template“ mithilfe des Dashboards
16.11.2015 Philip Griesbacher - www.consol.de16
18. Seite
Live Demonstration
16.11.2015 Philip Griesbacher - www.consol.de18
• Messwerte, die während einer Downtime entstehen, werden ausgegraut.
• Ebenso wurden Annotations für Notifications, Comments, Acknowlegements und
Downtimes eingefügt.
19. Seite
Produktiv-Einsatz
• Begin der Aufzeichnung: 15.07.2015
• 38 Hosts
• 242 Services
– → Gesamt: 280 Checks
• InfluxDB(0.9.4): 4,3 GB
– → ~15,73 MB pro Check in 4 Monaten
• → ~3,93 MB pro Check pro Monat
• RRD: 1,1 GB
16.11.2015 Philip Griesbacher - www.consol.de19