Erweiterungen programmieren für Checkmk [Deutsch]

Einführung in die Programmiersprache Python und in Erweiterungen für Checkmk programmieren.

Wer eigene Checkplugins und andere Erweiterungen für Checkmk schreiben will, kommt um die Sprache Python nicht herum. Aufbauend auf bereits vorhandenen Kenntnissen im Bereich Scripting und Python, erweitert diese Schulung Ihre Python-Grundlagen und führt in die Interna von Checkmk ein.

Dazu haben wir die Schulung in zwei Teile geteilt. Im ersten Teil erläutern und vertiefen wir relevante Python-Konzepte. Im zweiten Teil wenden wir die erworbenen Fähigkeiten an, um neue Checkplugins und ggf. andere Erweiterungen zu programmieren (wie z.B. Inventory- oder Bakeryplugins). Unsere Zielstellung ist, eigens entwickelte Checkplugins und dazugehörige Komponenten (wie z.B. Konfigurierbarkeit in der Benutzeroberfläche) als abgeschlossenes Erweiterungspaket (MKP) zu erstellen.

Wenn Sie keine Erfahrung in den Bereichen Scripting und Python haben, raten wir von diesem Kurs ab. Python ist jedoch eine sehr zugängliche Sprache und auch für Neueinsteiger gut im Selbststudium zu erlernen.

Folgende Grundlagen setzen wir für die Kursteilnahme voraus:

  • Syntax
  • Elementare Datentypen (str, bytes, int, float, bool, None)
  • Funktionsdefinitionen und -aufrufe
  • Kontrollstrukturen (for- und while-Schleifen, if-else-Bedingungen)

Kursinhalte

Python-Werkzeugkasten

  • Einstieg via String-Formatierung
  • Kleine Wiederholung im Bereich Funktionen
  • Comprehensions
  • Generatoren
  • Ausnahmebehandlung
  • Nützliche Bibliotheken (z.B. json, argparse und sys)

Konzepte der Datenerhebung und -evaluierung in Checkmk

  • Akquirierung der Rohdaten: Agenten, Agentenplugins und SNMP
  • Aufbereitung der Rohdaten
  • Verarbeitung der Daten in Check- und Inventoryplugins

Sektions-, Check- und Inventoryplugins

  • Parsefunktion
  • Discoveryfunktion
  • Checkfunktion
  • Inventoryfunktion
  • Hilfsfunktionen (Überprüfen von Schwellwerten, Ratenberechnung, Mittelung, …)
  • Manpages
  • Dokumentation

Erweiterungen für die GUI

  • Konfigurierbarkeit von Check- und Inventoryplugins in der Benutzeroberfläche
  • Metriken, Graphen und Perf-O-Meter

Paketierung mit MKP

  • Idee der Checkmk-Pakete
  • Erstellen und Verwalten von Paketen
  • Checkmk-Exchange

Weiterführende Themen (je nach Bedarf)

  • Bakeryplugins
  • Spezialagenten (API-Integrationen)
  • Clusterfähige Checkplugins
  • Besondere Checks (lokale und aktive Checks)
  • Migration von Legacy-Checks

Details

Sprache: Deutsch

Dauer: 5 Tage

Mindestteilnehmeranzahl: 3

Zielgruppe:
Checkmk-Administratoren

Voraussetzungen: Nagios und Checkmk, keine Python-Kenntnisse erforderlich, aber erste Programmiererfahrung mit kleineren Programmen.

Training anfragen