Mit coshsh Nagios automatisieren (2)

Daten-Zapfsäule

Der erste Teil unserer Workshopserie nahm den Nagios-Datensammler coshsh in Betrieb. Im zweiten Teil wird coshsh über den Einsatz von Details individueller und wir zeigen, wie sich eine bestehende CMDB als Datenquelle nutzen lässt. Abschließend betrachten wir die Vorteile von Filtern und Contacts in sehr großen Infrastrukturen.
Eine Vielzahl mobiler Endgeräte sowie immer mehr Internet-of-Things-Devices bevölkern die Unternehmensnetze. Für Administratoren bedeutet dies, einen wahren ... (mehr)

Bisher haben wir nur Standard-Linux-Dienste generiert – neben der Linux-Klasse und -Template liegen in OMD auch die Windows-Pendants vor.

Erweitern von coshsh

Um weitere Applikationen und Betriebssysteme zu automatisieren, gehen Sie folgendermaßen vor:

- Bezeichnung für den Typ der Applikation wählen. Diese ist für die "__mi_ ident__"-Funktion erforderlich.

- Erstellen der Klasse.

- Auswahl geeigneter Details.

- Erstellung des Jinja2-Templates.

Neben der Typbezeichnung spielt auch der Name der Applikation eine Rolle, denn mit dessen Hilfe werden mehrere Applikationen des gleichen Typs auf einem Host unterschieden. Ist der Typ beispielsweise "oracledb", so bietet sich an, als Name die jeweilige SID zu nehmen. Diesen lassen Sie dann in die Service Description einfließen.

Aufnahme von Cisco IOS

Wenn die Datasource beim Auslesen der CMDB zusätzlich zu Linux auf Netzwerkgeräte von Cisco stößt, wird daraus eine Datenstruktur resultieren, die neben einem "host_name"-Key wie gehabt einen "name"-Key mit dem Wert "os" enthält. Das "type"-Feld wird diesmal ein String sein, der höchstwahrscheinlich "IOS" enthält. Sie müssen nun eine kleine Python-Datei erstellen, die eine Klassendefinition mit Verweisen auf Templates enthält sowie eine "__mi_ident__"-Funktion, die auf eine Cisco-typische "name/type"-Kombination mit einer passenden Klasse reagiert.

Diese Cisco-Klasse soll ein Default-Template referenzieren und als Besonderheit noch ein Template, das BGP-spezifische Service-Definitionen enthält. Letzteres soll dann der Fall sein, wenn das Cisco-Objekt ein Attribut namens "bgp" besitzt. Listing 1 zeigt die Datei "os_cisco.py. Abgelegt wird die Datei unter

...

Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023