Was macht eigentlich . . .

This entry is part 13 of 13 in the series NSClient++

. . . NSClient++ ? Länger haben wir hier im Blog nichts mehr zum Thema NSClient geschrieben. Grund genug um mal wieder den aktuellen Entwicklungsstand zu überprüfen.

Aktuell wird der Monitoring Agent in 2 Strängen weiterentwickelt. Die Version 0.4.4 ist als stable markiert und bekommt nur noch bugfixes und kleinere Erweiterungen. In Version 0.5.0 wurden einzelne Module komplett neu geschrieben. Mit der aktuellen 0.5.0.59 wurde weiter an der Stabilität und einzelnen Checks gearbeitet.

nsclient-logoBesonders hervorzuheben sind im 0.5er Release der Webserver, der ssl gesichert und REST-apifiziert Kommandos entgegen nimmt und Informationen zurückliefert, Auch ist es in der aktuellen Version möglich Performancedaten direkt an graphite zu schreiben, was besonders in Großen Umgebungen zu einer starken Entlastung des monitoring servers (egal ob icinga 1 oder 2) führen kann. Um den überwachten Server besser zu schützen beendet NSClient jetzt alle von ihm angestoßenen Skripte wenn es selbst beendet wird, damit keine Langläufer mehr verloren gehen.

Bei allen Verbesserungen in 0.5 sollte man aber nicht vergessen, dass diese Version noch beta ist und nur mit der nötigen Vorsicht verwendet werden sollte.

Christoph Niemann

Autor: Christoph Niemann

Christoph hat bei uns im Bereich Managed Service begonnen und sich dort intensiv mit dem internen Monitoring auseinandergesetzt. Seit 2011 ist er nun im Consulting aktiv und unterstützt unsere Kunden vor Ort bei größeren Monitoring-Projekten und PERL-Developer-Hells.

Wenn einer eine Reise tut

zur Zeit bin ich für Netways dabei, einen Kunden in Beijing vor Ort zu Betreuen. 3 Wochen dauert das Spektakel und ich bin in dieser Zeit in einem äußerst komfortablen Hotel in der Nähe des Diplomatenviertels der Chinesischen nördlichen(bei) Hauptstadt(jing) untergebracht.

Da so eine weite Tour auch für einen reiseerfahrenen Consultant wie mich nichts ganz gewöhliches ist, möchte ich euch mal ein paar Dinge berichten. Gestartet bin ich nämlich mit einigen Erwartungen und auch Vorurteilen die sich allerdings größtenteils nicht bestätigt haben.

way to work in beijing

Mein Arbeitsweg Beijing

Zuersteinmal:

der smog ist vorhanden, aber lange nicht so schlimm wie ich Ihn mir vorgestellt habe. Man sieht die Sonne und den blauen Himmel nahezu jeden Tag (außer es regnet). Viel dazu beigetragen hat wahrscheinlich, dass der allgegewärtige Motorroller zu 99,9% elektrisch voran kommt. Rücksicht auf Fußgänger wird deswegen zwar nicht genommen, d.h. es hält Keiner an Ampeln oder Zebrastreifen, aber auch nicht viel anders als z.B. in Paris oder Rom. Und da wo es an Verkehrssicherheit fehlt ist die persönliche Sicherheit um so höher. In Beijing braucht man keine Angst haben nachts im Dunkeln irgendwo entlang zu laufen. Es gibt sehr viel Polizei und ähnliches.

Ich fühle mich hier definitiv sicherer als z.B. in Berlin. Und dabei hat Beijing nach vorsichtigen Schätzungen 20, nach etwas offensiveren 30 Millionen Bewohner. Also mehr als 1/4 Deutschlands in einer Stadt.
Funfact: es gibt mehr als 180 Millionenstädte in China.

Die Ubahn funktioniert super.

DrollerSie ist komplett auch auf englisch beschildert und es gibt in jedem Wagon einen Plan auf dem man nicht nur die Stationen der Linie sieht, sondern auch wo man gerade ist. Die automatischen Ansagen sind auf Englisch und verständlich. Da könnten sich Nürnberg und Berlin eine Scheibe von abschneiden. Man hat eine elektronische Bezahlkarte, da lädt man ein paar RMB auf und kann dann frei fahren. Vor der ubahn an einen Scanner, nach der ubahn wieder und das Geld wird automatisch abgebucht. Eine Fahrt durch die halbe Stadt kostet umgerechnet ca. 50cent.

Da wären wir beim Preis. Beijing ist nicht so billig wie man durch chinesische Billigimporte vermuten könnte. Es ist hier und da zwar günstiger (bei Zigaretten und Ubahn z.B.) aber es gibt auch eine wachsende chinesische Oberschicht die nicht geizt und zeigt was sie hat. Ich habe zumindest noch nie so viele italienische und deutsche Luxuskarren auf einem Haufen gesehen.

last but not least . . .

der Mensch. Der Chinese als solcher ist ein Freundlicher. Egal ob auf der Arbeit (dauert wie bei uns geregelte 40 Stunden pro Woche) oder auf der Straße. Es hapert zwar auf der Straße häufiger mal am Englisch, was die leute allerdings nicht aus der Ruhe bringt. Ich habe an diversen Imbissen mit Händen und Füßen bestellt, war jedes mal überrascht was ich am Ende bekomme, aber nie negativ.

Es gibt noch so viel mehr was ich schreiben könnte aber der Platz auf der Seite geht langsam aus. Also möchte ich nur sagen: China ist eine Reise wert! Machen! Ganz dringend!

Christoph Niemann

Autor: Christoph Niemann

Christoph hat bei uns im Bereich Managed Service begonnen und sich dort intensiv mit dem internen Monitoring auseinandergesetzt. Seit 2011 ist er nun im Consulting aktiv und unterstützt unsere Kunden vor Ort bei größeren Monitoring-Projekten und PERL-Developer-Hells.

Neues vom Reporting

Jaspersoft Studio

Jaspersoft Studio

Lange Zeit war iReport die führende Lösung, wenn es daran ging Reportingaufgaben für Icinga im speziellen und im Allgemeinen zu übernehmen. Dieses Kapitel wird allerdings im kommenden Monat geschlossen, da iReport  ab Ende Dezember nicht mehr aktiv weiterentwickelt wird. Das bedeutet zwar nicht, dass iReport sofort verschwindet, aber mehr als ein paar Bugfixes für bestehende Probleme wird es nicht mehr geben.
Eine gute Gelegenheit also, sich mal das nächste Tool zum erstellen und managen von Reports anzuschauen.

Der designierte Nachfolger von iReport nennt sich Jaspersoft Studio und weist ein paar unterschiede zu iReport auf.
Während iReport auf der IDE Netbeans basierte, basiert Studio auf Eclipse. Beide Programme kann man zwar als Bundle herunterladen, es lohnt sich aber gerade bei Eclipse sich die Software über den integrierten Marketplace zu besorgen, weil man so eine neuere Version von Eclipse erhält.

Einige Verbesserungen von Studio sind der übersichtlichere SQL-Designer und eine bessere Integration von Bibliotheken und Subreports. Neuerdings muss man nur noch auf speichern klicken, und der einmal publizierte Report wandert in aktualisierter Form direkt wieder auf den JasperServer.

Und zum Schluss die wichtigste Verbesserung: Alle Buttons sind jetzt beschriftet und mit Quicktips erklärt!

Christoph Niemann

Autor: Christoph Niemann

Christoph hat bei uns im Bereich Managed Service begonnen und sich dort intensiv mit dem internen Monitoring auseinandergesetzt. Seit 2011 ist er nun im Consulting aktiv und unterstützt unsere Kunden vor Ort bei größeren Monitoring-Projekten und PERL-Developer-Hells.

Monitoring Plug-Ins selbst gemacht

Es heißt ja immer mit Icinga ließe sich alles überwachen. Prinzipiell ist das auch richtig, aber manchmal gibt es einfach noch nicht das passende Plug-In. Da es aber schon Tausende Plug-Ins auf exchange.icinga.org gibt, kann es ja nicht so schwer sein ein eigenes Plug-In zu schreiben.

Was macht das Stück Code zum Plug-In?

Kürzeste Antwort: Der Exit Code. Jedes Nagios/Icinga/Shinken/Naemon Plug-In hat 4 Exit Codes. Diese Rückgabewerte lassen sich mit “echo $?”, nach dem Ausführen, überprüfen. Sie haben folgende Bedeutung: 0=OK, 1=Warning, 2=Critical, 3=Unknown

schulung_icinga2Was gibt es noch zu beachten?

Plug-Ins können in jeder auf dem jeweiligen System zur Verfügung stehenden Sprache geschrieben werden. Für einfache Fälle und schnelle Hilfe bietet sich Shell-Skripte an. Schöner sind oft aber perl oder python.

Ich möchte heute einmal ein schönes Shell Plugin schreiben. Um das umzusetzen lohnt sich als erstes ein Blick in die Monitoring Plugins Development Guidelines. Dort kann man unter anderem folgende Voraussetzungen für ein Plugin nachlesen.

Params

  • Es muss bei -h oder –help eine Hilfe bereitstellen
  • Es muss bei -v oder –verbose mehr Output liefern
  • Schwellwerte können als range definiert werden.
    “-c 5:  ” bedeutet z.B. alles kritisch, was unter 5 ist. Praktischerweise übernimmt die Interpretation der Ranges eine Funktion aus der utils.sh. Sie ist Bestandteil des Monitoring Plug-In Pakets

Perfdata

Plugins können Performancedaten ausgeben. Mit Hilfe dessen ist es tools wie pnp4nagios, ingraph oder graphite möglich Kurven über die ermittelten Werte zu zeichnen. Performancedaten müssen in folgendem Format vorliegen:

| ‘label’=value[UOM];[warn];[crit];[min];[max]

Also z.B. ‘Drive C’ = 15GB;5;3;0;20 bedeutet folgendes: Drive C hat noch 15GB frei. Bei 3 bzw. 5 GB wird’s kritisch bzw. gewarnt.

Obacht: Es gibt nur bestimmte Maßeinheiten, die hier nachgelesen werden können. Diese sind s(Sekunden), %(Prozent), B (Bytes, auch MB KB usw) und c (counter)

Los geht’s

Nicht lang schnacken sondern losgelegt. Wir schreiben ein Plugin, dass die Files in /tmp zählt. Auf die gleiche Weise lassen sich auch alle anderen Plugins schreiben die auf zählbaren Werten basieren. (more…)

Christoph Niemann

Autor: Christoph Niemann

Christoph hat bei uns im Bereich Managed Service begonnen und sich dort intensiv mit dem internen Monitoring auseinandergesetzt. Seit 2011 ist er nun im Consulting aktiv und unterstützt unsere Kunden vor Ort bei größeren Monitoring-Projekten und PERL-Developer-Hells.

NSClient++ und darüber hinaus

nsclient-logoFür viele verschiedene Anwendungsgebiete bringt NSClient++ schon Funktionen mit, mit Hilfe derer man direkt und ohne Probleme Dinge wie Festplattenauslastung, CPU, Memory, Services und Logs abfragen kann.

Heute soll es einmal um die Themen gehen, die der NSClient nicht “out of the box” beherrscht.  Vor allem im Bereich der Client Überwachung gibt es hier noch ungenutztes Potential:

1.) Security Center

Mit Hilfe von WMI ist es auf einfache Weise möglich auf Windows Clients ab Vista zu überprüfen wie der Antivirus Status ist. Hierfür gibt es einen namespace “root\SecurityCenter2” mit der Klasse AntiVirusProduct. Hier kann man den Schlüssel ProductState überprüfen. Die Interpretation dieses Wertes ist nun leider nicht durchgängig Dokumentiert und sollte gegen das eigene Antivirus Produkt nochmal gegen geprüft werden.

Folgende Artikel können hierbei hilfreich sein:

2.) Windows Updates

Hierfür gibt es ein Powershell Plugin, dass einem beantwortet ob Updates anstehen oder ein reboot seiner Durchführung harrt. Da es mit dem Original Plugin von Jules ein paar bekannte Performance Probleme gibt empfehle ich hier die verbesserte Version von redbranch[Jonny]

3.) GPO – Gruppenrichtlinien

Bei den Gruppenrichtlinien handelt es sich um ein Server/Client basiertes System zur Verteilung von Windows Konfigurationsobjekten. Auf dem Client sollte man daher überprüfen, ob der Service zur Umsetzung dieser Konfigurationsanweisungen überhaupt läuft. Das lässt sich bequem mit dem NSClient++ erreichen indem man den Service “gpsvc” überprüft. Ob wirklich alle Richtlinien umgesetzt wurden kann man am besten auf dem Server überprüfen. Dazu im nächsten Teil der Serie mehr.

WMI reparieren

Sollte es einmal Probleme mit dem Windows Management Intrumentarium geben und man weiß nicht wie dieses zu reparieren ist, sollte man sich mal das Diagnose- und Repair-Tool von Microsoft hierfür anschauen.

 

Im nächsten Teil dieser Serie geht es um Advanced Windows Server Monitoring. Insbesondere wird es hierbei um GPOs und Windows Updates aus der Sicht der Servers gehen.

Christoph Niemann

Autor: Christoph Niemann

Christoph hat bei uns im Bereich Managed Service begonnen und sich dort intensiv mit dem internen Monitoring auseinandergesetzt. Seit 2011 ist er nun im Consulting aktiv und unterstützt unsere Kunden vor Ort bei größeren Monitoring-Projekten und PERL-Developer-Hells.