Host-Tracker sous Windows Azure

Publié: Artem Prysyazhnuk 2014-03-07 tous les articles | Glossaire | FAQ

Ceux qui s'occupent activement du Web devraient connaître HostTracker, une société ukrainienne qui soutient depuis 2004 l'un des principaux services mondiaux de surveillance du Web. Son objectif est de surveiller la santé et l'accessibilité des sites en temps quasi réel. Grâce à un système de messages d'alerte, HostTracker permet de réduire les temps d'arrêt, d'améliorer la qualité de service pour les utilisateurs, de localiser rapidement les problèmes, etc.

.

Architecturellement, HostTracker comprend un hub basé sur un serveur, agissant à la fois comme un collecteur de données et un centre de contrôle, et une série d'agents logiciels, lancés dans diverses régions &ndash ; utilisant généralement les équipements exploités par les principaux fournisseurs, hébergeurs et affiliés. L'architecture géographiquement distribuée assure une fiabilité commune du système et permet également de collecter des données en termes de vitesse d'accès, de bande passante et d'autres caractéristiques de performance clés au niveau régional &ndash ; une caractéristique d'une importance capitale pour le commerce international.

.

La première version de HostTracker, qui fonctionne toujours et fournit des services à des dizaines de milliers de clients, était basée sur Linux. Aujourd'hui, elle est soutenue par neuf serveurs de contrôle, situés et organisés dans deux DPC sur le principe de la collocation, et quelques dizaines d'agents. Si l'on considère que l'objectif final de la surveillance web est d'augmenter le temps de disponibilité des ressources web basées sur le client &ndash ; alors que 95% des clients HostTracker ont pu l'augmenter jusqu'à 99% &ndash ; alors, la performance et l'accessibilité du service lui-même ne sont pas seulement critiques, mais plutôt des paramètres fondamentaux qui influencent l'ensemble de l'entreprise. Théoriquement, HostTracker devrait afficher une accessibilité proche de 100 %. Cependant, une croissance importante du service a rendu cette tâche difficile à résoudre.

.

HostTracker était confronté à un trafic réseau en constante augmentation &ndash ; un problème pour un fonctionnement sans faille du service. L'impossibilité d'ajouter de nouveaux serveurs de contrôle à la volée, les difficultés lors de la maintenance d'un matériel non uniforme et multiâge était un autre facteur limitant. De plus, le désir de développer le service grâce à une prise en charge plus large des protocoles et des services réseau se heurtait à certains obstacles. “Malheureusement, pour Linux, il existait un choix limité de solutions et de bibliothèques prêtes à l'emploi, alors qu'il était difficile d'inventer quelque chose de complètement nouveau&rdquo ;, déclare Artem Prisyazhnyuk, directeur de HostTracker. “Nous avons eu l'idée de revoir la pile de technologies que nous utilisions pour une autre plus sophistiquée et après avoir examiné de plus près la plateforme .NET, son potentiel en termes d'évolutivité et de support réseau, j'ai réalisé que c'était exactement ce que nous recherchions”

.

Il était sûr que la migration vers une plateforme complètement différente devait être une tâche complexe &ndash ; le projet s'est étendu sur trois ans. Cependant, c'était comme une bénédiction déguisée : pendant cette période, le monde a vu l'informatique en nuage qui semblait un outil idéal pour résoudre à la fois le problème d'évolutivité et mettre de côté toute sa propre infrastructure. En outre, le modèle PaaS permettait de supprimer la plupart des efforts en termes d'administration de la solution et de contrôler l'application comme une entité autonome, jusqu'à une automatisation complète, et donc, Windows Azure n'avait en fait aucune alternative.

.

En conséquence, la deuxième version de HostTracker, dont l'exploitation commerciale a débuté en mai 2012, fonctionne déjà sous Windows Azure. Son ingrédient central est réalisé en tant que Web Role et associé à SQL Azure Database &ndash ; il fournit un portail externe, des analyses et la génération de rapports, le contrôle des applications de surveillance. Ces dernières sont assurées par des instances de Worker Role, qui utilisent également SQL Azure Database pour stocker leurs données et assurer l'évolutivité du service en fonction de la charge du réseau. Les agents fonctionnent comme avant, la viabilité de leur transfert vers Windows Azure étant envisagée.
Désormais, HostTracker utilise les protocoles HTTP/HTTPS et ICMP pour surveiller des ports spécifiques, y compris diverses méthodes (HEAD/POST/GET), et etc.
 

Vérification instantanée HostTracker

.



Les rapports d'alarme sont disponibles par e-mail, SMS et messages instantanés. Le client peut recevoir des rapports avec des statistiques sur les ressources contrôlées et leurs performances. Vous pouvez passer seulement 6 minutes à effectuer les paramètres de surveillance pour cinq sites, tandis que le temps de réponse moyen en cas de panne est limité à quelques minutes, et il faut 1 à 3 minutes de plus pour informer le client du problème. En utilisant ce service, n'importe qui peut vérifier n'importe quel site, y compris l'accès depuis diverses régions.

.

 En conséquence, si d'un côté le transfert vers la plateforme .NET elle-même nous a donné la possibilité de moderniser HostTracker, d'optimiser l'architecture de l'application et de réaliser de nouvelles fonctions internes, alors, d'un autre côté, la migration vers le cloud a permis de refuser des activités moins importantes, bien que chronophages, comme l'administration de la solution, et, avant tout, d'atteindre les indicateurs de performance nécessaires. Microsoft, pour tous les services de base de Windows Azure, déclare une accessibilité de 99,9% et garantit des remboursements mensuels, si cet indicateur est inférieur. Cela crée une base solide pour l'exploitation de services tels que HostTracker, car l'accessibilité est le paramètre le plus critique pour ces applications. L'utilisation de l'infrastructure en nuage assure également une meilleure protection du service : l'accès non autorisé à l'application et de nombreux types d'attaques sont effectivement exclus, tandis que la sécurité des données est assurée par une triple réservation.

.

HostTracker a reçu un autre avantage de l'abandon de sa propre infrastructure. Les caractéristiques de performance du service’sont également assez critiques, car elles affectent directement le fonctionnement du système de signalement des pannes. À cet égard, Windows Azure est pratiquement une source inépuisable de puissance de calcul. Cela signifie qu'en démarrant à temps des instances de surveillance supplémentaires, vous pouvez maintenir les paramètres de fonctionnement de HostTracker au niveau nécessaire. En outre, l'environnement en nuage est exactement ce dont vous avez besoin pour rendre ce processus presque entièrement automatique, en excluant tout autre besoin de contrôle direct.


À propos de l'auteur

Artem Prysyazhnuk
PDG et fondateur de HostTracker LTD. C'est un entrepreneur passionné avec une solide expérience technique en F#. Artem travaille dans l'industrie du développement de logiciels depuis plus de 20 ans.
Loading...