Wir unternehmen IT. Grafana meets Monitoring Vorstellung einer Komplettlösung Philip Griesbacher Nürnberg, 18.11.15 16.11.2015 Seite 2 Philip Griesbacher - www.consol.de Ü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 Seite 3 Philip Griesbacher - www.consol.de Was war/ist das Ziel? • • • • Zeitgemäßes „look and feel“ Alte Stärken beibehalten Um neue Funktionen erweitern Produktiv einsetzbar 16.11.2015 Seite 4 Philip Griesbacher - www.consol.de Aktueller Standard - PNP4Nagios [1] 16.11.2015 Seite 5 Philip Griesbacher - www.consol.de 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 Seite 6 Philip Griesbacher - www.consol.de Eingesetzte Programme – InfluxDB • “An open-source distributed time series database with no external dependencies (https://influxdb.com/ 06.11.2015).” [2] 16.11.2015 Seite 7 Philip Griesbacher - www.consol.de 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).” [3] 16.11.2015 Seite 8 Philip Griesbacher - www.consol.de Wie kommt man zu einem Graph? 16.11.2015 Seite 9 Philip Griesbacher - www.consol.de 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 Seite 10 Philip Griesbacher - www.consol.de Nagflux Schnittstellen 16.11.2015 Seite 11 Philip Griesbacher - www.consol.de Backend – Influxdb • Demonstration 16.11.2015 Seite 12 Philip Griesbacher - www.consol.de Frontend – Histou • Template-Funktionalität für Grafana – erzeugt Dashboards „on the fly“ • Template-Typen: – dynamisch in PHP – statisch in JSON • Programmiersprache: PHP (5) • https://github.com/Griesbacher/histou 16.11.2015 Seite 13 Philip Griesbacher - www.consol.de Was macht Histou? 16.11.2015 Seite 14 Philip Griesbacher - www.consol.de 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 Seite 15 Philip Griesbacher - www.consol.de 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 Seite 16 Philip Griesbacher - www.consol.de Live Demonstration • Grafana wurde so angepasst, dass es Messlücken als solche darstellt. 16.11.2015 Seite 17 Philip Griesbacher - www.consol.de Live Demonstration • Messwerte, die während einer Downtime entstehen, werden ausgegraut. • Ebenso wurden Annotations für Notifications, Comments, Acknowlegements und Downtimes eingefügt. 16.11.2015 Seite 18 Philip Griesbacher - www.consol.de 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 Seite 19 Philip Griesbacher - www.consol.de Produktiv-Einsatz 16.11.2015 Seite 20 Philip Griesbacher - www.consol.de Produktiv-Einsatz 16.11.2015 Seite 21 Philip Griesbacher - www.consol.de Produktiv-Einsatz 16.11.2015 Seite 22 Philip Griesbacher - www.consol.de Ziele erfüllt? • Zeitgemäßes „look and feel“ ✓ • Alte Stärken beibehalten ✓ – Einfacher Import der Daten – Programmierbare Templates • Produktiv einsetzbar ✓ 16.11.2015 Seite 23 Philip Griesbacher - www.consol.de 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 16.11.2015 Seite 24 Philip Griesbacher - www.consol.de Was fehlt noch? • Templates für Standard-Checks ✗ • Dokumentation ✗ 16.11.2015 Seite 25 Philip Griesbacher - www.consol.de Ausprobieren! • „Easy Way“ – OMD Labs – https://labs.consol.de/omd/index.html – https://labs.consol.de/nagios/omd/2015/10/21/activate-nagflux.html • „Hard Way“ – Integration in bestehende Installation – „Build from Source“: • https://github.com/Griesbacher/nagflux • https://github.com/Griesbacher/histou [4] • Voraussetzung: „nagiosartiges“ System 16.11.2015 Seite 26 Philip Griesbacher - www.consol.de Ideen, Verbesserungsvorschläge • [email protected] • https://github.com/Griesbacher/ 16.11.2015 Seite 27 Philip Griesbacher - www.consol.de Danke! 16.11.2015 Seite 28 Philip Griesbacher - www.consol.de Fragen? 16.11.2015 Seite 29 Philip Griesbacher - www.consol.de Quellen • 1: https://docs.pnp4nagios.org/de/pnp-0.6/start • 2: https://s3.amazonaws.com/prodheroku/external_greenhouse_job_boards/logos/000/001/259/original/influxdbdark1600.png?1431587275 • 3: https://share.zabbix.com/cat-app/grafana-zabbix • 4: https://labs.consol.de/omd/index.html • Stand: 06.11.2015 16.11.2015 Seite 30 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 [email protected] www.consol.de 16.11.2015 Seite 31 Philip Griesbacher - www.consol.de
© Copyright 2024 ExpyDoc