Host Tracker under Windows Azure

Veröffentlicht: Artem Prysyazhnuk 2014-03-07 alle Artikel | Glossar | FAQ

Wer sich aktiv mit dem Web beschäftigt, sollte HostTracker kennen, ein Unternehmen aus der Ukraine, das seit 2004 einen der weltweit führenden Webüberwachungsdienste unterstützt. Sein Ziel ist es, den Zustand und die Erreichbarkeit von Websites in nahezu Echtzeit zu überwachen. Mit Hilfe des Warnmeldesystems ermöglicht HostTracker die Reduzierung von Ausfallzeiten, die Verbesserung der Servicequalität für die Nutzer, die schnelle Lokalisierung von Problemen usw.

Architektonisch umfasst HostTracker einen serverbasierten Knotenpunkt, der sowohl als Datensammler als auch als Kontrollzentrum fungiert, und eine Reihe von Software-Agenten, die in verschiedenen Regionen gestartet werden – typischerweise unter Verwendung der Ausrüstung, die von großen Providern, Hostern und angeschlossenen Unternehmen betrieben wird. Die geografisch verteilte Architektur sorgt für eine einheitliche Systemzuverlässigkeit und ermöglicht außerdem die Erfassung von Daten in Bezug auf Zugriffsgeschwindigkeit, Bandbreite und andere wichtige Leistungsmerkmale auf regionaler Ebene – ein äußerst wichtiges Merkmal für das internationale Geschäft.

Die erste Version von HostTracker, die immer noch funktioniert und Dienste für Zehntausende von Kunden bereitstellt, war Linux-basiert. Heute wird es von neun Kontrollservern unterstützt, die in zwei DPCs nach dem Kollokationsprinzip untergebracht und organisiert sind, sowie von einigen Dutzend Agenten. Wenn man bedenkt, dass das Endziel der Web-Überwachung auf die Erhöhung der Betriebszeit der Client-basierten Web-Ressourcen ausgerichtet ist – während 95% der HostTracker-Kunden in der Lage waren, diese auf 99% zu erhöhen – dann sind die Leistung und die Erreichbarkeit des Dienstes selbst nicht nur kritisch, sondern vielmehr grundlegende Parameter, die das gesamte Geschäft beeinflussen. Theoretisch sollte HostTracker eine Erreichbarkeit von nahezu 100% aufweisen. Durch das starke Wachstum des Dienstes war diese Aufgabe jedoch schwer zu lösen.

>

HostTracker sah sich mit einem ständig steigenden Netzwerkverkehr konfrontiert – ein Problem für den nahtlosen Betrieb des Dienstes. Die Unfähigkeit, neue Kontrollserver im Handumdrehen hinzuzufügen, sowie Schwierigkeiten bei der Wartung von uneinheitlicher und mehrfach veralteter Hardware waren ein weiterer limitierender Faktor. Darüber hinaus stieß der Wunsch, den Dienst durch eine breitere Unterstützung von Protokollen und Netzwerkdiensten weiterzuentwickeln, auf gewisse Hindernisse. “Leider gab es für Linux nur eine begrenzte Auswahl an gebrauchsfertigen Lösungen und Bibliotheken, während es schwierig war, etwas völlig Neues zu erfinden”, sagt Artem Prisyazhnyuk, Direktor von HostTracker. “Wir hatten die Idee, den von uns verwendeten Technologiestapel zu überprüfen und durch einen ausgefeilteren zu ersetzen, und nachdem ich mir die .NET-Plattform und ihr Potenzial in Bezug auf Skalierbarkeit und Netzwerkunterstützung näher angesehen hatte, wurde mir klar, dass dies genau das war, wonach wir gesucht hatten.”

Es war klar, dass die Umstellung auf eine völlig andere Plattform eine komplexe Aufgabe sein würde – das Projekt erstreckte sich über drei Jahre. Das Projekt zog sich über drei Jahre hin. Doch es war wie ein Segen: In dieser Zeit wurde das Cloud Computing bekannt, das ein ideales Instrument zur Lösung des Skalierbarkeitsproblems und zur Abschaffung der eigenen Infrastruktur zu sein schien. Außerdem erlaubte das PaaS-Modell, den größten Teil des Aufwands für die Verwaltung der Lösung zu beseitigen und die Anwendung als in sich geschlossene Einheit zu steuern, bis hin zur vollständigen Automatisierung, und so war Windows Azure in der Tat ohne Alternativen.

Im Ergebnis funktioniert unter Windows Azure bereits die zweite Version von HostTracker, deren kommerzieller Betrieb im Mai 2012 begann. Sein zentraler Bestandteil ist als Web Role realisiert und mit der SQL Azure Database verbunden – er bietet ein externes Portal, Analysen und die Erstellung von Berichten sowie die Steuerung von Monitoring-Anwendungen. Letztere werden durch Instanzen der Worker Role sichergestellt, die ebenfalls SQL Azure Database nutzen, um ihre Daten zu speichern und die Skalierbarkeit des Dienstes in Abhängigkeit von der Netzwerkbelastung zu gewährleisten. Die Agenten funktionieren wie bisher, wobei die Möglichkeit einer Verlagerung nach Windows Azure geprüft wird.
Jetzt verwendet HostTracker HTTP/HTTPS und ICMP-Protokolle, um bestimmte Ports zu überwachen, einschließlich verschiedener Methoden (HEAD/POST/GET) usw.
 

HostTracker Sofortprüfung



Alarmberichte sind über E-Mail, SMS und Sofortnachrichten verfügbar. Der Kunde kann Berichte mit Statistiken über die kontrollierten Ressourcen und deren Leistung erhalten. Es dauert nur 6 Minuten, um die Überwachungseinstellungen für fünf Standorte vorzunehmen, während die durchschnittliche Reaktionszeit im Falle eines Ausfalls auf ein paar Minuten begrenzt ist und es 1-3 Minuten länger dauert, den Kunden über das Problem zu informieren. Mit diesem Dienst kann jeder jeden Standort überprüfen, auch den Zugang aus verschiedenen Regionen.

>

 Wenn also auf der einen Seite der Wechsel zur .NET-Plattform selbst uns die Möglichkeit gab, HostTracker zu modernisieren, die Anwendungsarchitektur zu optimieren und neue interne Funktionen zu realisieren, so erlaubte auf der anderen Seite die Migration in die Cloud, sich von weniger wichtigen, aber zeitaufwändigen Tätigkeiten wie der Verwaltung der Lösung zu trennen und vor allem die notwendigen Leistungsindikatoren zu erreichen. Microsoft erklärt für alle grundlegenden Windows Azure-Dienste eine Erreichbarkeit von 99,9 % und garantiert monatliche Rückerstattungen, sollte dieser Indikator niedriger sein. Dies schafft eine solide Grundlage für den Betrieb solcher Dienste wie HostTracker, da die Erreichbarkeit der kritischste Parameter für diese Anwendungen ist. Die Nutzung der Cloud-Infrastruktur bietet auch einen besseren Schutz für den Dienst: Unbefugter Zugriff auf die Anwendung und viele Arten von Angriffen sind effektiv ausgeschlossen, während die Datensicherheit durch dreifache Reservierung gewährleistet ist.

Einen weiteren Vorteil erhielt HostTracker durch den Verzicht auf eine eigene Infrastruktur. Auch die Leistungsmerkmale des Dienstes sind eher kritisch, denn sie wirken sich direkt auf den Betrieb des Störmeldesystems aus. In dieser Hinsicht ist Windows Azure eine praktisch unerschöpfliche Quelle für Rechenleistung. Das bedeutet, dass Sie durch den rechtzeitigen Start zusätzlicher Überwachungsinstanzen die Funktionsparameter von HostTracker auf dem erforderlichen Niveau unterstützen können. Darüber hinaus ist die Cloud-Umgebung genau das, was Sie brauchen, um diesen Prozess nahezu vollautomatisch ablaufen zu lassen, ohne dass eine weitere direkte Kontrolle notwendig ist.


Über den Autor

Artjom Prysjaschnuk
CEO und Gründer von HostTracker LTD. Er ist ein leidenschaftlicher Unternehmer mit einem starken technischen Hintergrund in F#. Artem arbeitet seit über 20 Jahren in der Softwareentwicklungsbranche.
Loading...