№42

... it's better to have good questions

OpenNMS and Documentation

July 15, 2014 3 min read OpenNMS Technology Ronny Trommer

To help the OpenNMS project I spent a year together with Alexander Finger and Klaus Thielking-Riechert writing an OpenNMS book. We started with a development version of for 1.8 and tried to find a mixture between consistent slow changing and new concepts in 1.8. It was kind a complicated thing and from my point of view not perfectly done. Nevertheless I’ve thought about something like: “It’s about time writing a second edition covering the topics in coming 1.14?” The problem I’ve with books, it doesn’t allow contribution and hasn’t a really long life cycle. So I’ve decided instead of spending a year again writing a book, I want something which is more helpful to the project itself.

Continue reading

OpenNMS Dev-Jam 2014

June 4, 2014 1 min read Events OpenNMS Ronny Trommer

We are right in the middle of our 5th season of the year – DevJam. It is always a lot of fun spending one week with people from all over the world on the campus of the University of Minnesota. I’ve put on my personal agenda for this week, spending time with the folks working on the way how we want to document our project. I try also to gather the project ideas and where they contribute the code to the project. Currently i try to get some updates from the progress through the opennms.eu page. We have the following topics on the list:

Continue reading

OUCE 2014 Review

April 22, 2014 2 min read OpenNMS Events Ronny Trommer

We have finished our 6th OpenNMS User Conference Europe. It was the first time we made a conference outside of Germany. We started with the first conference in 2009 when I worked at NETHINKS and begun with OpenNMS professional services. For the 3rd and 4th conference we decided to move the venue closer to the people organizing the conference and the IT center in Fulda was a really good place. In 2013 NETHINKS and the OpenNMS Foundation Europe worked together to move the organization of the conference to the community at the University of Applied Science in Fulda.

Continue reading

OpenNMS SNMP Monitor - You have found a secret

December 11, 2009 2 min read OpenNMS Ronny Trommer

In OpenNMS wurde seit der Version 1.6.3 der SNMP Monitor erweitert und die neuen Features sind Release-Notes Beschreibung vielleicht ein wenig untergegangen. Die erweiterten Funktionen haben sich für mich als hilfreich erwiesen und sind mir einen Blog-Eintrag wert. Die OpenNMS Wiki Seite sind an der Stelle sehr gut dokumentiert und aktualisiert worden. Grob zusammengefaßt sind folgende Funktionen erweitert worden:

  • Es können jetzt optional komplette SNMP Tabellen anstatt von einzelnen OIDs überwacht werden
  • Es kann die Anzahl eines gewünschten Status gezählt und gegen einen Schwellwert geprüft werden
  • Die Fehlermeldung lässt sich über ein Template sprechend parametrisieren

Im folgenden wird die Einrichtung am Beispiel eines Monitors für ISDN B-Kanäle gezeigt. Häufig werden Notfall-Dialup Verbindungen eingerichtet, wenn Internet Verbindungen oder VPNs nicht mehr möglich sind. Mit diesem Monitor werden alle B-Kanäle überwacht, sobald eine Einwahl stattfindet und ein B-Kanal verwendet wird, fällt der Monitor herunter und informiert den Administrator, dass ein Benutzer oder Standort auf ISDN-Backup läuft. Sollte eigentlich für alle Geräte funktionieren, welche die ISDN-MIB unterstützen. Der abgefragte Tabelle ist übrigens isdnBearerOperStatus. Zuerst wird dazu in der capsd-configuration.xml ein Dienst eingerichtet:

<protocol-plugin protocol="All-ISDN-Backup" class-name="org.opennms.netmgt.capsd.plugins.LoopPlugin" scan="on">
  <property key="ip-match" value="{ip-adresse-isdn-backup-router}" />
  <property key="is-supported" value="true" />
</protocol-plugin>

Der Monitor im pollerd sieht dann wie folgt aus:

<service name="All-ISDN-Backup" interval="300000" user-defined="false" status="on">
  <parameter key="retry" value="6" />
  <parameter key="timeout" value="4950" />
  <parameter key="port" value="161" />
  <parameter key="oid" value=".1.3.6.1.2.1.10.20.1.2.1.1.2" />
  <parameter key="walk" value="true" />
  <parameter key="operator" value="=" />
  <parameter key="operand" value="1" />
  <parameter key="match-all" value="true" />
  <parameter key="reason-template"
       value="One or more backup ISDN channels are active. \
    The state should be idle(${operand}) the observed value is ${observedValue}. \
    Syntax: idle(1), connecting(2), connected(3), active(4) " />
</service>
...
<monitor service="All-ISDN-Backup" class-name="org.opennms.netmgt.poller.monitors.SnmpMonitor"/>

Anstatt key="match-all value="true" kann auch der Wert value="count" gesetzt werden, zählt der Monitor die Abweichungen und man kann auf Schwellen prüfen. Die Schwellen werden mit zusätzlichen Parametern <parameter key="minimum" value="3"> sowie <parameter key="maximum" value="10" /> gesetzt werden.

gl&hf

OpenNMS meets HP InsightManager

December 10, 2009 1 min read OpenNMS HP How-To Ronny Trommer

Nach einer relativ langen Nacht und etlichen Stunden asterisk-iaxmodem-hylafax debugging habe ich die gunst der Stunde genutzt und die vorbildlich konfigurierten HP InsightManager genauer angesehen. Die folgenden SNMP-OIDs haben sich aus meiner Sicht für die Überwachung als sinnvoll ergeben:

CPQIDA-MIB

Name OID
cpqDaSpareStatus .1.3.6.1.4.1.232.3.2.4.1.1.3
cpqDaLogDrvStatus .1.3.6.1.4.1.232.3.2.3.1.1.4
cpqDaPhyDrvStatus .1.3.6.1.4.1.232.3.2.5.1.1.6

CPQHLTH-MIB

Name OID
cpqHeThermalTempStatus .1.3.6.1.4.1.232.6.2.6.3.0
cpqHeThermalSystemFanStatus .1.3.6.1.4.1.232.6.2.6.4.0
cpqHeThermalCpuFanStatus .1.3.6.1.4.1.232.6.2.6.5.0
cpqHeFltTolPowerSupplyStatus .1.3.6.1.4.1.232.6.2.9.3.1.5
cpqHeResMemModuleCondition .1.3.6.1.4.1.232.6.2.14.11.1.5

Die MIBS können von der ByteSphere MIB-Online Datenbank heruntergeladen werden. Für die Überwachung habe ich den SNMP-Monitor verwendet wie er in der Version ab 1.6.4 mit der Möglichkeit zum SNMP-Table Monitoring bietet. Die vollständige Konfiguration ist im OpenNMS Wiki HP InsightManager dokumentiert und beschrieben. Für den ein oder anderen sollten damit defekte Lüfter, RAID-Verbände und andere Überraschungen keine Probleme mehr darstellen.

Continue reading

OpenNMS ready?

December 3, 2009 3 min read Monitoring OpenNMS Ronny Trommer

Es gibt Dinge die werden einem bei der Einführung eines NMS häufig nicht gesagt, ganz ohne Arbeit gehts leider nicht. Die alleinige Installation eines Netzwerk-Management-Systems ist, neben der eigentlichen Auswahl - die schon ziemlich nervenaufreibend sein kann, nur die halbe Miete. Mit dem Einsatz eines NMS wollen SNMP-Agenten befragt, SNMP-Traps und Syslog Events empfangen und ausgewertet werden. Um von einem NMS richtig profitieren zu können, kommen also nicht darum herum, sich mit Ihren Geräten und Netzwerk-Komponenten zu beschäftigen. Die folgende, nicht unbedingt vollständige Aufzählung, können als Hilfestellung bei der Einführung von OpenNMS oder einem jeden anderen NMS hilfreich sein.

Continue reading

Just another meaning about Business Process Monitoring

November 28, 2009 4 min read OpenNMS Ronny Trommer

Zuviel Hotel ohne Internet bekommen mir irgendwie nicht wirklich gut. Mit einem einfachen Text-Editor und viel Zeit, habe ich ein paar Gedanken zum Thema Business Process Monitoring (BPM) aufgeschrieben. Häufig wird dies im Zusammenhang mit der Einführung eines Netzwerk-Management-Systems (NMS) oder Monitoring-Tools gesehen.

Wenn man sich im Internet zum Monitoring und Netzwerk-Management umsieht, wird man schnell feststellen, dass klassisches Netzwerk-Management und Monitoring durchgekaut scheinen und als ziemlich out gelten. Stattdessen versuchen verschiedene Anbieter ihre NMS-Anwendungen und Tools, durch ein Feature namens “Business-Process-Monitoring” aufzuwerten.

Ich behaupte, dass jedes Management- oder Monitoring-Tool (wie bspw.: OpenNMS, Nagios, Icinga, Zabbix, Zenoss …), mit der Fähigkeit eigene Skripte oder Programme auszuführen, zum Business Process Monitoring genutzt werden können. Letztendlich liegt es an der Fähigkeit des Monitor-Entwicklers, wie gut er die Abläufe oder Prozesse in einem Unternehmen versteht und im Monitor (Skript/Programm) abbilden kann. Wer nach Business Process Monitoring sucht, wird vermutlich erst einmal einen haufen Marketing-Unterlagen stoßen, die nichts ausser Luftvokabular enthalten. Das ganze ist auch ziemlich logisch, schließlich kann man den Test eines Geschäftsprozesses nicht mit einem einfachen ping-Test vergleichen. Es gibt für die Parametrisierung eben eine ganze Menge “Kommt-ganz-darauf-an´s” zu klären. Die Wahl des Tools sehe ich daher eher zweitrangig. Wie so oft, liegt für mich der Anbieter vorn, abgesehen vom Preis ;), der die Anforderungen am besten versteht und mit seinem Monitoring-Tool effizient umgehen kann.

Wie man sich leicht vorstellen kann, sind Business Process Monitore verhältnismässig teuer. Das liegt daran, dass einerseits Ressourcen wie (Zeit, Personal, Dienstleister), um die Monitore zu entwickeln, andererseits auch Ressourcen wie CPU-Zeit und Lizenzen für die Anwendung oder Datenbank, benötigt werden. Ein Business Process Monitor benötigt häufig für den Test genau die gleichen Ressourcen wie ein realer Anwender. Bevor man sich also vollständig den Buzzwords hingibt, sollte man sich zunächst klar machen, dass Geschäftsanwendungen, auch wenn sie SAP, Microsoft Dynamics NAV etc. heißen, verteilte Netzwerk-Anwendungen sind, die eine Server- und Netzwerk-Infrastruktur benötigen und in den meisten Fällen zentralisiert aufgebaut sind. Sorry an alle Vorstände, Geschäftsführer und BWL´er, ich weiss es würde besser gefallen, wenn man diesen ganzen Kram mit den ganzen Leuten nicht benötigen würde, geht aber leider nicht anders ;)

Monitoring layer model TCP/IP-Schichten und deren Monitore

Die oben gezeigte Abbildung ist Anlehnung an das TCP-Schichtmodell entstanden und soll darstellen wo sich das BPM aus meiner Sicht einordnen lässt. Die Unternehmens-Anwendungen sind also meistens über mehrere Server verteilt und hängen damit massgeblich von den Netzwerk-Schichten ab. Es ist leicht verständlich, je höher in den Schichten überwacht wird, desto komplexer und spezieller müssen auch die Monitore sein. Das gleiche gilt auch für die Fehlerdiagnose. Je weiter oben in den Schichten ein Fehler auftritt, desto mehr muss ein Support-Mitarbeiter wissen um den Fehler zu beheben. Die Fehlerdiagnose erfolgt daher auch eher von unten nach oben. Die Tools ping, traceroute und nmap sind nicht ohne Grund die am Häufigsten verwendeten Tools die ein Administrator oder Support-Mitarbeiter zur Fehlerdiagnose verwendet. Die Monitore in den unteren Schichten sind extrem günstig, da die meisten Netzwerk-Management und -Monitoring-Anwendungen fertige und leistungsfähige Monitore direkt mitbringen.

Ein ganz einfaches Beispielt sollte das hier verdeutlichen. Sie haben einen Monitor geschrieben, der einen konkreten Anwendungsfall ihrer Geschäftsprozesse, bspw. den Abruf eines Lieferscheins oder eine Buchung, testet. Auf dem Datenbankserver ist eine redundant ausgelegte Festplatte defekt oder ein redundanter Lüfter ist ausgefallen. Sie werden keine Beeinträchtigung im Geschäftsprozess durch den Monitor feststellen, er funktioniert wie gewohnt. Mit etwas Glück kann man sehen, dass die Ausführung vielleicht etwas länger dauert, der Rückschluss auf einen RAID-Verband im Status “degraded” ist aber auch dem besten Netzwerk-Administrator wohl etwas zuviel abverlangt. Der Ausfall einer weiteren Platte oder das Herunterfahren des Systems zum Schutz vor Überhitzung, wird den Geschäftsprozess dann wirklich erst beeinträchtigen, ab dann wird es meistens teuer. Was hilft es also, wenn der komplizierteste Business-Prozesse in der letzten Abhängigkeit überwacht und getestet wird, dann im Fehlerfall aber überhaupt keine sinnvolle Hilfestellung zur Entstörung oder Eingrenzung des Problems vorliegt. Sie haben also eine Möglichkeit durch Austausch der Festplatte oder des Lüfters zur Prävention verpasst. Die Überwachung des Business-Prozesses stellt also in meinen Augen eher am Ende der Monitoring-Kette eine Art, Qualitätssicherung dar. Fällt ein Monitor, der einen Geschäftsprozess überwacht aus, dann haben auch letztendlich alle Redundanzen versagt und das Kind liegt schon im Brunnen. Meine Erfahrungen aus der Systembetreuung hat mir gezeigt, dass Fehler häufig in den unteren Schichten auftreten. Bei der Einführung von BPM sollten man sich daher aus meiner Sicht, die Frage stellen ob ein Netzwerk-Management und Monitoring existiert und auch wie gewünscht funktioniert, da diese Überwachung sich implizit auch auf die Überwachung ihrer Geschäftsanwendung auswirkt.

gl & hf

Newer posts