Upload
philip-griesbacher
View
286
Download
3
Embed Size (px)
Citation preview
Performancedaten Visualisierung
mit Grafana / InfluxDB
Philip Griesbacher
Kiel, 07.09.2016
Workshop
2016
Seite 07.09.2016 Philip Griesbacher - www.consol.de2
Seite
Überblick
• Aktueller Standard PNP4Nagios
• Was war/ist das Ziel?
• Eingesetzte Programme
– InfluxDB
– Grafana
• Wie kommt man zu einem Graph?
– Backend
– Frontend
• Produktiv-Einsatz
• Ziele erfüllt?
07.09.2016 Philip Griesbacher - www.consol.de3
Seite
Aktueller Standard - PNP4Nagios
07.09.2016 Philip Griesbacher - www.consol.de4
[1]
Seite
Was war/ist das Ziel?
• Zeitgemäßes „look and feel“
• Alte Stärken beibehalten
• Um neue Funktionen erweitern
• Produktiv einsetzbar
07.09.2016 Philip Griesbacher - www.consol.de5
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
07.09.2016 Philip Griesbacher - www.consol.de6
Seite
Eingesetzte Programme – InfluxDB
• “An open-source distributed time series database with no external
dependencies (https://influxdb.com/ 06.11.2015).”
07.09.2016 Philip Griesbacher - www.consol.de7
[2]
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).”
07.09.2016 Philip Griesbacher - www.consol.de8
[3]
Seite
Wie kommt man zu einem Graph?
07.09.2016 Philip Griesbacher - www.consol.de9
Seite
Backend – Nagflux
• Verbindet „nagiosartige“ Systeme mit einer InfluxDB
• Schnittstellen:
– Perfdata-Verzeichnis
– Gearman
– Livestatus zur Anreicherung der Performancedaten
– Downtimes
– Notifications
– …
– Daten von Drittsystemen
• Programmiersprache: Go (1.5)
• https://github.com/Griesbacher/nagflux
07.09.2016 Philip Griesbacher - www.consol.de10
Seite
Nagflux Schnittstellen
07.09.2016 Philip Griesbacher - www.consol.de11
Seite
Frontend – Histou
• Template-Funktionalität für Grafana – erzeugt Dashboards „on the fly“
• Template-Typen:
– dynamisch in PHP
– statisch in JSON
• Programmiersprache: PHP (5.3+)
• https://github.com/Griesbacher/histou
07.09.2016 Philip Griesbacher - www.consol.de12
Seite
Was macht Histou?
07.09.2016 Philip Griesbacher - www.consol.de13
Seite
Wie sieht ein Template aus?
• Regelsatz:
host = *
service = *
command = *
perfLabel = load1, load5, load15
• Dashboard
– JSON-Objekt
– PHP Code, der JSON-Objekt erzeugt
07.09.2016 Philip Griesbacher - www.consol.de14
Seite
Live Demonstration
07.09.2016 Philip Griesbacher - www.consol.de15
Seite
Produktiv-Einsatz
• Begin der Aufzeichnung: 01.01.2016
• 62 Hosts
• 370 Services
– → Gesamt: 432 Checks
• InfluxDB(0.13): 1,0 GB
• RRD: 1,1 GB
07.09.2016 Philip Griesbacher - www.consol.de16
Seite
Produktiv-Einsatz
07.09.2016 Philip Griesbacher - www.consol.de17
Seite
Produktiv-Einsatz
07.09.2016 Philip Griesbacher - www.consol.de18
Seite
Produktiv-Einsatz
07.09.2016 Philip Griesbacher - www.consol.de19
Seite
Produktiv-Einsatz
07.09.2016 Philip Griesbacher - www.consol.de20
Seite
Ziele erfüllt?
• Zeitgemäßes „look and feel“ ✓
• Alte Stärken beibehalten ✓– Einfacher Import der Daten
– Programmierbare Templates
• Produktiv einsetzbar ✓
07.09.2016 Philip Griesbacher - www.consol.de21
Seite
Ziele erfüllt?
• Um neue Funktionen erweitern ✓– Nagios-Meldungen: Kommentare, Downtimes …
– einfache Template Erstellung
• Regex auf PerfLabel
• GUI (Grafana)
– Daten werden nicht verdichtet
– leicht um Nagios fremde Daten erweiterbar
– Warn/Crit-Linien
• dynamisch
• Bereiche
– Serviceübergreifende Dashboards
07.09.2016 Philip Griesbacher - www.consol.de22
Seite
Ausprobieren!
• „Easy Way“ – OMD Labs
– https://labs.consol.de/omd/index.html
– https://labs.consol.de/nagios/omd/2015/10/21/activate-nagflux.html
– Docker Image: https://github.com/Griesbacher/docker-omd-grafana
• „Hard Way“ – Integration in bestehende Installation
– „Build from Source“:
• https://github.com/Griesbacher/nagflux
• https://github.com/Griesbacher/histou
• Voraussetzung: „nagiosartiges“ System
15.09.2016 Philip Griesbacher - www.consol.de23
[4]
Seite
Ideen, Verbesserungsvorschläge
• https://github.com/Griesbacher/
• Oder einfach ansprechen!
15.09.2016 Philip Griesbacher - www.consol.de24
25Seite
Danke!
15.09.2016 Philip Griesbacher - www.consol.de
26Seite
Fragen?
15.09.2016 Philip Griesbacher - www.consol.de
Seite
Quellen
• 1: https://docs.pnp4nagios.org/de/pnp-0.6/start
• 2: http://dart.academy/content/images/2016/02/influxdb.png
• 3: https://share.zabbix.com/cat-app/grafana-zabbix
• 4: https://labs.consol.de/omd/index.html
• Stand: 05.05.2016
15.09.2016 Philip Griesbacher - www.consol.de27
28Seite Philip Griesbacher - www.consol.de
ConSol* Software GmbH
Franziskanerstraße 38
D-81669 München
Tel: +49-89-45841-100
Fax: +49-89-45841-111
www.consol.de
15.09.2016