serverüberwachung

Verbesserung unserer Serverüberwachung

Durch den Einsatz einer neuen Software für die Serverüberwachung konnten wir das Monitoring der von uns betreuten Systeme nochmals deutlich verbessern.

Bisheriges System mit Icinga & PNP4Nagios

Grundlage unserer bisherigen Serverüberwachung, welche auf zwei getrennten, hierfür speziell vorgesehenen Systemen läuft, war bislang Icinga in Verbindung mit PNP4Nagios. Icinga ist eine Monitoring-Software, welche im Jahr 2009 als Fork des bekannten aber nur noch spärlich weiterentwickelten Nagios entstand. Über spezielle Clients konnten Überwachungsdaten von unseren Servern eingesammelt werden und Warnungen bei Über- oder Unterschreitung bestimmter Schwellwerte sowie bei Fehlern erzeugt werden. Messdaten wurden in RRD-Datenbanken zur späteren Visualisierung mit PNP4Nagios gespeichert. Schaubilder aus PNP4Nagios haben wir schon öfters, z.B. in unserem Blog gezeigt.

Neue Überwachungssoftware Icinga2 & Grafana

Die Basis der neuen Serverüberwachung, in deren Aufbau etliche Wochen Arbeit geflossen ist, stellt die Nachfolge-Version Icinga2 dar. Messdaten werden in einer InfluxDB-Datenbank gespeichert. Die Visualisierung der Messdaten wird nun durch die Software Grafana übernommen. Dieses Zusammenspiel bringt im Vergleich zur alten Herangehensweise deutliche Vorteile:

  • Sehr hohe Performance (ca. 1 Million Checks pro Minute)
  • Cluster-Fähigkeit für verteiltes und hochverfügbares Monitoring
  • Verbesserte, optimierte Aufzeichnung von Überwachungswerten durch innovatives InfluxDB
  • Schnelle Erzeugung von Graphen, auch über große Zeitspannen
  • Interaktive Bedienung der Überwachungsgraphen (bsp. Hereinzoomen)
  • Schnelle Definition neuer, zusätzlicher Graphen

Vor allem der Einsatz von Grafana gibt uns nun die Möglichkeit, auch komplexe oder nicht alltägliche Zusammenhänge zu visualisieren und zu erkennen. So können zum Beispiel mit wenigen Klicks verschiedenste Messwerte eines Servers miteinander verglichen werden, sowie verschiedene Server untereinander.
Damit lässt sich beispielsweise die Frage beantworten, ob der plötzliche Anstieg von I/O-Operationen ursächlich für einen Load-Anstieg war oder ob Server A gerade stärker ausgelastet ist als Server B und es daher sinnvoll wäre, Programme vom einen System auf das andere zu verschieben, um die Last auszugleichen.
Zudem lässt die neue Überwachungssoftware nun auch Situationen überwachen, in denen wir bislang keine Möglichkeit zur Überwachung hatten oder mit vielen Fehlalarmen leben mussten. So ist nun eine Überwachung über die Zeit aggregierter Werte möglich. Wir können uns somit zum Beispiel informieren lassen, wenn eine CPU dauerhaft unter Last steht, ohne jedoch einen Fehlalarm zu liefern, wenn kurzzeitig ein rechenzeitintensiver Prozess lief.