Anzeige
Anzeige
UX & Design

TYPO3, Datenbank und Webserver im Blick: Website-Monitoring mit Nagios

Die Anforderungen an das IT-Monitoring haben sich in den letzten Jahren drastisch geändert, denn CMS-Installationen und die damit umgesetzten Projekte werden immer komplexer. Diese Komplexität gilt es, möglichst umfassend zu überwachen.

5 Min.
Artikel merken
Anzeige
Anzeige

Laut Wikipedia ist Monitoring eine Sonderform des Protokollierens mit dem Ziel des Eingreifens, wenn etwas nicht in Ordnung ist. Das kann schon eine simple Webcam zur Überwachung des Kaffeepegels einer Kaffeemaschine sein oder eine computergestützte Erfassung der Raumtemperatur in einem Rechenzentrum.

Anzeige
Anzeige

Ziele eines guten Monitorings sind kürzere Reaktionszeiten, Vermeidung von Downtimes, Vereinfachung von Arbeitsprozessen und eine bessere Ursachenermittlung bei komplexen Problemen. In einem Computernetzwerk mit einem zentralisierten Monitoring kann ein Monitoringserver leicht die von außen verfügbaren Dienste wie HTTP, FTP, SSH oder MySQL prüfen. Um aber beispielsweise die Prozessorauslastung zu messen, muss man diese intern auf dem zu prüfenden Client erfassen. Entsprechende Software für Remote-Monitoring ist in den meisten Softwarepaketen für IT-Monitoring enthalten. Weit verbreitet ist die Open-Source-Software Nagios [1], die auch professionell in sehr großen Netzwerken mit mehreren tausend Hosts eingesetzt wird.

Nagios im Kurzportrait
  • Quelltext frei
  • viele Plugins und Addons verfügbar
  • eigene Erweiterungen leicht möglich
  • Active/Passive Monitoring
  • Parents und Dependencies
  • Event Handler
  • Host-/Service-/Contactgroups
  • redundantes und/oder verteiltes Monitoring möglich

Monitoring mit Open Source

Nagios besticht unter anderem dadurch, dass es sich leicht erweitern lässt. Die Website exchange.nagios.org [2] listet 301 Addons und 1.529 Plugins. Plugins sind kleine Programme oder Scripts, etwa zum Testen von HTTP oder der CPU-Temperatur, Addons erweitern Nagios um zusätzliche Funktionen. Ein beliebtes Addon ist PNP4Nagios [3], das die Messwerte von Nagios in einer Datenbank sammelt und daraus Grafiken erstellt. Ein guter Anlaufpunkt bei der Arbeit mit Nagios ist das deutschsprachige Nagios-Wiki [4], das auch eine Plugin-Übersicht enthält.

Anzeige
Anzeige

Abhängig von der Art des Clients, führt ein Nagios-Server beim Webhoster Mittwald CM Service, dem Arbeitgeber des Autors, bis zu 80 unterschiedliche Checks pro System durch. Diese lassen sich grob in die Bereiche Hardware, System und Ressourcen, Dienste, CMS sowie Security unterteilen. Diese Checks sind nicht nur für einen Webhoster hilfreich, sondern auch für Entwickler und Agenturen, die einen oder mehrere Webserver betreiben.

Anzeige
Anzeige

Zu den Hardware-Checks gehören die Kontrolle des RAID-Status, der SMART-Parameter der Festplatten, aller Sensoren (Temperatur etc.) und der Kernel-Meldungen (RAM-Fehler etc). An Systemressourcen werden unter anderem Plattenplatz, Anzahl der Prozesse, Systemzeit und Auslastung geprüft. Allein die Auslastung wird über zehn unterschiedliche Werte (Beispiele: Load, CPU, Swap) bestimmt und kann so Hinweise auf ganz spezielle Konfigurationsfehler in einem Content Management System wie TYPO3 liefern.

Weitere Basis-Checks sind Überprüfungen aller Standarddienste von HTTP und MySQL über FTP bis Mail und Backup. Sehr spezielle Checks betreffen Security und dynamisches Monitoring (automatisches Hinzufügen und Entfernen von Hosts).

Anzeige
Anzeige
Mit der Open-Source-Monitoring-Software Nagios lassen sich Webserver leicht überwachen. So merkt man rechtzeitig, wenn eine Festplatte vollläuft.

Mit der Open-Source-Monitoring-Software Nagios lassen sich Webserver leicht überwachen. So merkt man rechtzeitig, wenn eine Festplatte vollläuft.

CMS-Eigenheiten in Datenbanken

Auch die Datenbanken sollten speziell überwacht werden. Neben den oben genannten Checks gehören dazu die Kontrolle der einzelnen MySQL-Threads (wie viele laufen, sind auffällige Queries dabei), regelmäßige Prüfungen aller Tabellen auf Fehler, die Auswertung des MySQL-Errorlogs und vieles mehr. InnoDB- und besonders Cache-Tabellen können aufgrund ihrer Größe oder eines besonders starken Wachstums Hinweise auf eventuelle Optimierungsmöglichkeiten einer Webpräsenz geben.

Ein Problem, das gelegentlich bei Verwendung der TYPO3-Extension „tt_news“ auftritt, fällt schon im DB-Monitoring auf, noch bevor das Monitoring des Webservers anschlägt. Die Extension ist dafür bekannt, viele JOINs in Verbindung mit der Sortierung durch „ORDER BY“ zu nutzen. Dafür müssen temporäre Tabellen angelegt werden, die bei entsprechender Größe die SQL-Abfrage stark verlangsamen können. Wenn dann noch die Index-Suche aktiviert ist und Google seinen Bot vorbeischickt, kann die Webpräsenz unbedienbar langsam werden, sodass nur ein sofortiger Eingriff hilft. In solchen Fällen zeigt sich bei einer näheren Untersuchung häufig, dass die „backPID“ aktiviert ist. Eine Deaktivierung kann zukünftig ein ähnliches Aufschaukeln verhindern. Und falls nachts mal der eine oder andere Bot zu Besuch war, sieht man das morgens auch an den gewachsenen Index- und Cache-Tabellen. Bots sind zwar wichtig für die Indizierung in Suchmaschinen, sie sind aber sehr schnell und können hohe Last erzeugen.

Sehr empfehlenswert ist auch die Überwachung des MySQL-Errorlogs. Wenn hier defekte Tabellen gemeldet werden, können diese umgehend repariert werden, um Performance und Sicherheit zu gewährleisten. Ein für Reparatur- und Recoveryzwecke benötigter SQL-Dump sollte nicht zu alt sein – auch das lässt sich mit Nagios sehr leicht überwachen.

Anzeige
Anzeige
Nicht schön, aber hilfreich: Die Nagios-Ausgabe bündelt alle Fehlermeldungen auf einer Statusseite, die auch die Schwere des Fehlers angibt.

Nicht schön, aber hilfreich: Die Nagios-Ausgabe bündelt alle Fehlermeldungen auf einer Statusseite, die auch die Schwere des Fehlers angibt.

CMS-Monitoring auf dem Webserver

Wesentlich vielfältiger als auf dem Datenbankserver sind die Monitoring-Möglichkeiten auf dem Webserver. Wichtig ist dabei zum Beispiel die Überprüfung der typo3temp-Verzeichnisse. Ein Hauptverursacher von voll gelaufenen typo3temp-Verzeichnissen ist GMENU_LAYERS, welches das Verzeichnis mit Javascript-Dateien vollschreibt. Wenn erstmal ein paar hunderttausend Dateien in dem Verzeichnis liegen, werden die Zugriffe auf die darin enthaltenen Dateien merklich langsamer. Ist GMENU_LAYERS der Verursacher, hilft als Workaround die Zuweisung einer „layer_menu_id“ oder alternativ ein Patch [5].

Es kann aber auch sein, dass typo3temp mit Tausenden von „EXTERNAL_URL“-Dateien gefüllt ist. Dies tritt auf, wenn bei Indexed Search die Indizierung externer Inhalte aktiviert ist. Hier gibt es keinen Workaround, sondern nur einen weiteren Patch [6]. Beide Patches sind im Zuge der Artikelrecherche entstanden und wurden bereits in den TYPO3-Bugtracker eingestellt.

Weitere Probleme können durch defekte Grafiken auftreten, bei denen während der Konvertierung durch ImageMagick oder GraphicsMagic Fehler aufgetreten sind, weil vielleicht schon die Quelldatei defekt ist. Dann gibt es auch mal GIF- oder JPEG-Dateien, die viele Megabyte groß sind und beim Versuch sie anzuzeigen einen Browserabsturz verursachen können. Solche Dateien können ebenso wie große JPEG-Bilder mit mehreren eingebetteten ICC-Profilen leicht vom Monitoring erfasst werden.

Anzeige
Anzeige

Sehr wichtige Checks sind auch verschiedene Überprüfungen des E-Mail-Versands aus einer Webpräsenz heraus. Dabei sollten E-Mails pro Tag und auch pro Stunde gezählt werden. Auf diese Weise entdeckt man Hacker, die etwa durch zu einfache Passwörter eingedrungen sind und Spam verschicken. Hacker, die Webpräsenzen beispielsweise zum Verteilen von raubkopierten Filmen nutzen, fallen im Monitoring durch ungewöhnlich große Dateien auf.

Empfehlenswerte CMS-Checks
  • alle Logs inkl. der vom CMS und seinen Erweiterungen
  • Anzahl Zugriffe laut Accesslog
  • Tabellenfehler und -größe
  • Größe des Webverzeichnisses oder einzelner Unterverzeichnisse
  • Anzahl der Dateien in temp- oder ähnlichen Verzeichnissen
  • Liste der größten Dateien
  • Verschachtelungstiefe des Webverzeichnisses
  • Anzahl verschickter E-Mails absolut und pro Stunde
  • defekte Bilddateien

Fazit

Aufgrund der Komplexität von CMS-basierten Webpräsenzen benötigt man heute ein umfassendes und schnelles Monitoringsystem, das weit über einfaches Monitoring von HTTP und FTP hinausgeht und bis in Bereiche von Intrusion Detection hinein reicht oder sogar spezielle Konfigurationsprobleme erkennen lässt. Nagios eignet sich perfekt, um so ein Szenario aufzubauen. Vor der Komplexität des Systems sollte man dabei nicht zurückschrecken, denn ein einfaches Monitoring ist immer noch deutlich besser als gar kein Monitoring. Erweitern kann man es immer noch.

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
Kommentare (3)

Community-Richtlinien

Zane Schelling

Setup many different website monitoring services to boost reliability.

t3manager

Wer keine Möglichkeit hat Nagios zu verwenden kann auf einen webbasierten TYPO3 Manager zurückgreifen und so auch ausserhalb vom Büro gleichzeitig mehrere TYPO3 Installationen überwachen. Es ist natürlich nicht so detailiert wie Nagios, für den einen oder anderen genügen allerdings Informationen wie Speicherplatz, Datenbankgrösse, Errors, Verfügbarkeit der Webseite sowie weitere TYPO3 spezifische Informationen vollkommen aus.

reichhart

Die verwendete Software ist frei verfügbar:
http://www.tuxad.de/ngtx.html
Sie besteht aus Tools und Plugins für Nagios/Icinga (und andere).

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Kommentar abgeben

Melde dich an, um Kommentare schreiben und mit anderen Leser:innen und unseren Autor:innen diskutieren zu können.

Anmelden und kommentieren

Du hast noch keinen t3n-Account? Hier registrieren

Anzeige
Anzeige