Check_MK: Export hosts to SecureCRT Session Manager

This script exports over an Check_MK View hosts and imports them in SecureCRT Session Manager. Get source code: https://github.com/lanbugs/check_mk_to_securecrt_export The bundled python of SecureCRT not support urllib / urllib2 (see https://forums.vandyke.com/showthread.php?t=13127). I don`t want to modify the bundled python version of SecureCRT, so i have decided to put the code in an extra binary. The advantage … Weiterlesen

Ansible AWX/Tower Check_MK inventory plugin

Das Script kann als Inventory Plugin verwendet werden für AWX / Tower um Hosts von Check_MK in AWX / Tower zu importieren. Dazu muss ein View angelegt werden mit folgenden Spalten: Host, IPv4 address, Host Tags Der Automation User muss Rechte auf den View und die entsprechende Contact Group haben.

Check_MK: TG-Notify – Telegram Notification Bot with Callback for ACK & Downtime

TG-Notify ist eine von mir geschriebene Erweiterung für Check_MK welche Notifications über Telegram ermöglicht und über Callback Acknowledge und Downtimes setzen kann für Hosts/Services. Sourcecode: https://github.com/lanbugs/tg-notify Status/ Version: 0.1 beta Download als MKP: folgt Lizenz: GPLv2 Vorteile: Telegram ist kostenlos Telegram ist für alle gänigen Mobile und PC OS verfügbar -> https://telegram.org/apps Telegram arbeitet mit einer … Weiterlesen

Check_MK: Problem mit Apache HTTP Proxy – SELinux blockt Reverse Proxy Verbindung zur Check_MK Instanz

Habe gerade auf ein frisch installiertes CentOS 7.4 Check_MK 1.4.0p19 installiert. Nach dem Start einer OMD Instanz kommt nur die Fehlermeldung: OMD: Site Not Started You need to start this site in order to access the web interface. Im Apache Log ist folgendes zu sehen: [Mon Dec 04 08:50:48.097245 2017] [proxy_http:error] [pid 20887] [client x.x.x.x:31372] … Weiterlesen

Check_MK: Automation via Web Service

Wenn man Dinge automatisieren möchte kann man das über die Webservices von Check_MK machen. Dazu gibt es einen schönen Artikel von Check_MK selbst: https://mathias-kettner.de/checkmk_multisite_automation.html Leider ist es aus der URL nicht leicht rauszufinden welche Variablen man mitgeben muss um z.B. einen Service zu Ack’en. Es gibt aber einen Trick um das einfach herauszufinden. In den Global … Weiterlesen

Check_MK: Agent Monitoring via SSH

Falls eine unverschlüsselte Abfrage des Check_MK Agemten nicht in Frage kommt ist es möglich den Agenten über SSH abzurufen. SSH Key erzeugen in der OMD Umgebung OMD[dev1]:~$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/omd/sites/dev1/.ssh/id_rsa): Created directory ‚/omd/sites/dev1/.ssh‘. Enter passphrase (empty for no passphrase): Enter same … Weiterlesen

Python: Snippet – Python Code aus Textdateien ausführen/importieren

Check_MK speichert alle Daten in einfachen Dateien direkt als ausführbaren Python Code. Um die abgelegten Dictionarys etc. in seinen eigenen Skripten weiterverwenden zu können kann man sich die mit eval() oder exec() laden. eval() kann verwendet werden um z.B.  ein Dictionary in eine Variable zu laden, exec() kann auch ganze Funktionen etc. laden. Beispiel eval(): dict.txt … Weiterlesen

Check_MK: Inventory erweitern mit SNMP Daten

Check_MK hat seit Version 1.2.5i1 das Feature Inventory an Board. Per Default werden von Systemen CPU, Memory, Harddisks, Softwarepakete und vieles mehr eingesammelt. Die Anleitung dient dazu das Inventory zu erweitern und eigene Informationen per SNMP einzusammeln und per View durchsuchbar zu machen. Ich habe mittlerweile mehrere eigene Ergänzungen gemacht, darunter CDP Neighbors, Dot1X Authentications, … Weiterlesen

Check_MK: Werte simulieren in einem SNMPwalk

Wer in Check_MK mittels gespeicherter SNMP Walks Checks entwickelt möchte unter umständen auch gerne sich ändernde Werte haben und keine statischen aus dem Dump. Check_MK hat 3 eingebaute Funktionen um steigende Counter etc. zu simulieren. Ausschnitt aus dem Check_MK Code lib/python/cmk_base/agent_simulator.py (GPLv2): def agentsim_uptime(rate = 1.0, period = None): # period = sinus wave if period … Weiterlesen

Check_MK: Cisco MLS QoS Check

Cisco MLS QoS Check ist ein Check_MK kompatibler Check zum Überwachen der der Hardware Queues auf Cisco Switches. Per Default werden keine Queues / Thresholds überwacht, diese müssen durch eine WATO Rule definiert werden. Für jedes Interfaces wird ein Service angelegt, mehrere Queues auf einem Interface werden in einem Service dargestellt. Die Queues werden einzeln … Weiterlesen

Check_MK: Livestatus Schnittstelle

Check_MK stellt alle Informationen per Livestatus Schnittstelle bereit. So gut wie alles was man auf der Webseite des Monitorings sehen kann kommt aus Livestatus. Der Sprachsyntax für Abfragen ist LQL -> Livestatus Query Language. Per Default ist die Livestatus Schnittstelle nur auf dem Host selbst über einen Socket abrufbar. Es gibt aber die Möglichkeit per … Weiterlesen

Check_MK: Cluster Checks bauen

Hier ein kleines Beispiel wie man einen Cluster Check implementieren kann. Testumgebung: 3 Nodes node1,node2 und node3 welche als Clusterobjekt cluster zusammengefasst sind. Die Daten kommen von Piggybacks. Clustercheck ist mycluster und ist ein Beispiel Check. Schritt 1: Nodes anlegen In WATO 3 Nodes anlegen mit der IP 127.0.0.1 (Testumgebung, Daten kommen von Piggybacks), Agent: … Weiterlesen

DNS Blacklist Check

Check um zu Überprüfen ob ein Mailserver auf einer Blacklist ist. Der Check lässt sich auch in Check_MK einbinden, dazu das Script in ~/local/lib/nagios/plugins/ ablegen und eine Regel „Classical active and passive Monitoring checks“ für den Mailserver erstellen. Eine native Check_MK Implementierung folgt noch 😉 #!/usr/bin/env python # -*- encoding: utf-8; py-indent-offset: 4 -*- # # … Weiterlesen

Check_MK: Host custom variables

Check_MK bietet auch die Möglichkeit die Host Variablen zu erweitern um z.B. ein Host Description Feld hinzuzufügen. Die Erweiterung muss in ~/local/share/check_mk/web/plugins/wato/ abgelegt werden. Die Dateiendung ist zwingend .py. OMD[dev1]:~/local/share/check_mk/web/plugins/wato$ cat host_custom_vars.py #!/usr/bin/env python declare_host_attribute( NagiosTextAttribute( # Sektion / Gruppe „MY_HOST_CUSTOM_VARIABLES“, # Variable mit beginnenden Unterstrich „_HOST_MAGIC“, # Feldbeschreibung _(„Host Magic“), # Hilfe _(„Hilfe“), ), … Weiterlesen

Check_MK: Service custom variables

Die Service Variablen lassen sich genau so Erweitern wie die Host Variablen. Dazu muss man eine neue Definition erstellen im Folder ~/local/share/check_mk/web/plugins/wato/. Die Dateiendung muss .py sein. #!/usr/bin/env python register_rule( # Sektion „Test“, # Variable „extra_service_conf:_test_test“, # Parameter TextUnicode( title = _(„TEST TEST“), help = _(„Test test“), size = 80, attrencode = True, ), itemtype … Weiterlesen

Check_MK: yield statt return in der Check Funktion

Check_MK erwartet bei der Check Funktion ein Tuple mit 2 (ohne Performance Daten) bzw. 3 Werten (mit Performance Daten). <STATUS>, <MESSAGE>, <PERFOMANCEDATA> Wenn man in einem Service mehrere Werte aggregieren möchte z.B. man hat mehrere Lüfter im System möchte aber nicht für jeden einen eigenen Service sondern nur einen einzigen, so muss man die Werte … Weiterlesen