Cloud : comment monter son équipe d'observabilité
Ce domaine implique un état d'esprit particulier qui sort de la logique du monitoring traditionnel. Un virage que les entreprises se doivent de négocier si elles désirent maîtriser leur stack cloud.
Si l'application performance management (APM) se penche sur les applications en monitorant les transactions, l'observabilité, quant à elle, couvre aussi bien les performances applicatives que celles de l'infrastructure et du middleware. Le tout en temps réel. Dans cette optique, elle passe par la collecte et l'analyse de trois types de données : les logs, les traces et les métriques. Les logs sont des enregistrements textuels des événements survenus dans une solution, fournissant des informations précieuses pour le débogage de celle-ci et la résolution de problèmes. Les traces, quant à elles, offrent une vision détaillée des flux d'exécution, ce qui facilite l'identification des goulots d'étranglement et des causes d'un déficit de performance. Et les métriques sont des mesures quantitatives qui décrivent l'état et les performances d'un système à un instant T. Elles peuvent inclure des indicateurs tels que le temps de réponse, l'utilisation de la mémoire ou le nombre de requêtes par seconde.
Partant de là, les outils d'observabilité impliquent l'intervention de site reliability engineers. "Ces profils auront pour mission de mettre en place des processus de résilience et d'amélioration de la qualité de service applicatif", souligne Guillaume Langlois, squad leader SysOps / SRE / observabilité chez Devoteam. Ils seront chargés de scruter les indicateurs issus des solutions d'observabilité en vue de remonter les alertes de dysfonctionnement au service d'astreinte, aux cloud engineer ainsi qu'aux développeurs. Leur principal défi sera de faire travailler tous ces profils ensemble. Ces derniers se chargeant ensuite de résoudre collectivement les problèmes identifiés en ayant une visibilité du bas en haut de la stack. "Les site reliability engineer vont également s'assurer de la mise en œuvre de bonnes pratiques d'observabilité, de service level objective et des outils associés", commente Yrieix Garnier vice-président produits au sein de l'éditeur de plateforme d'observabilité Datadog.
Résultat : les outils d'observabilité sont de véritables solutions de collaboration qui vont faire intervenir les développeurs, les responsables de productions, mais aussi les product owner métier par le biais de KPI applicatifs et business. "Chacun devra s'approprier une part de l'observabilité et être capables de travailler avec ses collègues en vue de résoudre les problèmes tout en étant dans une démarche d'amélioration continue. Il s'agira donc d'avoir une bonne ouverture d'esprit", insiste Fabrice Normand, directeur de la transformation et de l'innovation ICS chez Sopra Steria. Partant de là, il est recommandé de dresser des revues transverses à l'infrastructure, au développement et aux métiers. Côté production, il est conseillé de faire appel à des profils qui ont de bonnes compétences en automatisation. "Derrière un outil d'observabilité, il est nécessaire de bien l'intégrer à l'écosystème IT de l'entreprise. Ce qui est le rôle des équipes de production", décrypte Fabrice Normand.
Un projet de transformation
"La mise en place d'un outil d'observabilité est un véritable projet de transformation qui va nécessiter d'acculturer les équipes IT", martèle Fabrice Normand. "Mener à bien ce projet implique un directeur de programme. Ce profil devra bénéficier d'une bonne expertise technique et d'un bon relationnel pour embarquer les collaborateurs de la DSI en vue qu'ils adhérent à la démarche." Il s'agira avant tout d'un leader qui ait idéalement des compétences en monitoring mais aussi en développement. "L'idéal est un profils d'ops qui fait partie d'une équipe devops depuis quelques années", recommande Fabrice Normand. En parallèle, l'équipe d'observabilité aura un rôle transverse de sensibilisation des développeurs, avec en toile de fond la nécessité de facto d'un sponsoring et d'un soutien très fort de la part du DSI. Cette démarche passera idéalement par le déploiement d'un référent dans chaque équipe DevOps. "Aux côtés d'experts en outils d'observabilité, il est important aussi de désigner un évangéliste qui sera chargé d'accompagner l'ensemble des utilisateurs et de les aider à s'approprier les solutions", complète Guillaume Langlois. "En termes de projet, l'objectif sera de commencer par un petit périmètre pour mettre en valeur une première success story qui permettra ensuite de convaincre plus largement d'autres DevOps et ops à s'engager."
"Un site delivery manager aura en charge de porter la stratégie d'observabilité et sa gouvernance"
Pour Guillaume Langlois chez Devoteam, d'autres profils viendront enrichir l'équipe d'obervabilité. "Un site delivery manager aura en charge de porter la stratégie d'observabilité, sa gouvernance, mais aussi la comitologie c'est-à-dire les réunions organisées pour s'assurer de la bonne intégration d'une nouvelle application au dispositif en termes de tags ou encore d'indicateurs à atteindre", détaille-t-il. "A ce profil viendront s'ajouter des business analyst qui auront pour mission de mettre en place des rapports d'obervabilité à destination des métiers." Dans le cas du déploiement d'une nouvelle fonctionnalité, il s'agira par exemple de générer des KPI sur le nombre de connexions, la manière dont elle est utilisée, la navigation, etc.
Un Finops orienté observabilité viendra compléter l'édifice. "Il aura pour mission de gérer la refacturation interne des outils d'observabilité en fonction de ce qui est consommé en termes de fonctionnalités sur le terrain", indique Guillaume Langlois. Un Finops orienté cloud viendra finalement ajuster les ressources en fonction de ce qui est remonté par la plateforme en termes d'usage d'infrastructure et de service applicatifs, voire prendre des décisions comme par exemple recourir à l'utilisation du serverless ou d'instances réservées. "Les offres des providers de cloud évoluant en permanence, les outils d'observabilité évolueront au même rythme. Sans compter que les éditeurs élargissent leur scope en allant se frotter à la sécurité, au numérique responsable… Ce qui implique en parallèle pour l'équipe d'observabilité un rôle de veille régulier", complète Fabrice Normand.
Une logique DevOps
Dans une logique DevOps, l'équipe d'observabilité fera en tout premier lieu le lien entre les développeurs et les équipes en charge de l'infrastructure. "L'observabilité fournira les outils qui permettent la communication entre les deux parties. Le changement des allocations de mémoire sur un cluster Kubernetes ou du nombre de clusters et de leur taille pourront avoir un impact sur les applications. Et vice-versa, si mon application doit évoluer, il faudra probablement faire évoluer l'infrastructure qui la supporte. Sans compter qu'un déploiement pourra engendrer des problèmes au niveau de l'architecture sous-jacente", détaille Yrieix Garnier.
Souvent les entreprises débutant dans l'observabilité vont profiter de la mise en place d'un projet de déploiement sur des technologie cloud natives pour se lancer et monter progressivement en compétences. "Dans un second temps, elles étendront l'observabilité aux systèmes déjà en place. Ce qui permettra de déployer les process d'observabilité progressivement", ajoute Yrieix Garnier. Les start-up ayant commencé très tôt à se tourner vers l'observabilité, les grands groupes n'hésiteront pas à aller puiser des compétences chez ces acteurs. "En parallèle, les entreprises activeront aussi le levier de la formation pour négocier leur virage et faire évoluer leurs profils", conclut Yrieix Garnier.