Ou comment passer de la Supervision à l’Observabilité, rendue obligatoire par les Applications devenues des systèmes complexes aujourd’hui.
Dans les articles précédents, nous avons exposés tous les bénéfices pour l’Entreprise de la mise en place d’une infrastructure Réseau basée sur l’intention. L’objectif est de rendre complètement transparent le transport entre un utilisateur, collaborateur ou client, où qu’il soit, et l’application à laquelle il va accéder.
Il s’agit maintenant de s’assurer que l’utilisateur sera toujours satisfait du service fourni par l’Entreprise. Car les modes de consommation évoluent. La qualité de l’expérience digitale de l’utilisateur devient donc fondamentale.
L’avènement du « on-demand »
La technologie a changé notre façon de vivre et de travailler, mais rien n’a eu autant d’impact sur les entreprises modernes que la révolution du « on-demand ».
C’est ce nouveau mode de consommation qui impose la mise en place d’une supervision de l’expérience digitale.
Il est devenu extrêmement courant aujourd’hui d’effectuer de multiples actions en se connectant sur un site web. On peut y réserver un taxi, y faire ses courses de tous les jours, effectuer des transactions bancaires, réserver son week-end à l’hôtel ou dans un airbnb. Et cela en quelques clics sur l’application du site web.
Dans ce nouveau monde du « on-demand », la façon dont l’entreprise va s’engager avec ses clients, et donc la façon dont elle va générer des revenus, dépend de plus en plus de l’ « expérience digitale » que le client va vivre avec cette entreprise.
Et l’expérience digitale est fonction du comportement de l’application de l’entreprise à laquelle accède le client.
Ainsi, l’application n’est plus juste une composante de l’activité Métier de l’entreprise, elle devient LE Métier !!
Si l’application présente une faiblesse, le Métier s’arrête.
Le « on-demand » a permis à de nombreuses entreprises de développer une activité extrêmement profitable. Airbnb, Uber, Blabla car, etc. Cela en construisant une relation de proximité avec leurs clients.
Mais ce marché est très concurrentiel. Cette relation est mise en péril à la moindre dégradation de l’expérience digitale du client comme cela est confirmé ci-dessous :

C’est la caractéristique du « on-demand », le client ne va pas attendre que le comportement de l’application s’améliore. Il sait qu’il trouvera un service équivalent ailleurs.
Si je résume :
- L’application représente le Métier de l’entreprise,
- L’application assure la qualité de l’expérience digitale du client.
Afin de fournir l’agilité attendue par les Métiers, la structure même des applications a évolué.
Nous sommes passés d’un format d’application monolithique et centralisée à un format d’application distribuée et dite « Cloud-native ».
Caractéristiques d’une application moderne
Les applications dîtes « cloud-native » ont plusieurs caractéristiques majeures :
- Elles sont développées sur la base de micro-services. Une application moderne est le fruit de la concaténation de dizaines ou de centaines de modules applicatifs unitaires et réutilisables.
- La mise en production sera très rapide (l’agilité attendue par les Métiers) en démarrant simplement avec un noyau applicatif composé de quelques modules applicatifs.
- L’évolution et l’enrichissement de l’application sera également extrêmement rapide en n’intervenant que sur un ou quelques modules,.
- Ces modules applicatifs sont déployés dans des environnements multiclouds, public et privé. L’application est naturellement distribuée.
Il faut maintenant s’assurer du bon fonctionnement de cette application afin de garantir une expérience digitale de qualité pour l’utilisateur.
Il apparait malheureusement que de nombreuses Entreprises continuent de fonctionner en mode réactif. Elles attendent que le problème survienne pour le traiter :

Hélas lorque le problème est découvert, il est souvent trop tard. Dans le monde du on-demand, l’expérience digitale du client est acquise en quelques secondes.
Il faut donc superviser cette expérience digitale de façon proactive afin de fournir la meilleure expérience digitale pour chaque utilisateur, collaborateur ou client.
L’initiative Digital Experience Monitoring (DEM) du Gartner
Le Gartner a théorisé cette approche de la supervision de l’expérience digitale dans son initiative Digital Experience Monitoring (DEM).
Afin de couvrir l’intégralité de cette expérience digitale, DEM définit 3 éléments distincts :
- RUM pour Real User Monitoring : mesure de l’expérience utilisateur d’un point de vue de l’application
- EP pour End-Point monitoring : visibilité au niveau du terminal (smartphone ou autre) de l’utilisateur
- STM pour Synthetic Transaction Monitoring : la capacité à émuler une transaction depuis l’utilisateur jusqu’à l’application afin d’en évaluer son comportement.
Les solutions de supervision traditionnelles ne sont plus vraiment adaptées à cette supervision de l’expérience digitale telle que décrite par le Gartner :
- L’accès distant via Internet s’est généralisé. La situation sanitaire a imposé le télétravail.
- Les applications « cloud-native » sont distribuées.
On constate ainsi que l’application et son infrastructure de transport deviennent des systèmes complexes. Le terrain de jeu est devenu extrêmement vaste :

Un outil de supervision traditionnel remonterait trop d’informations pour une application donnée. L’administrateur ne pourrait plus les corréler afin d’obtenir une vue globale du comportement de cette application.
Il faut donc passer de la visibilité à l’observabilité.
De la visibilité vers l’observabilité
Voilà deux exemples de la définition de l’observabilité :
L’observabilité est une mesure de la façon dont les états internes d’un système peuvent être déduits de la connaissance de ses sorties externes. Dans la théorie du contrôle, l’observabilité et la contrôlabilité d’un système linéaire sont des duels mathématiques.
L’observabilité est la capacité à mesurer les états internes d’un système en examinant ce qu’il produit. Un système est considéré comme « observable » si son état actuel peut être estimé uniquement en utilisant les informations de sortie, à savoir les données des capteurs.
On peut noter plusieurs points majeurs dans ces définitions : Système, Contrôle, Capteurs.
L’observabilité est née il y a plusieurs décennies de la théorie du contrôle sur les systèmes d’autorégulation dans l’Industrie.
Il est de nos jours de plus en plus appliqué aux Systèmes Informatiques qui deviennent des systèmes complexes avec les applications Cloud-Natives distribuées dont chaque brique est devenue mobile.
Notre explication :
Une application moderne, cloud-native, à base de micro-services distribués on-prem et dans des Clouds Publics va remonter trop d’informations pour être supervisée par une solution traditionnelle.
Le fameux « data noise ».
Il faut donc s’appuyer sur des données remontées par l’application qui va analyser elle-même son comportement. Cela permettra d’en déduire un comportement correct ou non, via des « baselines », ou comportements standards.
Les métriques issues de l’application elle-même seront ensuite corrélées avec une analyse comportementale de l’application, du Réseau de transport et des infrastructures de traitement de cette application.
FSO pour « Full Stack Observability »
Reprenons notre application distribuée et Cloud-Native et discernons trois interactions :

Nous voyons trois interactions :
- Vert : de l’utilisateur vers son application SaaS en passant par le DC, un Cloud hybride et une coloc,
- Orange : analyse du comportement Réseau en tout point emprunté par la transaction de l’utilisateur ci-dessus,
- Rouge : analyse des workloads on-prem et Cloud Public potentiellement utilisés par l’application de cet utilisateur.
IWO récupérera les informations de charge du workload de l’application de l’utilisateur. ThousandEyes récupérera les métriques Réseau propres au chemin emprunté par cet utilisateur vers son application. Les deux enverront leurs conclusions à AppDynamics qui va corréler le tout avec sa propre analyse applicative et fournir une visualisation complète de la chaine Utilisateur – Application !
La pile FSO est la conjugaison des 3 moteurs assurant une observabilité complète d’une transaction donnée entre un utilisateur où qu’il soit et son application où qu’elle soit.
Ces 3 moteurs sont complémentaires et leur champ d’action est très large.
IWO pour InterSight Workload Optimizer :
À même de récupérer les métriques de tous types de Workloads :
- On-prem : KVM, HyperV, ESXi, bare-mtal,
- Cloud Public : AWS, Azure.
AppDynamics :
Analyse applicative et détection de mauvais codage dans un code applicatif, quel que soit le langage utilisé, et détection de faille de sécurité via le module Secure Application.
Basé sur des agents déployés entre l’utilisateur (depuis son terminal professionnel et / ou son SmartPhone) jusqu’au workload applicatif.
ThousandEyes :
Basé sur 3 principes majeurs de nos jours :
- Mobilité des workloads avec une migration massive vers le Cloud en mode IaaS ou SaaS,
- Flexibilité dans la façon de travailler, accrue avec la pandémie,
- Migration de Réseau de type MPLS et donc maitrisé par l’Entreprise ou son Partenaire vers du SD-WAN sur Internet qui n’est pas visible de l’Entreprise.
ThousandEyes va mesurer la qualité du Réseau de Transport entre l’utilisateur et son application afin d’identifier d’éventuels problèmes Réseau pouvant avoir un impact sur l’Expérience de cet utilisateur.
Ces informations seront renvoyées à AppDynamics qui pourra corréler avec sa propre analyse comportementale de l’application.
Dashboarding FSO
L’Observabilité fournie par l’approche FSO de Cisco est matérialisée ci-après :

ThousandEyes et IWO vont alimenter AppDynamics afin de fournir une vision complète de l’application.

En résumé
L’objectif de cet article est d’analyser la proposition d’un constructeur. Cette solution nous parait pertinente pour les points suivants :
- Visibilité « horizontale » : du collaborateur jusqu’à son application,
- Visibilité « verticale » : ou full-stack, d’un composant donné de l’application jusqu’à l’infrastructure qui exécute ce module applicatif,
- Visibilité du « transport » entre cet utilisateur où qu’il soit et son application où qu’elle soit.
Cette proposition nous permet également, outre sa visibilité complète, de basculer de la Supervision, trop limitée de nos jours, vers l’Observabilité requise par les nouvelles applications Cloud-Natives.