OSMC Hackathon: Feature complete?

Our fourth OSMC hackathon started fully packed after an overwhelming conference – free form, and our introduction round provided many interesting topics to keep up with.
MQTT, OpenNMS, NSClient++, Elastic/Graylog, Migration from Nagios to Icinga 2, Zabbix, Prometheus, MySQL, ARM packages, Notification issues, Golang frameworks, Ansible, Puppet, Icinga Web 2 modules, Vsphere, Director, Maps, … holy moly, that’s super effective for just one day. Missed it? Join us next year!
Jens Schanz from Müller (Hint: The environment with 17k hosts and 200k services) mentioned a problem with missing notifications in his OSMC talk on Wednesday. So we did a deep dive in the production environment into one-time delayed notification without recovery for their ticket system integration. Turns out, that we’ve found a bug in Icinga, and also a quick workaround for production. Jens also knows how to use the debug console for future troubleshooting. Real #monitoringlove ❤️
Gian Arb from InfluxDB joined for the first hours, so “everyone who has questions, be quick”. Maybe he’ll stay longer next year, since he’s said that OSMC feels like home already. Rihards Olups shared Zabbix insights and focussed on improving MySQL monitoring. Our friends Tarus Balog and Ronny Trommer from OpenNMS looked into pushing sensor values into MQTT and OpenHAB, Tarus had his first success 🙂 Julien open-sourced an AMPQ adapter which forwards alerts from Prometheus.
Nicolai Buchwitz is building Icinga 2 for ARM hardware, and asked me to look into failing tests during the Debian package build. This turned out to be a very deep analysis with memory access violations and specific gcc and libstdc++ versions on this hardware, x86 works just fine. 50% are solved, more investigation needed.
Michael Medin implemented a huge new feature: Native Powershell support in NSClient++.  Cannot wait to see this being released! Dave Kempe started working on translation for the famous Icinga 2 book, together with Thomas Mr. Icinga Book. Or as they say: “Translating Austrian to Australian (English) …” 😉 Thilo jumped right into Jinja templates for the Icinga Ansible modules, and also offered help on enhancing the graph integration in mail notifications.
Noah and Jean played with the Gin library in Golang, providing an HTTP framework. They also discussed the state logic in Icinga 2 together with Eric and our friends from Syseleven, Max and Maurice. Max also did a deep-dive into new enhancements for Icinga Web 2 with more advanced scheduled downtime options. Together with Eric, he found a bug in the forms too. First time hackathon attendees discovered how to write Icinga Web 2 with the help from Eric.
The Map module for Icinga Web 2 received a docs patch from Jens, while Thomas Mr. Director looked into improvements for the business process module, Director, Cube (PR from Nicolai) and certainly the newly released Vsphere module. Last but not least, Flo was for the rescue and helped Jens to modify his Batman theme for Icinga Web 2. Dave also shared the color blind theme for Icinga Web 2 with Jennifer, and to mention too, Jean helped Jens with a DNS/network problem on Icinga startup.
It is INCREDIBLE what we achieved together as OSMC hacking family. We are never feature complete, always exploring and developing new things. See you next year, mark November 4th–7th, 2019 in your calendar!

Michael Friedrich
Michael Friedrich
Senior Developer

Michael ist seit vielen Jahren Icinga-Entwickler und hat sich Ende 2012 in das Abenteuer NETWAYS gewagt. Ein Umzug von Wien nach Nürnberg mit der Vorliebe, österreichische Köstlichkeiten zu importieren - so mancher Kollege verzweifelt an den süchtig machenden Dragee-Keksi und der Linzer Torte. Oder schlicht am österreichischen Dialekt der gerne mit Thomas im Büro intensiviert wird ("Jo eh."). Wenn sich Michael mal nicht in der Community helfend meldet, arbeitet er am nächsten LEGO-Projekt oder geniesst...

MSSQL databases from Icinga Web 2

Disclaimer: This guide is only for RedHat and CentOS 7, using the PHP SCL packages with the official icingaweb2 package.
Often when we help customers implement Icinga 2, Icinga Web 2 and Director, they use custom imports to pull in data to their monitoring config. Whenever data is in need to be pulled from a MSSQL database, this can be challenging. Their are multiple guides around the Internet, even from Microsoft.
This post should clear things how to achieve this with the official Icinga packages and their requirements.

Requirements

Basic Installation Icinga Web 2

First of all icingaweb2 and PHP needs to be installed – usually you should have this already…

# on RedHat
subscription-manager repos --enable rhel-7-server-optional-rpms
subscription-manager repos --enable rhel-server-rhscl-7-rpms
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# on CentOS
yum install centos-release-scl epel-release
yum install httpd icingaweb2
systemctl start httpd.service
systemctl enable httpd.service
echo "date.timezone = Europe/Berlin" > /etc/opt/rh/rh-php71/php.d/timezone.ini
systemctl start rh-php71-php-fpm.service
systemctl enable rh-php71-php-fpm.service

Please also see the official documentation.

MSSQL PDO driver for PHP

Their are multiple ways to install a MSSQL compatible driver, but with icingaweb2 and the ZendFramework below in mind, we need to use pdo_dblib with FreeTDS as driver implementation. I prepared a RPM spec file for you to build and install, it is based on the php-extras packages shipped with Fedora’s EPEL, only updated for PHP 7.1 SCL.
You can setup a small RPM build environment on a RedHat or CentOS machine with the required repositories.

sudo yum install rpm-build rpmdevtools yum-utils gcc gcc-c++ scl-utils scl-utils-build
rpmdev-setuptree
cd ~/rpmbuild/SPEC
wget https://github.com/lazyfrosch/rpm-php-extras/raw/epel7/php-extras.spec
cd ../SOURCES
spectool -gf ../SPECS/php-extras.spec
cd ~/rpmbuild
rpmbuild -bs SPECS/php-extras.spec
sudo yum-builddep SRPMS/rh-php71-php-extras*.src.rpm
rpmbuild --rebuild SRPMS/rh-php71-php-extras*.src.rpm

With the built RPM files under RPMS/ you are good to go to your Icinga machine. Basically you only need to copy rh-php71-php-mssql*.rpm over and install it there.

yum install rh-php71-php-mssql*.rpm
scl enable rh-php71 -- php -m

After restarting php-fpm the driver has been loaded.

systemctl restart rh-php71-php-fpm.service

Patching Icinga Web 2

In Icinga Web 2.5.1 and before there is an error in detecting MSSQL correctly, detection only works in PHP 5.x. A fix has been suggested in PR#3400.
To manually patch this, you only need to fix a single line in /usr/share/php/Icinga/Application/Platform.php

--- /usr/share/php/Icinga/Application/Platform.php.orig 2018-03-27 06:02:59.454240788 -0400
+++ /usr/share/php/Icinga/Application/Platform.php 2018-03-27 00:38:15.967639651 -0400
@@ -351,7 +351,7 @@
 */
 public static function hasMssqlSupport()
 {
- return static::extensionLoaded('mssql') && static::classExists('Zend_Db_Adapter_Pdo_Mssql');
+ return static::extensionLoaded('pdo_dblib') && static::classExists('Zend_Db_Adapter_Pdo_Mssql');
 }
 /**

I hope this helps you getting started, feel free to ask questions in the comments.

NETWAYS offers professional support for Icinga and other Open Source tools, check our Website about Support.
The image used in this article is from johnmartel.blogspot.de, we assume fair use by mentioning the author.

Markus Frosch
Markus Frosch
Principal Consultant

Markus arbeitet bei NETWAYS als Principal Consultant und unterstützt Kunden bei der Implementierung von Nagios, Icinga und anderen Open Source Systems Management Tools. Neben seiner beruflichen Tätigkeit ist Markus aktiver Mitarbeiter im Debian Projekt.

Icinga2 API und BitBar auf MacOs

preview1Wir wollen APIs, warum? Weil sie schnell, einfach zu integrieren und zu bedienen sind. Nun hat Icinga2 eine API und es entstehen ganz viele Möglichkeiten diese zu nutzen. Wir bauen uns Dashboards mit Dashing oder zeigen den Status von Hosts in Foreman an.
Ich bin letztens über ein Tool BitBar gestolpert, dieses Tool kann mit einfachen Skripten die eigene “Mac OS X menu bar” erweitern. Hierfür braucht es nur die richtige Formatierung der Ausgabe und BitBar generiert ein weiteres Dropdown Menu.
Ich hab mir die Icinga2 API zu nutze gemacht und eine kleine Erweiterung gebaut um mir den Status von Icinga2 in meiner Menubar anzuzeigen.
Im Menu wird dann der globale Status entweder in grün oder rot, abhängig davon ob Hosts “down” und “unhandled” sind, angezeigt.
Der Aufruf dafür kann der Adresszeile im Browser entnommen werden.
/icingaweb2/monitoring/list/hosts?host_state=1&sort=host_severity&host_unhandled=1
Wenn wir am Ende dann ein “&format=json” an die URL hängen, haben wir ein gängiges Format um das Ergebnis in jeglichen Applikationen zu verwenden.
[{"host_icon_image":"","host_icon_image_alt":"","host_name":"web01","host_display_name":"web01","host_state":"1","host_acknowledged":"0","host_output":"DOWN","host_attempt":"1\/3","host_in_downtime":"0","host_is_flapping":"0","host_state_type":"1","host_handled":"0","host_last_state_change":"1474556541","host_notifications_enabled":"1","host_active_checks_enabled":"0","host_passive_checks_enabled":"1"},
Mehr dazu gibts auf Github unter icinga2_api_examples oder natürlich in der Icinga2 Dokumentation.

Thilo Wening
Thilo Wening
Senior Consultant

Thilo hat bei NETWAYS mit der Ausbildung zum Fachinformatiker, Schwerpunkt Systemadministration begonnen und unterstützt nun nach erfolgreich bestandener Prüfung tatkräftig die Kollegen im Consulting. In seiner Freizeit ist er athletisch in der Senkrechten unterwegs und stählt seine Muskeln beim Bouldern. Als richtiger Profi macht er das natürlich am liebsten in der Natur und geht nur noch in Ausnahmefällen in die Kletterhalle.

Icinga Web 2 – Das gefällt jedem

Und wenn doch nicht, kann man es ganz einfach seinen eigenen Design-Vorstellungen entsprechend anpassen, denn darum geht es heute:

Theming

Wer es bis jetzt noch nicht entdeckt hat, darf nun erst einmal im Menü auf seinen Benutzernamen klicken und die Konto-Einstellungen öffnen. Dort versteckt sich seit v2.1.1 eine Möglichkeit das Theme, in dem Icinga Web 2 erstrahlt, zu ändern. (Sofern diese Möglichkeit nicht vom Administrator deaktiviert wurde.) Diese Themes werden teilweise von Icinga Web 2, teilweise von Modulen bereit gestellt können aber auch vom System-Administrator eingepflegt werden.
Von Haus aus stellt aktuell nur Icinga Web 2 zwei Themes bereit: High-Contrast und Winter.
Das High-Contrast Theme, wie der Name schon suggeriert, erhöht den Kontrast der Farben in Icinga Web 2. Es ist dafür gedacht die Barrierefreiheit zu erhöhen. Das Winter Theme hingegen ist einfach nur eine Spielerei für die kalten Winter-Tage.
Würde es aber heute nur um die einfache Nutzung der Themes gehen, wären wir nun schon wieder am Ende angelangt. Aber das wäre ja langweilig und für viele sicher auch nichts neues, nicht? Deshalb:

Eigene Themes erstellen

Erst einmal ein paar Grundsätze:

  • Globale Themes liegen hier: icingaweb2-installation/public/css/themes/
  • Modul Themes liegen hier: modul-installation/public/css/themes/
  • Der Name eines Themes wird direkt vom Dateinamen abgeleitet
  • Themes müssen die Datei-Endung “less” haben
  • Geschrieben wird ein Theme mit CSS oder LESS

Auf CSS oder LESS gehen wir nun nicht näher ein, das wäre zu viel des Guten. Interessant allerdings dürfte sein, wie Stylesheets in Icinga Web 2 behandelt werden und was in den einzelnen bereits mitgelieferten Dateien enthalten ist.

Stylesheets in Icinga Web 2

Alle Stylesheets in den oben erwähnten Verzeichnissen, werden automatisch von Icinga Web 2 in eine einzelne Datei zusammengefasst und an den Browser ausgeliefert:

  • Mit Originaler (lesbarer) Formatierung: /icingaweb2/css/icinga.css
  • Keine Formatierung (Komprimiert): /icingaweb2/css/icinga.min.css

Da die Stylesheets von Icinga Web 2 immer zuerst kommen und danach die aller Module, können Themes (da sie als letztes kommen) alles andere beeinflussen.
Prinzipiell solltet ihr euch einfach einmal alle mitgelieferten Stylesheets ansehen: icingaweb2-installation/public/css/icinga/
Aber um den Überblick und die Orientierung etwas zu vereinfachen, ist hier eine grobe Zusammenfassung zu den wichtigsten Dateien:

  • base.less
    Allgemeine Regeln und alle globalen Farb-Variablen
  • login.less
    Regeln für den Login, inklusive welches Logo verwendet wird
  • layout.less
    Regeln für das globale Layout (Header, Container, Footer)
  • menu.less
    Regeln für das Haupt-Menü
  • forms.less
    Regeln für alle Formulare
  • tabs.less
    Regeln für die Tabs
  • controls.less
    Speziellere Regeln für Form-Elemente bzw. “Widgets”

Jetzt könnt ihr bereits loslegen. Einfach eine neue Datei in einem der oben genannten Pfade anlegen (je nachdem ob es sich um ein Modul handelt, oder nicht) und fröhlich drauf los stylen. Treten Probleme auf oder ihr möchtet mit den Developer-Tools des Browsers die Regeln inspizieren, kann es hilfreich sein den “_dev” URL-Parameter an die URL anzuhängen. (z.B. /icingaweb2/dashboard?_dev) Dies führt dazu, dass das Stylesheet nicht komprimiert ausgeliefert wird.
Das wars dann nun aber. Falls noch Fragen aufkommen, verweise ich auf das Forum. Frohes schaffen!

Johannes Meyer
Johannes Meyer
Developer

Johannes ist seit 2011 bei uns und hilft bei der Entwicklung zukünftiger Knüller (Icinga2, Icinga Web 2, ...) aus dem Hause NETWAYS.

Vagrant-Box mit Icinga2 mit Icingaweb2 aufsetzen

Vagrant-Box mit Icinga2 mit Icingaweb2 aufsetzen

virtualboxAls Entwickler und Systemadministrator kommt man öfters nicht um eine Testmöglichkeit herum.
Eine VM mit einem Hypervisor seiner Wahl aufzusetzen ist meistens sehr zeitaufwendig um kleinere Tests nachzustellen.
Eine einfache und schnelle Möglichkeit bietet hier sich eine Vagrant-Box vom Internet herunter zu laden oder sich ein Git-Repositoriy mit einem vorgefertigten Image zu clonen.
Wie man sich so eine Vagrant-Box per Git cloned werde ich hier beschreiben.
 
Vorraussetzung: Virtualbox-Pakete + GIT sollten installiert sein (Virtualbox wird hier als Provider benutzt):
~ # rpm -qa | grep virtualbox
virtualbox-5.0.18-216.2.x86_64
virtualbox-guest-tools-5.0.18-216.2.x86_64
virtualbox-host-kmp-default-5.0.18_k4.1.12_1-216.2.x86_64
virtualbox-qt-5.0.18-216.2.x86_64
virtualbox-guest-kmp-default-5.0.18_k4.1.12_1-216.2.x86_64
git-2.6.6-7.1.x86_64

Info: Die Version kann von den verschiedenen Distributionen variieren.
Als nächsten müssen wir das Git-Repository lokal clonen
Dazu ins home – Verzeichnis in der Shell seiner Wahl wechseln
Ein Verzeichnis seiner Wahl anlegen:
mkdir git z.B
und in diesem Verzeichnis folgendes Kommando ausführen als user versteht sich:
~ # git clone https://github.com/Icinga/icinga-vagrant
Klone nach 'icinga-vagrant' ...
remote: Counting objects: 5172, done.
remote: Total 5172 (delta 0), reused 0 (delta 0), pack-reused 5172
Empfange Objekte: 100% (5172/5172), 1.53 MiB | 569.00 KiB/s, Fertig.
Löse Unterschiede auf: 100% (1929/1929), Fertig.
Prüfe Konnektivität ... Fertig.

So das wars auch fast schon 🙂
Jetzt z.B in das Verzeichnis Icinga2x-cluster wechseln
~ # cd icinga-vagrant/icinga2x-cluster/
Anschließend nur noch die Vagrant-Box starten:
~ # vagrant up
Nun kann es eine Weile dauernd bis die Box gebaut wird, wenn keine Fehler aufgetreten sind kann man sich per ssh connecten.
~ # vagrant ssh
[vagrant@icinga2 ~]$

Weitere vagrant Kommandos:

vagrant help    -> Listet weitere Kommandos von vagrant auf
vagrant halt  -> fährt  die Vagrant-Box herunter  (shutdown)
vagrant reload -> starten die Vagrant-Box neu (reboot)

Login-Information bekommt man direkt auf:
https://github.com/Icinga/icinga-vagrant/
Icingaweb2 nach erfolgreichen Login:
Screenshot_20160603_105621
Viel Spaß beim testen, basteln und herumspielen 🙂
Es lohnt sich auch immer mal unser Schulungsangebot sich anzuschauen.

Johannes Carraro
Johannes Carraro
Support Engineer

Bevor Johannes bei NETWAYS anheuerte war er knapp drei Jahre als Systemadministrator in Ansbach tätig. Seit Februar 2016 verstärkt er nun unser Managed Services Team als Systems Engineer. In seiner Freizeit spielt Johannes E-Gitarre in einer Metalband, bastelt an Linux Systemen zuhause herum und ertüchtigt sich beim Tischtennisspielen im Verein, bzw. Mountainbiken, Inlinern und nicht zuletzt Skifahren.

NETWAYS Webinarkalender im Juli

NETWAYS Auch im Juli gibt es wieder zwei Webinare, in welchen wir einerseits den aktuellen Stand von Icinga Web 2 zeigen wollen und auf der anderen Seite unser SMS Alarmierungs Webinar, in welchem wir unsere SMS Hardware an Linux und Icinga 2 anbinden.
Hier noch einmal die nächsten Termine zusammengefasst:

Titel
Zeitraum Registrierung
Icinga Web 2: Neuheiten im Webfrontend 08. Juli 2015 – 10:30 Uhr Anmelden
Linux: Einrichten einer SMS-Alarmierung 23. Juli 2015 – 10:30 Uhr Anmelden

Wer unsere bisherigen Webinare verpasst hat, kann sich diese in unserem Webinararchiv natürlich kostenfrei ansehen.

Christian Stein
Christian Stein
Lead Senior Account Manager

Christian kommt ursprünglich aus der Personalberatungsbranche, wo er aber schon immer auf den IT Bereich spezialisiert war. Bei NETWAYS arbeitet er als Senior Sales Engineer und berät unsere Kunden in der vertrieblichen Phase rund um das Thema Monitoring. Gemeinsam mit Georg hat er sich Mitte 2012 auch an unserem Hardware-Shop "vergangen".

Endspurt für Icinga Web 2

Fleißig wird noch immer gehämmert und wir haben auch weiterhin gut zu tun. Eines lässt sich aber nur noch schwer verbergen, Icinga Web 2 wird richtig gut und ist mit Volldampf auf der Zielgeraden angelangt!

Icinga Web 2 - Dashboard

Icinga Web 2 – Dashboard

Home Sweet Home – Dashboard

Sofort nach dem Login landet man im Dashboard. Jeder kann sich gleich mehrere dieser Dashboards konfigurieren und darauf jeweils beliebig viele Komponenten einbinden. Jede Ansicht und jeder Filter kann hier angezogen werden. Aktuelle Zeitstempel laufen sanft im Sekundentakt weiter, das Aktualisieren der Inhalte verläuft angenehm ruhig. Es gibt es kein Zappeln und kein Flackern.

Icinga Web 2 - Statusfarben

Icinga Web 2 – Statusfarben

Nur Probleme

Das Wichtigste auf so einem Monitoring-Dashboard: die Probleme, um die sich noch keiner kümmert. Wir stellen hier für Suche und Sortierung elegante und bequeme virtuelle Spaltenbezeichner bereit, die vieles einfacher machen. Abseits der vollständigen Übersichtslisten wird standardmäßig immer nach der Dringlichkeit des Problems sortiert. Unbehandelte neue Issues sind dabei kräftiger und farbig hinterlegt, Probleme um die sich schon wer kümmert zeigen den aktuellen Zustand mit einer sanfteren Farbe in einem schmalen Seitenstreifen an. Auf diese Weise kann man schon aus der Ferne zuverlässig erkennen, ob alles im Grünen Bereich ist oder ob Handlungsbedarf besteht.

Icinga Web 2 - PDF Export

Icinga Web 2 – PDF Export

Export und PDFs

Für die meisten Ansichten besteht die Möglichkeit, die dargestellten Daten ins CSV- und JSON-Format zu exportieren oder aber als PDF-Datei abzulegen. An derselben Stelle lässt sich auch so ziemlich jede Übersicht mit den aktuellen Filter- und Sortiereigenschaften mit wenigen Klicks in ein bestehendes oder wahlweise neu anzulegendes Dashboard übernehmen.

Willkommen in der Matrix

Unsere Matrix-Ansicht ist filterbar und lässt sich in großen Umgebungen zudem in jede Richtung frei durchblättern. Sollen alle Hosts und Services abgebildet werden? Oder lieber nur solche mit Problemen, vielleicht auch nur jene um die sich gerade keiner kümmert? Müssen ein paar spezielle Dienste ausgeblendet werden? Das alles geht, und noch viel mehr.

Icinga Web 2 - Gefilterte Service-Matrix

Icinga Web 2 – Gefilterte Service-Matrix

Geschichte schreiben

Mehrere Monate oder gleich ein ganzes Jahr voller Events auf einen Blick? Kein Problem! Die Umgebung von der dieser Screenshot stammt hat ein paar Millionen Events in der Datenbank. Die Darstellung zeigt daraus nur die kritischen, das waren hier etwa 160.000 in den letzten vier Monaten. Dabei zeigt die Farbintensität auf einen Blick, wo besonders viel oder besonders wenig los gewesen ist.
Im Cache oder zwischengespeichert? Nichts davon, die Daten stammen frisch und live aus der IDO-DB – handverlesen von Icinga Web. Ein Klick auf einen bestimmten Tag listet rechts von der Übersicht die zum jeweiligen Filter passenden einzelnen Ereignisse auf. Von dort können sie exportiert oder mit zusätzlichen Filtern weiter eingeschränkt werden.

Icinga Web 2 - Historische Übersicht

Icinga Web 2 – Historische Übersicht

Kommando? Zu Befehl!

Icinga Web 2 - Kommandos absenden

Icinga Web 2 – Kommandos absenden


Die klassischen Icinga-Commands sind auch weiterhin verfügbar. Allerdings stehen sie statt in einer langen Liste immer genau dort parat, wo sie gebraucht werden können. Den nächsten Check sofort ausführen lassen? Ein Klick.
Downtimes, Kommentare oder Acknowledgements? Sind schnell gesetzt und per Mausklick auch genauso bequem direkt an Ort und Stelle wieder entfernbar. Checks oder Notifications an- oder abschalten? Auch nur ein Klick. Unsicher ob der aktuelle Zustand dem in der Konfiguration entspricht? Wird angezeigt. Den falschen Kommentar gelöscht? Die Historie zum jeweiligen Objekt findet sich einen Klick weiter, dort sieht gleich was man verbrochen hat und kann es wieder geradebiegen.
Icinga Web 2 Login Screen

Icinga Web 2 Login Screen

Performance

Schnell ist Icinga Web geworden, beeindruckend schnell. Das beginnt bereits mit der Anmeldemaske. Vom Browser werden bei leerem Cache ganze vier Requests abgefeuert, wobei in Summe knapp über 60 KB vom Server geladen werden. Das beeinhaltet den HTML-Code, das große Logo, alles was wir an JavaScript für die Applikation brauchen und sämtliche Stylesheets. Ja, ihr habt richtig gelesen: von diesem Punkt an gilt es keine einzige JS- oder CSS-Datei mehr zu laden. Keine.

Icinga Web 2 Performance - Chrome

Icinga Web 2 Performance – Chrome


Weil ich das so wunderschön finde, gleich nochmal. Selbe Aktion, anderer Browser:
Icinga Web 2 Performance - Firefox

Icinga Web 2 Performance – Firefox


Alles was nach Eingabe von Benutzername und Kennwort noch folgt sind schlanke HTML-Schnipsel und ein paar Icons. Vom Drücken der Eingabetaste bis zum vollständig geladenen Dashboard vergeht ein Bruchteil einer Sekunde. Selbst wenn alle Icons noch zu laden sind gehen dabei nur schlappe 20 KB über die Leitung.
Nicht nur mit der Bandbreite geht Icinga Web sparsam um, auch um den Speicherverbrauch des Browsers sorgen wir uns. Eine Anforderung, die bei sich ständig aktualisierenden Webanwendungen nicht zu unterschätzen ist. Wir wollen keine verlorenen Elemente im DOM und keine Memory-Leaks. Gegen Browserbugs sind auch wir nicht immun, aber wir tun unser Bestes, damit ihr euer Icinga Dashboard ruhigen Gewissens monatelang jeden Tag am Fernseher an der Wand genießen könnt. Und das natürlich ohne täglich den Browser neu starten zu müssen.

Blut geleckt?

Keine Sorge, es gibt noch mehr! Die Icinga CLI kennt ihr ja bereits. Einiges was noch nicht erwähnt wurde verraten ja bereits die Screenshots. Wer ganz mutig ist, kann sich gerne an unserem GIT-Master versuchen. Und irgendwas muss ich mir natürlich noch für meinen nächsten Blogpost aufbewahren. Jetzt muss ich schleunigst wieder zurück an die Arbeit. Ihr wollt doch, dass Icinga Web 2 bald fertig wird?

Thomas Gelf
Thomas Gelf
Principal Consultant

Der gebürtige Südtiroler Tom arbeitet als Principal Consultant für Systems Management bei NETWAYS und ist in der Regel immer auf Achse: Entweder vor Ort bei Kunden, als Trainer in unseren Schulungen oder privat beim Skifahren in seiner Heimatstadt Bozen. Neben Icinga und Nagios beschäftigt sich Tom vor allem mit Puppet.