kalafoto - Fotolia
Sysdig Cloud : une impressionnante solution de supervision pour les microservices
Avec sa solution de monitoring et de gestion des performances Sysdig Cloud, Sysdig permet d'analyser en temps réel la performance des applications distribuées. La dernière mouture de l'outil étend son support aux architectures conteneurisées.
À l’occasion du récent ITPressTour, Le MagIT a pu s’entretenir avec les fondateurs de Sysdig, une jeune start-up fondée et dirigée par Loris Degioanni, le créateur de l’outil d’analyse réseau open source WireShark. L’occasion de découvrir la solution Sysdig Cloud développée par la société autour de l’outil de monitoring open source Sysdig. Et le moins que l’on puisse dire est que la solution de monitoring et de gestion de la performance développée par la firme est impressionnante, notamment lorsqu’il s’agit de superviser des applications distribuées et des applications en conteneurs.
À l’origine, l’outil open source Sysdig a été bâti spécifiquement pour fournir une visibilité sur le fonctionnement des applications et des infrastructures Linux (il fonctionne aussi désormais de façon limitée avec Windows). Avec Sysdig Cloud, Sysdig a étendu les capacités d’analyse de l’outil au monde des conteneurs, ce qui permet à la firme de monitorer des infrastructures de conteneurs à grande échelle sans avoir à déployer d’agents. Le logiciel s’implémente comme un conteneur privilégié qui analyse en quasi-temps réel les événements systèmes, les appels Syscall et les échanges réseaux (on reconnaît là la patte de WireShark). Les données collectées sur chaque nœud sont streamées vers un back-end qui permet de corréler les informations et de fournir une visibilité globale sur l’architecture et la performance des applications à l’échelle du datacenter.
Des capacités d’analyse et de corrélation qui impressionnent
Concrètement, Sysdig instrumente le noyau Linux (le logiciel agit de facto comme une sonde) et collecte des informations sur l’ensemble des appels systèmes ce qui permet sans avoir à mettre en œuvre des agents locaux de monitorer l’ensemble des processus tournant sur un serveur. Sysdig Cloud étant déployé comme un conteneur privilégié, la technologie permet également de monitorer l’intégralité des applications tournant dans des conteneurs et ce sans avoir à déployer des agents dans les conteneurs eux-mêmes.
Cette visibilité “par le dessous” est une des principales forces du produit. L’ensemble des informations collectées par les “agents” sysdig déployés sur chacun des serveurs est en effet centralisé vers un back-end de corrélation qui peut être déployé dans le cloud (sysdig cloud) ou en mode on-premises, au choix du client. Ce back-end permet de corréler les événements et de fournir une visibilité de bout en bout sur le fonctionnement des applications du datacenter. Cette capacité de visualisation est tout particulièrement impressionnante dans le cas d’applications conteneurisées à base d’architectures de microservices.
L’autre force de l’outil réside dans son interface de visualisation. Du fait de la nature des informations qu’il collecte, Sysdig est capable de cartographier les applications du SI et fournir une visibilité de bout en bout de l’ensemble des composants participant à un service applicatif. Cette capacité est impressionnante car les framework d’orchestration de conteneurs comme Kubernetes ou Mesos positionnent dynamiquement les conteneurs sur l’infrastructure. En particulier, Sysdig est à même, en temps réel d’afficher une carte dynamique des différents conteneurs participant à une application. Il sait aussi analyser en temps réel les appels et transactions intervenant entre les différents conteneurs afin de diagnostiquer précisément la performance et le fonctionnement de l’application. De ce fait, l’outil peut à la fois être utilisé par des développeurs, par des administrateurs systèmes mais aussi pour fournir des métriques métiers aux utilisateurs.
Des capacités avancées d’aide au diagnostic
Lors de sa démonstration l’éditeur a aussi mis en lumière les possibilités de diagnostic et d’analyse en profondeur offertes par la solution. Par exemple, si l’outil identifie un problème de performance de base de données, il est possible d’afficher la requête SQL qui a posé le problème (via les capacités d’analyse profonde de paquets héritées de Wireshark). Sysdig peut faire de même pour les applications Java via une intégration avec les capacités JMX (Java Management Extensions) des différents serveurs d’applications Java. L’outil peut aussi corréler des informations provenant d’autres outils comme statsd. Sysdig permet également de comparer l’état de composants à différents moments de la journée et de “remonter le temps” pour faire une analyse a posteriori d’un problème. L’outil peut enfin être utilisé pour détecter des comportements malicieux (Le module Sysdig Falco est un agent de sécurité à base d’analyse comportementale qui s’appuie sur les données collectées par Sysdig pour détecter des anomalies dans le comportement des applications).
Dans sa version Cloud, Sysdig est proposé au prix de 20 $ par mois et par serveur supervisé, un prix qui inclut l’hébergement complet des données dans le cloud par Sysdig. Le logiciel est aussi disponible en mode on-premises via une licence annuelle. Le prix de cette version n’a toutefois pas été précisé par l’éditeur.