Les tendances modernes en matière de développement d'applications peuvent apporter une valeur ajoutée considérable à vos investissements informatiques. La vitesse, l'efficacité et la flexibilité de l'infrastructure cloud, la nature distribuée des microservices et les méthodes de déploiement rapide en constante évolution sont autant d'innovations qui changent la donne. Mais chaque avancée peut également accroître la complexité de l'infrastructure informatique, avec d'éventuelles répercussions sur son administration continue.
Supposons, par exemple, que vous exploitiez une application web et mobile multiniveau comportant de nombreux éléments modulables. Dans ce cas, vous savez probablement déjà qu'il est primordial de disposer d'une visibilité détaillée sur l'état de santé de chaque composant et de chaque opération. Vous pouvez collecter les logs de chaque élément, et un système centralisé de surveillance des logs pourra alors exploiter toutes les informations pour vous indiquer l'état de vos services. Cependant, tout le monde ne comprend pas forcément ce qu'une solution de surveillance continue peut apporter de plus.
La surveillance continue est l'approche qui consiste pour une entreprise à surveiller en permanence ses systèmes et réseaux informatiques afin de détecter de manière automatisée les menaces de sécurité et les problèmes de performance ou de non-conformité. Son objectif est d'identifier en temps réel les menaces et les problèmes potentiels afin de les traiter rapidement.
Pourtant, toutes les entreprises n'implémentent pas un système de surveillance continue ou ignorent comment adopter une telle approche. Si la plupart s'appuient sur des données pour éclairer leurs décisions, le suivi qu'elles en font n'est pas nécessairement continu.
Dans cet article, nous aborderons les différents types de surveillance continue, les avantages qu'elle offre, ainsi que quelques bonnes pratiques à adopter pour la mise en place efficace d'un tel système.
Types de surveillance continue
La surveillance continue comprend trois domaines principaux.
- La mesure des performances des applications. Il peut s'agir d'applications conçues sur mesure par votre entreprise ou par des éditeurs de logiciels tiers. Vous voudrez suivre des indicateurs tels que le nombre de transactions et d'erreurs par seconde, ainsi que l'activité de votre système et sa disponibilité pour la surveillance des applications. Un tel suivi peut vous aider à identifier rapidement les bugs logiciels, les goulots d'étranglement des performances et l'expérience générale de l'utilisateur.
- La surveillance de l'infrastructure, à savoir les ordinateurs, les volumes de stockage, le réseau et les autres terminaux physiques que l'on trouve dans les datacenters traditionnels ou dans leurs équivalents virtuels au sein des plateformes cloud. Cette surveillance permet aux équipes informatiques de résoudre les problèmes de performance, d'optimiser l'utilisation des ressources, de réduire les coûts et d'anticiper les besoins en matière de capacité.
- La surveillance du réseau, qui permet de comprendre l'état de ses pare-feux, commutateurs, routeurs et autres terminaux, à mesure qu'il évolue. Ici, les adresses IP source et de destination, les ports et les métadonnées du protocole de votre trafic réseau sont capturés et utilisés pour déterminer l'utilisation de la bande passante, les pertes de paquets, les retards, ainsi que les tentatives potentielles d'intrusion malveillante.
Pour chacun de ces domaines, la surveillance continue utilise des logs, des indicateurs, des traces et des événements en guise de sources de données. Dans cet article, nous nous concentrerons plus particulièrement sur la surveillance continue au moyen des logs.
Avantages de la surveillance continue
La surveillance continue vous apporte davantage de visibilité sur vos opérations informatiques et contribue donc à accélérer les réponses à incident et à les rendre plus ciblées. Plus les erreurs sont repérées de manière précoce, plus l'analyse des causes sous-jacentes et le processus de correction qui s'ensuit peuvent être amorcés rapidement. En d'autres termes, la surveillance continue vous permet de réduire le délai moyen de résolution (MTTR).
De même, elle vous permet d'envoyer des alertes automatisées aux équipes informatiques compétentes afin que celles-ci puissent résoudre sans tarder tout problème urgent. Ces alertes peuvent être associées à des outils d'automatisation, tels que des runbooks, afin d'appliquer des correctifs et de résoudre les problèmes sans intervention humaine. Grâce à cette approche proactive, les clients du système informatique bénéficient d'une expérience totalement transparente.
Par exemple, un outil de surveillance continue peut générer une alerte dès lors que l'espace de stockage disponible sur un serveur particulier tombe sous un seuil prédéfini. Un SMS automatisé est alors envoyé à l'équipe chargée de l'infrastructure afin de l'inviter à augmenter la capacité du serveur ou à ajouter de l'espace au volume du disque. De même, un événement du type « Échec de plusieurs tentatives de connexion » peut déclencher une modification de la configuration du réseau afin de bloquer l'adresse IP en cause et d'alerter l'équipe SecOps.
L'utilisation intelligente des logs dans le cadre de la surveillance continue peut considérablement réduire le risque de cyberattaques. En effet, l'exploitation des logs système historiques permet d'établir des critères de référence en matière de performances, de sécurité et de comportement des utilisateurs. Comprendre comment les choses sont censées fonctionner vous aidera à identifier plus facilement les anomalies à partir des événements de log actuels.
L'exploitation des logs permet également de mettre en corrélation les événements réseau et d'authentification (et de les comparer aux critères de référence), et de repérer les activités suspectes telles que les attaques par force brute, la pulvérisation de mots de passe (« password spraying »), l'injection SQL ou l'exfiltration de données. Par exemple, les logs réseau peuvent mettre en évidence le transfert de fichiers anormalement volumineux, tandis que les logs d'authentification peuvent associer cette activité à un utilisateur spécifique sur une machine déterminée.
Ce type de renseignements peut également être utilisé dans le cadre de l'analyse du comportement des utilisateurs et de la surveillance de l'expérience utilisateur en temps réel. Par exemple, les délais de réponse d'un log d'accès à un serveur web peuvent révéler le comportement normal d'une page de renvoi particulière. Un ralentissement soudain de cet indicateur lié à l'expérience utilisateur peut indiquer un trafic saisonnier important et, partant, la nécessité d'augmenter les ressources, ou être le signe d'une attaque par déni de service distribué (DDoS) potentielle.
Bonnes pratiques en matière d'implémentation de la surveillance continue
Plusieurs bonnes pratiques permettent de mettre en place des solutions de contrôle continu à long terme et durables.
Tout d'abord, votre profil de surveillance doit correspondre aux contraintes organisationnelles et techniques de votre entreprise. Bien qu'il puisse être tentant d'inclure tous les systèmes dans votre infrastructure de surveillance continue, cela peut s'avérer inutilement coûteux et complexe. Un ciblage inapproprié pourrait avoir des répercussions négatives sur la consommation de la bande passante réseau, la capacité de stockage et la puissance de traitement.
Pour éviter ce type de désagréments, une bonne connaissance de votre environnement informatique est essentielle, mais vous devez aussi comprendre les besoins pratiques et les limites de coût. Une concertation étroite avec toutes les parties prenantes des équipes concernées vous aider à comprendre leurs besoins et leurs attentes. L'objectif est d'éliminer tout risque de mise hors service d'un système critique qui ne serait pas surveillé, mais aussi d'éviter que l'équipe comptable ne reçoive des factures pour des installations techniques dont elle n'a pas été informée.
Après avoir identifié les systèmes les plus critiques, le système de surveillance doit identifier et inclure les indicateurs et les événements les plus importants. Vous pouvez par exemple donner la priorité aux erreurs d'application ou choisir d'inclure des événements et des indicateurs liés aux performances. Vous devrez peut-être également faire un choix entre capturer les événements de modification de la configuration du pare-feu et les informations liées à l'interruption du trafic. De même, il vous faudra peut-être déterminer quels problèmes liés aux capacités sont les plus critiques pour vos serveurs.
Une fois le profil des éléments à surveiller établi, vous devez décider comment les surveiller. Le choix d'un logiciel de surveillance doit tenir compte des exigences de votre entreprise, de ses besoins technologiques, ainsi que du budget disponible. Pour tirer le meilleur parti de votre investissement, optez pour un système qui s'adapte à votre environnement existant et à la majeure partie, voire à l'ensemble, de l'environnement envisagé. Cela implique ce qui suit :
- La solution de surveillance continue doit fonctionner avec les architectures applicatives identifiées lors de la phase initiale d'établissement des faits. Ces architectures comprennent tous les composants logiciels, l'infrastructure et les éléments du réseau.
- Les logs, les indicateurs, les événements et les traces provenant de chaque point d'intégration des architectures doivent pouvoir être facilement ingérés par la solution.
- La solution doit être capable d'ingérer, de stocker et de traiter le volume de données capturées au fil du temps.
- Les données collectées à partir des systèmes cibles doivent être chiffrées en transit et au repos. En outre, les informations sensibles doivent être masquées, si nécessaire.
- Les données collectées doivent être hébergées dans des régions géographiques spécifiques lorsque les réglementations sectorielles l'exigent.
- Vous devez être en mesure de rechercher, d'analyser et de visualiser les données contrôlées.
- Les différents événements et indicateurs provenant des mêmes points de contact de l'architecture applicative doivent pouvoir être mis en corrélation.
- Vous devez pouvoir identifier les tendances et les anomalies, réaliser des comparaisons et configurer des alertes sur différents canaux de communication.
- Le modèle de licence doit être flexible et vous devez pouvoir obtenir l'assistance nécessaire au moment où vous en avez besoin.
Enfin, gardez à l'esprit que la surveillance continue ne constitue en aucun cas une approche « set-and-forget » (configurer et oublier). Prévoyez et planifiez un processus d'adoption à la fois continu et itératif couvrant toute la durée de vie de votre produit. En effet, au fil du temps, vous serez amené à :
- Intégrer de nouveaux systèmes dans votre système de surveillance continue
- Collaborer avec toutes les équipes concernées afin de vous assurer qu'elles tirent avantage de la surveillance
- Mettre à niveau et modifier vos systèmes sources pour mieux les intégrer à votre solution
Journalisez toutes vos données et répondez à toutes les questions – gratuitement
Falcon LogScale Community Edition (anciennement Humio) offre une plateforme moderne et gratuite de gestion des logs pour le cloud. Exploitez l'ingestion des données de streaming pour bénéficier d'une visibilité instantanée sur les systèmes distribués, de même que détecter et résoudre les incidents.
Falcon LogScale Community Edition, disponible instantanément et gratuitement, inclut les fonctionnalités suivantes :
- Ingestion de jusqu'à 16 Go de données par jour
- Durée de rétention de 7 jours
- Aucune carte de crédit n'est requise
- Accès continu sans période d'essai
- Journalisation sans index, alertes en temps réel et tableaux de bord en direct
- Accès à notre place de marché et à nos packages, y compris aux guides de création de nouveaux packages
- Formation et collaboration avec une communauté active