Der auf RRDtool basierenden Grapher PNP4Nagios erfreut sich wachsender Beliebtheit. Jörg Linge wird in seinem Vortrag auf die Grundlegende Arbeitsweise eingehen, aber auch Einblick in einige eher unbekannte Details und die im letzten Jahr umgesetzten Erweiterungen geben.
Der Vortrag gibt Einblick in die Architektur von PNP4Nagios und zeigt mögliche Einsatzgebiete auf.
Bei einer Live-Vorführung wird die Integration von PNP4Nagios in OMD sowie die Zusammenarbeit mit Mod_Gearman aufgezeigt.
Ebenso wird auf die Verwendung des RRD Cache Daemon eingegangen um der, durch RRDTool bedingten, I/O Belastung entgegen zu wirken.
Ein anschließender Überblick über die aktuellen Entwicklungen am Webfrontend rundet den Vortrag ab.
Datensicherheit in der Cloud und ausserhalb - SharePoint Konferenz Wien 2013
OSMC 2011 | PNP4Nagios
1. Über PNP4Nagios Datensammler Das Interface Templates Support
PNP4Nagios
Jörg Linge
OSMC 2011
Jörg Linge PNP4Nagios
2. Über PNP4Nagios Datensammler Das Interface Templates Support
1 Über PNP4Nagios
Was ist PNP4Nagios
Performancedaten
2 Datensammler
Datensammler
Synchronous Mode
Bulk Mode
Bulk Mode mit NPCD
Bulk Mode mit NPCD und npcdmod
Gearman
3 Das Interface
Übersicht
Runtime Statistiken
Interface für Mobile Devices
4 Templates
Templates und Funktionen
5 Support
Verify
Jörg Linge PNP4Nagios
3. Über PNP4Nagios Datensammler Das Interface Templates Support
Was ist PNP4Nagios
Was ist PNP4Nagios?
PNP4Nagios ...
verarbeitet Performancedaten
speichert Daten mittels RRDtool
visualisiert Daten mittels RRDtool
verlinkt direkt aus dem Nagios Webinterface auf die
entsprechenden Graphen
bietet kurze Wege vom Alarm zum Graphen
Dokumentation
http://docs.pnp4nagios.org/de/pnp-0.6/about
Jörg Linge PNP4Nagios
4. Über PNP4Nagios Datensammler Das Interface Templates Support
Was ist PNP4Nagios
Was ist PNP4Nagios?
PNP4Nagios ...
verarbeitet Performancedaten
speichert Daten mittels RRDtool
visualisiert Daten mittels RRDtool
verlinkt direkt aus dem Nagios Webinterface auf die
entsprechenden Graphen
bietet kurze Wege vom Alarm zum Graphen
Dokumentation
http://docs.pnp4nagios.org/de/pnp-0.6/about
Jörg Linge PNP4Nagios
5. Über PNP4Nagios Datensammler Das Interface Templates Support
Was ist PNP4Nagios
Was ist PNP4Nagios?
Die Entwicklungsgeschichte
Geburt auf dem Nagios Workshop 2005 in Kassel
Als Projekt aktiv seit 2006
Bei SourceForge gehostet seit Version 0.4
Aktuell Version 0.6.16
Jörg Linge PNP4Nagios
6. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Was sind Performancedaten?
Performancedaten ...
werden von Nagios Plugins geliefert
liefern zusätzliche Infos zum Status
sind in ihrem Format genormt
sind für externe Programme leicht zu parsen
Warum arbeitet PNP nur mit Performancedaten?
Das Format der Performancedaten ist fest definiert
Parsen des Plugin Output kann scheitern
Existierende Standards fördern
Jörg Linge PNP4Nagios
7. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Was sind Performancedaten?
Performancedaten ...
werden von Nagios Plugins geliefert
liefern zusätzliche Infos zum Status
sind in ihrem Format genormt
sind für externe Programme leicht zu parsen
Warum arbeitet PNP nur mit Performancedaten?
Das Format der Performancedaten ist fest definiert
Parsen des Plugin Output kann scheitern
Existierende Standards fördern
Jörg Linge PNP4Nagios
8. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Beispiel check_icmp
Plugin Output
OK - 127.0.0.1: rta 2.687ms, lost 0% | rta=2.687ms;3000.000;5000.000;0;
Performancedaten
rta=2.687ms;3000.000;5000.000;0;
| | | | | | |
|----|--|-----|--------|-----|-|----- * Label
|--|-----|--------|-----|-|----- * Aktueller Wert
|-----|--------|-----|-|----- Einheit
|--------|-----|-|----- Warning Schwellwert
|-----|-|----- Critical Schwellwert
|-|----- Minimum Wert
|----- Maximum Wert
Jörg Linge PNP4Nagios
9. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Mehrwert
Der Blick auf die Zeitschiene
Der zeitliche Verlauf bis Nagios alarmiert
Zeit abschätzen bis der Critical Schwellwert erreicht wird
Trends erkennen
Daten verschiedener Hosts/Services vergleichen
Jörg Linge PNP4Nagios
10. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Datenhaltung
RRDtool
PNP verwendet RRDtool zum speichern und darstellen der Daten
RRD = Round Robin Database
Auf den meisten Systemen als Paket verfügbar
RRDtool wird sehr aktiv entwickelt
Infos über RRDtool
http://www.rrdtool.org
http://de.wikipedia.org/wiki/RRD
Jörg Linge PNP4Nagios
11. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Datenhaltung
RRDtool
PNP verwendet RRDtool zum speichern und darstellen der Daten
RRD = Round Robin Database
Auf den meisten Systemen als Paket verfügbar
RRDtool wird sehr aktiv entwickelt
Infos über RRDtool
http://www.rrdtool.org
http://de.wikipedia.org/wiki/RRD
Jörg Linge PNP4Nagios
12. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Datenhaltung mit RRDtool
Vorteil
Kein Datenwachstum
Stabilität
Graphing Engine integriert
Nachteil
Statische Datenbanken
Alte Daten werden verdichtet
Jörg Linge PNP4Nagios
13. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Datenhaltung mit RRDtool
Vorteil
Kein Datenwachstum
Stabilität
Graphing Engine integriert
Nachteil
Statische Datenbanken
Alte Daten werden verdichtet
Jörg Linge PNP4Nagios
14. Über PNP4Nagios Datensammler Das Interface Templates Support
Performancedaten
Datenhaltung
STORAGE_TYPE = MULTIPLE
Mehrere RRD Datenbanken je Service
Jede Datenquelle bekommt eine eigene RRD Datenbank
Anzahl der Datenquellen darf nun variieren
Struktur wird weiterhin im XML gespeichert
Einstellbar global oder pro Service
Weitere Infos
http://docs.pnp4nagios.org/de/pnp-0.6/tpl_custom
http://docs.pnp4nagios.org/de/pnp-0.6/rrd_convert
Jörg Linge PNP4Nagios
15. Über PNP4Nagios Datensammler Das Interface Templates Support
1 Über PNP4Nagios
Was ist PNP4Nagios
Performancedaten
2 Datensammler
Datensammler
Synchronous Mode
Bulk Mode
Bulk Mode mit NPCD
Bulk Mode mit NPCD und npcdmod
Gearman
3 Das Interface
Übersicht
Runtime Statistiken
Interface für Mobile Devices
4 Templates
Templates und Funktionen
5 Support
Verify
Jörg Linge PNP4Nagios
16. Über PNP4Nagios Datensammler Das Interface Templates Support
Datensammler
Datensammler
Die Kunst Daten zu sammeln
Nagios bietet mehrere Arten Performancedaten zu verarbeiten
Welche Art zum Einsatz kommt hängt stark von der Größe des
Systems ab
PNP unterstützt alle Arten
Weitere Infos
http://docs.pnp4nagios.org/de/pnp-0.6/modes
Jörg Linge PNP4Nagios
17. Über PNP4Nagios Datensammler Das Interface Templates Support
Synchronous Mode
Synchronous Mode
Synchronous Mode
Für kleine Installationen
Nach jedem Check werden die Performancedaten verarbeitet
Viele einzelne Prozesse
Blockt Nagios!
Jörg Linge PNP4Nagios
19. Über PNP4Nagios Datensammler Das Interface Templates Support
Bulk Mode
Bulk Mode
Bulk Mode
Für mittlere Installationen
Nagios sammelt die Daten für eine bestimmte Zeit
Daten werden an einem Stück von PNP verarbeitet
Blockt Nagios noch immer!
Weniger Prozesse
Jörg Linge PNP4Nagios
21. Über PNP4Nagios Datensammler Das Interface Templates Support
Bulk Mode mit NPCD
Bulk Mode mit NPCD
Bulk Mode mit NPCD
Für große Installationen
Nagios sammelt die Daten und verschiebt sie in ein Spool
Verzeichnis
NPCD überwacht das Spool Verzeichnis
NPCD startet die Verarbeitung
Nagios wird nicht geblockt!
Jörg Linge PNP4Nagios
23. Über PNP4Nagios Datensammler Das Interface Templates Support
Bulk Mode mit NPCD und npcdmod
Bulk Mode mit NPCD und npcdmod
Bulk Mode mit NPCD und npcdmod
Für faule Administratoren
Arbeitsweise wie vorher mit dem NPCD
Logik steckt im Eventbroker Modul npcdmod.o
Keine Konfiguration nötig
Jörg Linge PNP4Nagios
25. Über PNP4Nagios Datensammler Das Interface Templates Support
Gearman
Gearman Mode
Gearman Mode
Schnittstelle zu mod_gearman
Verteilte Nagios Installationen
Keine Konfiguration nötig
Netzwerk Transparent durch mod_gearman
Mod_Gearman von Sven Nierlein
http://labs.consol.de/lang/de/nagios/mod-gearman/
Jörg Linge PNP4Nagios
27. Über PNP4Nagios Datensammler Das Interface Templates Support
1 Über PNP4Nagios
Was ist PNP4Nagios
Performancedaten
2 Datensammler
Datensammler
Synchronous Mode
Bulk Mode
Bulk Mode mit NPCD
Bulk Mode mit NPCD und npcdmod
Gearman
3 Das Interface
Übersicht
Runtime Statistiken
Interface für Mobile Devices
4 Templates
Templates und Funktionen
5 Support
Verify
Jörg Linge PNP4Nagios
28. Über PNP4Nagios Datensammler Das Interface Templates Support
Übersicht
Host Übersicht
Host Übersicht
Alle Graphen eines Hosts in der Übersicht
Umschalten zwischen verschiedenen Zeitbereichen möglich
Geeignet als action_url für Hosts
Ein Zeitbereich in der Übersicht ( 24 Stunden Ansicht )
URL
/pnp4nagios/graph?host=<host>
Jörg Linge PNP4Nagios
30. Über PNP4Nagios Datensammler Das Interface Templates Support
Übersicht
Host Suche
Host Suche
Ajax basierte Suche nach Hosts
Suche während der Eingabe
Ziel der Suche ist die Host Übersicht
Jörg Linge PNP4Nagios
32. Über PNP4Nagios Datensammler Das Interface Templates Support
Übersicht
Service Details
Service Details
Alle Graphen eines einzelnen Services
Alle Zeitbereiche in der Übersicht
Direkter Link zu Nagios Availibility Reports und Alerts
URL
/pnp4nagios/graph?host=<host>&srv=<service>
Jörg Linge PNP4Nagios
36. Über PNP4Nagios Datensammler Das Interface Templates Support
Übersicht
Basket
Basket
Zusammenfassen beliebiger Graphen
Hinzufügen durch Klick auf das plus Symbol
Entfernen durch Klick auf das minus Symbol
Sortieren via Drag Drop
Geeignet für den schnellen Vergleich verschiedener Graphen
Wird in der User Session gespeichert
Jörg Linge PNP4Nagios
38. Über PNP4Nagios Datensammler Das Interface Templates Support
Übersicht
Pages
Pages
Zusammenfassen beliebiger Graphen
Konfiguration an Nagios angelehnt
Beschreibung durch reguläre Ausdrücke
Für wiederkehrende Berichte
Weitere Infos
http://docs.pnp4nagios.org/de/pnp-0.6/pages
Jörg Linge PNP4Nagios
39. Über PNP4Nagios Datensammler Das Interface Templates Support
Runtime Statistiken
Runtime Statistiken
Runtime Statistiken
Laufzeit der Datensammler
Anzahl der RRDtool Updates
Darstellung von Update Fehlern
Jörg Linge PNP4Nagios
41. Über PNP4Nagios Datensammler Das Interface Templates Support
Runtime Statistiken
PDF Export
PDF Export
Jede Seite ist als PDF exportierbar
PDF Hintergrund beliebig änderbar
PDF Hintergrund für Pages individuell einstellbar
Jörg Linge PNP4Nagios
43. Über PNP4Nagios Datensammler Das Interface Templates Support
Interface für Mobile Devices
Mobile Interface
Start Screen
Basiert auf jQuery-Mobile
Automatische Umleitung
je nach Browser
Jörg Linge PNP4Nagios
44. Über PNP4Nagios Datensammler Das Interface Templates Support
Interface für Mobile Devices
Mobile Interface
Host Liste / Services
Jörg Linge PNP4Nagios
45. Über PNP4Nagios Datensammler Das Interface Templates Support
Interface für Mobile Devices
Mobile Interface
Services / Filter
Jörg Linge PNP4Nagios
46. Über PNP4Nagios Datensammler Das Interface Templates Support
1 Über PNP4Nagios
Was ist PNP4Nagios
Performancedaten
2 Datensammler
Datensammler
Synchronous Mode
Bulk Mode
Bulk Mode mit NPCD
Bulk Mode mit NPCD und npcdmod
Gearman
3 Das Interface
Übersicht
Runtime Statistiken
Interface für Mobile Devices
4 Templates
Templates und Funktionen
5 Support
Verify
Jörg Linge PNP4Nagios
47. Über PNP4Nagios Datensammler Das Interface Templates Support
Templates und Funktionen
PNP Templates
PNP Templates
Templates bestimmen das Aussehen der Graphen
Das Nagios Check Command bestimmt das Template
Templates definieren den RRDtool Aufruf
Alle Funktionen von RRDtool sind verwendbar
PHP Code ist uneingeschränkt nutzbar
Weitere Infos
http://docs.pnp4nagios.org/de/pnp-0.6/tpl
http://oss.oetiker.ch/rrdtool/doc/rrdgraph_graph.en.html
Jörg Linge PNP4Nagios
48. Über PNP4Nagios Datensammler Das Interface Templates Support
Templates und Funktionen
RRDtool Helper Functions
RRDtool Helper Functions
Seit PNP4Nagios-0.6.5 verfügbar
Vereinfachen von PNP Templates
Umsetzen komplexer Anforderungen
Weitere Infos
http://docs.pnp4nagios.org/de/pnp-0.6/tpl_helper
Jörg Linge PNP4Nagios
49. Über PNP4Nagios Datensammler Das Interface Templates Support
Templates und Funktionen
RRD Helper ’gradient’
rrd::gradient
$def[1] .= rrd::gradient(
"var1", # RRD Variable
"ff5c00", # Start Farbe
"ffdc00", # End Farbe
"Packets Lost", # Label
"20") ; # Anzahl der Abstufungen
Beispiel
Jörg Linge PNP4Nagios
50. Über PNP4Nagios Datensammler Das Interface Templates Support
Templates und Funktionen
RRD Helper ’gprint’
rrd::gprint
$def[1] .= rrd::gprint(
"var1", # RRD Variable
array("MAX","AVERAGE","LAST"), # Datasource Liste
"%6.2lf $UNIT[1]%S" # Label Text
) ;
Beispiel
Jörg Linge PNP4Nagios
51. Über PNP4Nagios Datensammler Das Interface Templates Support
Templates und Funktionen
RRD Helper ’cut’
rrd::cut
$def[1] .= rrd::area(
"rx_bytes", # RRD Variable
"#20a020", # Farbe
rrd::cut(
$LABEL[1], # String
5) # Anzahl Zeichen
);
Beispiel
Jörg Linge PNP4Nagios
52. Über PNP4Nagios Datensammler Das Interface Templates Support
Templates und Funktionen
RRD Helper ’ticker’
rrd::ticker
$def[1] .= rrd::ticker(
"var1", # RRD Variable
$WARN[1], $CRIT[1], # Warning und Critical
-0.05, # Ticker Position
"FF", "#00FF00", "#FFFF00", "#FF0000" # Farben
);
Beispiel
Jörg Linge PNP4Nagios
53. Über PNP4Nagios Datensammler Das Interface Templates Support
Templates und Funktionen
RRD Helper ’alerter’
rrd::alerter
$def[1] .= rrd::alerter(
"var1", # RRD Variable
"Round Trip Times", # Label
$WARN[1], $CRIT[1], # Warning und Critical
"FF", $UNIT[1], # Transparenz und Einheit
"#00FF00","#FFFF00","#FF0000","#c0c0c0"
);
Beispiel
Jörg Linge PNP4Nagios
54. Über PNP4Nagios Datensammler Das Interface Templates Support
1 Über PNP4Nagios
Was ist PNP4Nagios
Performancedaten
2 Datensammler
Datensammler
Synchronous Mode
Bulk Mode
Bulk Mode mit NPCD
Bulk Mode mit NPCD und npcdmod
Gearman
3 Das Interface
Übersicht
Runtime Statistiken
Interface für Mobile Devices
4 Templates
Templates und Funktionen
5 Support
Verify
Jörg Linge PNP4Nagios
55. Über PNP4Nagios Datensammler Das Interface Templates Support
Verify
Support
Verify Script
Verify Script zum prüfen der Nagios/Icinga/PNP Konfiguration
Getrennt von der PNP4nagios Version
Nur drei Optionen sind selbst zu setzen
Erleichtert den Support
Download unter ...
http://verify.pnp4nagios.org
Jörg Linge PNP4Nagios
56. Über PNP4Nagios Datensammler Das Interface Templates Support
Verify
Support
Verify Script
nagios:~$ wget http://verify.pnp4nagios.org/verify_pnp_config
nagios:~$ perl ./verify_pnp_config
verify_pnp_config -m|--mode=[sync|bulk|bulk+npcd|npcdmod]
-c|--config=[path to nagios.cfg]
-p|--pnpcfg=[path to PNP config dir]
Jörg Linge PNP4Nagios
57. Über PNP4Nagios Datensammler Das Interface Templates Support
Verify
Support
Support und Dokumentation
Dokumentation unter http://docs.pnp4nagios.org/
Support Infos unter
http://docs.pnp4nagios.org/de/pnp-0.6/about
Vollständige Ausgabe von verify_pnp_config liefern
Bei Fragen mailto:support@pnp4nagios.org
Jörg Linge PNP4Nagios
58. Über PNP4Nagios Datensammler Das Interface Templates Support
Verify
Fragen?
Fragen?
Zeit für weitere Fragen ...
Danke
Danke für Ihre Aufmerksamkeit!
Weiterhin viel Spass auf der OSMC
Jörg Linge PNP4Nagios
59. Über PNP4Nagios Datensammler Das Interface Templates Support
Verify
Fragen?
Fragen?
Zeit für weitere Fragen ...
Danke
Danke für Ihre Aufmerksamkeit!
Weiterhin viel Spass auf der OSMC
Jörg Linge PNP4Nagios