pixel
Seite wählen

Mein Praktikum bei Netways II

von | Mai 12, 2016 | Icinga

Hallo liebe Leser,
nachdem ich jetzt schon knapp den zweiten Monat bei Netways bin, ein kleines Status Update zu meinem Praktikum.
Von den Schulungsunterlagen ging es direkt weiter zu meiner eigentlichen Praktikumsaufgabe, Icinga2 die Nutzung von UDP ermöglichen. Kurz vorweg, es gibt zwei relevante Transferprotokolle zur Datenübertragung: TCP und UDP. Dem geneigten Leser werden diese sicher bekannnt sein, dennoch eine knappe Erklärung.
Werden zum Beispiel große Datenpakete übertragen, werden diese zunächst in Kleinere zerlegt. Im Fall von TCP werden im Header der Teilpakete, die Sequenznummern für deren Reihenfolge und eine Prüfsumme hinterlegt. Werden Dateien vom Sender zum Empfänger übermittelt, erfolgt pro eingegangenem Paktet eine Eingangsbestätigung des Empfängers. Erst wenn der Sender diese erhält, wird das nächste Paket versand. Sollte ein Paket nicht korrekt ankommen, wird nach einer zuvor festgelegten Wartezeit das Paket erneut gesendet.
UDP hingegen verzichtet auf das Verifizieren des erfolgreichen Datenempfangs. Wird ein Paktet als fehlerhaft befunden, muss es erneut  gesendet werden. Die Vorteile hier liegen ehr darin, dass diese Übertragung performanter ist und wird deshalb vornehmlich bei Audio und Videoübertragung genutzt, da fehlerhafte Pakete hier nicht so stark ins Gewicht fallen.
Doch zurück zu Icinga: dieses nutzt zum Versenden von Logdaten GELF ( Graylog Extended Log Format). Nun gibt es einige Empfänger wie Logstash, die zwar GELF verstehen, jedoch keine Kommunikation eingehen können, da sie unterschiedliche Übertragungsprotokolle beutzten (hier: Icinga2 sendet TCP;  Logstash empfängt nur UDP).

Meine Aufgabe ist es, diese Kommunikation zu ermöglichen.Dafür habe ich mich Anfangs mit dem  Elastic Stack beschäftigt, der eine tolle Art und Weise bereitstellt, Daten zu Sammeln, Auszuwerten und zu Visualisieren.
Zig geschossene VMs später, bastel ich nun endlich selbst am Code von Icinga2. Was mich Anfangs sehr eingeschüchtert hat, ist Icingas “Größe” (locs) und die Anzahl der Dependencies der einzelnen Klassen. Dadurch, dass die Kollegen im Dev selbst genug Tickets zu bearbeiten haben, habe ich mich selbst in den Aufbau des Code eingelesen. Glücklicherweise wird mir jedoch kein Arbeitstempo diktiert, sondern man lässt mir Zeit, mich mit der Materie zu beschäftigen und zu experimentieren.
Ich schätze es wirklich, als Praktikant diese Freiheit zu besitzen 🙂
Danke fürs Lesen!

Mehr Beiträge zum Thema Icinga

Icinga Camp Berlin 2022

Das erste Icinga Camp nach 2019 fand nun fast 3 Jahre später statt. NETWAYS hat als Sponsor und Hilfe in der Organisation zusammen mit der Icinga das Event zusammen auf die Beine gestellt und zu einem vollen Erfolg gemacht. Es wurde der aktuelle Stand der Dinge...

Icinga for Windows Preview: Visualisiert eure Metriken!

Icinga hat in seinem Blogpost mitgeteilt, dass es mit Icinga for Windows v1.10.0 einige Änderungen an den Performance Metriken geben wird. Hier wollen wir einmal grob zusammenfassen, worum es geht und welche Auswirkungen diese Änderungen haben. Für alle Details ist...

Icinga DB v1.0 released

Das Icinga Team hat nach langjähriger Entwicklungszeit die Icinga DB veröffentlicht. Damit steht Icinga ein neues Backend zur Verfügung, welches mittelfristig die IDO ablösen wird. Was ist die Icinga DB? Die Icinga DB ist nicht eine zentrale Komponente, sondern...

ServiceNow Data Asset Import mit dem Director

Hallo Liebe Leser dieses Blogs, nach einer weile der Abwesenheit hab ich heute die Freude ihnen etwas näher bringen zu dürfen. Da viele unserer Kunden inzwischen auch ServiceNow verwenden und diese auch als Assetmanagement / CMDB verwenden. Kommt doch die Frage auf...