infogérance-monitoring

Publié le 21 décembre 2023, mis à jour le 23 janvier 2024.

L'infogérance à Padok consiste à prendre en charge la gestion et l'optimisation des infrastructures informatiques de nos clients. Padok propose des solutions flexibles adaptées à différents besoins, allant de la maintenance quotidienne à la réaction aux incidents et à l'évolution stratégique.

Pourquoi externaliser cette gestion ? Quatre principaux motifs incitent les entreprises à faire appel à cette expertise :

  • le recentrage des équipes techniques sur le cœur de métier
  • la stabilité ininterrompue de l'infrastructure
  • le souhait de ne pas imposer à ses employés des astreintes
  • l'accès à une expertise externe de haut niveau

Chez Padok, nous infogérons un vaste éventail de clients et nous nous efforçons de simplifier au maximum ce processus. Par exemple, en évitant de mettre en place un système de monitoring spécifique pour chaque client. Historiquement, l'industrie a eu tendance à se focaliser sur la santé des machines. À Padok, nous nous concentrons sur la santé de l’expérience utilisateur.

Dans cet article, nous commencerons par présenter deux types de monitoring existants et l’approche que nous avons choisi d’adopter à Padok. Nous présenterons ensuite les métriques que nous surveillons pour monitorer les infrastructures de nos clients et comment cette surveillance est mise en œuvre dans des outils tels que Datadog. Nous aborderons, pour terminer, les indicateurs clés de la santé d’une infrastructure : indicateurs au service de nos clients et de leurs utilisateurs finaux.

Monitoring black-box vs monitoring white-box

Le monitoring consiste à collecter, traiter, agréger et afficher des données quantitatives en temps réel sur un système. Telles que le nombre et les types de requêtes ou d'erreurs, les temps de traitement et la durée de vie des serveurs.

Le livre “Site Reliability Engineering: How Google Runs Production Systems” différencie deux types de monitoring : le monitoring white-box et le monitoring black-box.

Le monitoring white-box repose sur la capacité à inspecter les entrailles du système, comme les journaux ou les points de terminaison (endpoint) HTTP. Il permet la détection de problèmes imminents, de pannes masquées par des tentatives de réessai, et ainsi de suite. Un exemple de monitoring white-box serait de surveiller les performances du processeur ou de la mémoire vive d’un serveur.

Le monitoring black-box correspond pour sa part à la surveillance des parcours utilisateurs (applications web ou mobile par exemple) et non plus des composants du serveur. Il se concentre sur les symptômes et représente des problèmes actifs, non prédits. Un exemple est la surveillance du nombre de requêtes HTTP qui sont envoyées au serveur web par un client et qui reviennent sans retour de la part de ce dernier ou bien avec une latence anormale.

Historiquement, l'industrie s’est concentrée sur le monitoring white-box, privilégiant une compréhension interne approfondie des systèmes. Ce choix était principalement lié au fait que l’on devait anticipé la consommation des ressources, côté hardware, pour ne pas impacter la performances des applications.

De nos jours, l’hardware n’est plus un probleme avec l’émergence de la virtualisation et par la suite du cloud. On peut désormais s’attarder sur les problématiques touchant directement les utilisateurs grâce au monitoring black-box. Il fournit une visibilité basée sur les résultats, permettant une réactivité rapide et s'adaptant mieux aux systèmes complexes et hétérogènes. L'accent est désormais mis sur l'expérience utilisateur et la performance globale du système.

À Padok, notre volonté de se focaliser sur les métriques ayant un impact direct sur les utilisateurs finaux a guidé notre choix vers la mise en place d’alertes en black-box. Alertes basées sur des indicateurs mesurables qui impactent directement le business de nos clients.

Pour en savoir plus sur le monitoring black-box et white-box, vous pouvez consulter cet article sur notre blog.

black-box-white-box

The Four Golden Signals

L’équipe d’infogérance de Padok surveille quatre indicateurs clés pour évaluer la performance et la fiabilité des infrastructures de ses clients :

  • La latence : le temps pris par le système pour répondre aux requêtes
  • Le taux d'erreur : le pourcentage de requêtes qui échouent
  • Le taux de trafic : la quantité de trafic passant par le système
  • La saturation : le degré d'utilisation des ressources du système (processeur, mémoire, disque)

Ces indicateurs sont inspirés des Four Golden Signals du livre référence “Site Reliability Engineering: How Google Runs Production Systems”.

Historiquement, Google a développé ces principes pour répondre à sa croissance rapide et à la complexité grandissante de ses systèmes. Ces signaux sont nés de l'expérience directe des défis de performance, alignés avec l'expérience utilisateur et ancrés dans une culture d'innovation et d'excellence opérationnelle. Ils offrent un cadre simple mais puissant pour maintenir la qualité des services.

À Padok, nous mettons en place des sondes en mode black-box, en implémentant des tests synthétiques sur Datadog, pour surveiller la latence et les erreurs sur les endpoints publiques directement. Cela a pour avantage d’offrir une vision précise de l'expérience utilisateur.

Trois types de sondes sont utilisés : Uptime check, Certificate check et Browser & API tests. Elles surveillent la disponibilité d'un système ou de parcours utilisateurs critiques en vérifiant régulièrement s'ils sont en ligne et accessibles.

Nous avons choisi Datadog comme plateforme d'observabilité en raison de ses fonctionnalités robustes, notamment pour la réalisation des Browser & API tests. Blackbox exporter et Pingdom, pour ne citer qu’eux, ne permettent pas de mettre en place des vérifications multiples. Datadog nous offre une flexibilité essentielle pour implémenter des tests black-box complets.

La saturation et le trafic peuvent être mesurés directement sur les machines en mode white-box à l’aide des services managés ou de la Prometheus Stack. Cependant, les problèmes de saturation dans le cloud sont souvent gérés par des approches de type autoscaling, ce qui rend l’alerting sur ceux-ci moins populaire. Cependant, on ne peut pas scale à l’infini si l’on souhaite s’inscrire dans une culture d’optimisation des coûts.

En mesurant ces quatre indicateurs et en alertant un humain lorsqu'un signal pose problème, les services de nos clients sont correctement suivis. De plus, ils auront accès à la disponibilité de leur plateforme en toute transparence grâce aux SLO résultants du monitoring black-box.

Les SLO (Service Level Objectives)

Les SLO sont des objectifs de niveau de service définis par les équipes opérationnelles en consultation avec les parties prenantes du produit. Ils représentent les promesses faites aux clients concernant la disponibilité et la qualité du service. Dans le cas de l’infogérance à Padok, les SLO sont mesurés en pourcentage de disponibilité (uptime) et sont utilisés pour évaluer la performance du service.

Par exemple, un SLO de 99% d'uptime signifie que le service doit être disponible 99% du temps. Les SLO servent de base pour mesurer la performance réelle par rapport aux attentes et pour prendre des mesures correctives si les objectifs ne sont pas atteints.

Pour garantir une transparence totale, nous mettons en place des dashboards dans Datadog auxquels nos clients peuvent accéder. Cela leur permet de suivre la disponibilité de leur plateforme.

Nous intégrons également Datadog à Slack pour remonter les alertes dans des channels dédiés. Ces alertes font référence à des runbooks, c’est à dire une collection de procédures documentées qui explique comment gérer un processus en particulier. Ils facilitent la communication et la résolution des incidents.

Pour conclure, notre approche du monitoring centrée sur l'utilisateur, associée à la mise en place de sondes en mode black-box et de SLO, accélère la remise en marche des infrastructures de nos clients en infogérence. Cela contribue à maintenir une infrastructure de qualité et stable.

En cas d'incident, nous agissons rapidement grâce à un processus bien défini d'alertes, de réactions et d'analyses post-mortem, ce qui limite la récurrence des incidents de même type.

De plus, notre approche nous permet d'identifier les points faibles de l'infrastructure, d'investiguer les problèmes et de proposer des améliorations continues. Pour nos clients, cela se traduit par une réactivité optimale et une expérience utilisateur améliorée, renforçant ainsi la confiance dans nos services d'infogérance.