Orlando Florin Rosu - Fotolia
La maturité de Kubernetes fait naître des standards d’observabilité
Les professionnels de l’IT d’entreprise ont appris comment déployer Kubernetes. Maintenant, ils s’appuient sur les standards d’observabilité open source pour les aider à maintenir les applications cloud natives en bonne santé.
Maintenant que les entreprises comprennent comment déployer Kubernetes, elles se concentrent sur les techniques d’observabilité. Elles permettent de maintenir le bon fonctionnement de microservices complexes sur la plateforme et de résoudre les problèmes complètement et rapidement.
C’est l’une des conclusions qui ressort des réponses à l’enquête 2020 de la Cloud Native Computing Foundation (CNCF) auprès des utilisateurs finaux, publiée en marge de la KubeCon. Le rapport montre que les organisations ont établi ce changement grâce à l’expérience acquise avec les containers, qui s’est développée dans des domaines multiples au cours des trois dernières années.
Au total, 92 % des 1 324 participants au sondage recourent à des containers en production, soit trois fois plus qu’en 2016. Soixante et un pour cent d’entre eux utilisant plus de 250 conteneurs. Pas moins de 23 % des groupes disposent de 5 000 de ces compartiments virtuels, contre 11 % il y a trois ans.
Cette croissance signifie que la gestion des microservices s’est également généralisée, et avec elle l’attrait pour l’observabilité. L’observabilité est devenue un mot à la mode chez des éditeurs tels que Splunk, Sumo Logic, Instana et d’autres. Cela fait référence à une approche de surveillance IT qui interroge de manière flexible un dépôt centralisé de données provenant d’une grande variété de systèmes informatiques.
Même si les efforts de standardisation du CNCF, dont OpenTelemetry et OpenMetrics, en sont encore au stade de développement, ils ont suscité le plus d’intérêt parmi les répondants à l’enquête du CNCF.
Ces tendances ont également entraîné le lancement d’un groupe de discussion spécial du CNCF sur l’observabilité, SIG Observability, en juin. Ce groupe se concentrera sur l’amélioration de ces standards dans les projets de la fondation.
Mattt YoungPrincipal cloud architect, Everquote
« Les développeurs qui migrent vers Kubernetes ne sont parfois pas conscients des complexités qu’ils doivent affronter avec les microservices », alerte Matt Young, principal cloud architect chez EverQuote et co-fondateur de SIG Observability. « Jusqu’alors, une grande partie des outils d’enregistrement, de traçage et de surveillance étaient considérés comme non essentiels. Pourtant, il ne s’agit plus de superviser une VM unique. Il y a 20 répliques de mon service qui parlent à 20 répliques du service de quelqu’un d’autre, et il faut être capable de rationaliser tout cela ».
Des tentatives pour mettre de l’ordre dans le chaos de l’observabilité
Jusqu’à présent, OpenTelemetry est le plus mature des efforts de la CNCF en matière d’observabilité. Le projet a débuté en mai 2019 avec la fusion d’OpenTracing hébergé chez CNCF et d’OpenCensus de Google. Depuis, OpenTelemetry a été adoptée par d’autres outils à l’instar de Jaeger et de l’outil de traçage distribué Tempo de Grafana Labs. Des éditeurs de solutions APM propriétaires tels que New Relic, Dynatrace et Datadog embrassent OpenTelemetry, ainsi que des fournisseurs cloud, AWS, entre autres.
Pour les entreprises, OpenTelemetry pourrait faciliter le choix des instruments sur un marché en pleine explosion cette année.
« Tout ce que nous utilisons est compatible avec OpenTelemetry » témoigne Pratik Wadher, vice-président du développement de produits chez l’éditeur de logiciels financiers Intuit (Quickbooks, Turbotax). Intuit a annoncé cette semaine avoir terminé la migration de son environnement TurboTax vers Kubernetes. « Il nous fournit essentiellement la possibilité de prendre des données de n’importe où, de les placer dans un lac de données opérationnel et d’y appliquer des algorithmes et des modèles [de machine learning] ».
De son côté, le projet OpenMetrics, stable depuis le 13 novembre, cherche à standardiser un format de fil pour Prometheus et d’autres outils de surveillance open source. OpenTelemetry, qui englobe les logs, les métriques et les traces, supportera également les normes OpenMetrics.
À terme, les responsables d’OpenMetrics soumettront leur standard à l’Internet Engineering Task Force (IETF) pour publication. Cet appel à commentaires, selon les professionnels de l’IT, pourrait élargir sa portée bien au-delà de la CNCF.
« Cela devrait donner à Prometheus une légitimité dans un écosystème beaucoup plus vaste », considère Phil Fenstermacher, ingénieur système chez William & Mary, une université de Williamsburg, en Virginie. « Je suis plus susceptible de réussir à demander à un éditeur de soutenir un standard Internet que d’approuver un autre outil de surveillance ».
Les entreprises appliquent l’observabilité à l’approche BizDevOps
Avec l’émergence des standards d’observabilité, les objectifs des grandes entreprises telles qu’Intuit sont doubles. Il s’agit d’améliorer le temps moyen de réparation (MTTR) dans les environnements de microservices et d’utiliser des données enrichies pour fournir des indicateurs économiques.
Lorsque Intuit a commencé à migrer vers Kubernetes avec TurboTax en 2018, elle était principalement motivée par la possibilité d’accélérer les mises en production d’applications et la vitesse de développement. Elle s’attendait également à des améliorations de son MTTR et du temps moyen de détection (MTTD) des problèmes. Le MTTD est passé de quelques heures à quelques minutes, mais le MTTR n’a pas diminué autant que l’équipe de Pratik Wadher l’aurait souhaité.
Pratik WadherVP développement de produits, Intuit
« Nous nous concentrons sur une nouvelle plateforme d’observabilité dans laquelle nous investissons beaucoup afin de réduire davantage le MTTR et le MTTD », annonce Pratik Wadher.
Intuit alimente un lac de données d’observabilité centralisé sur Amazon S3 par l’intermédiaire des pipelines de données Kafka, où les algorithmes de machine learning recherchent les anomalies et les patterns. Deux interfaces maison présentent ces données aux équipes. Un tableau de bord de la santé de l’entreprise indique l’état de tout service et de ses dépendances, et un outil de dépannage classe les dysfonctionnements les plus significatifs de l’infrastructure associée à chaque service.
« Sur cette base, vous pouvez rapidement déterminer s’il se passe quelque chose dans le système et orienter les gens de manière très précise pour qu’ils résolvent le bon problème » vante le responsable. Ces outils nécessitent davantage de tests et de développements internes, mais rejoindront probablement d’autres projets open source qu’Intuit a créé à partir de ses initiatives personnelles, telles que Keiko et Admiral.
Intuit importe également dans son dépôt d’observabilité des données provenant de systèmes situés au-delà de son infrastructure, allant des IDE à Zoom et Outlook, afin d’avoir une meilleure idée de la façon d’améliorer la productivité des développeurs.
« Nous collectons des données Outlook et Zoom pour analyser le nombre de réunions que nous préparons, le temps moyen que nos développeurs passent en conférence, et appliquer un modèle pour catégoriser ces éléments d’organisation » témoigne Pratik Wadher. « Nous pouvons ensuite prévoir des expérimentations : “Et si nous n’avons pas de réunions de 13 à 17 heures, cela nous permettra-t-il de donner aux développeurs plus de temps pour programmer de manière ininterrompue ?” »
Matt YoungPrincipal cloud architect, Everquote
EverQuote travaille également sur des systèmes BizDevOps alimentés par des standards d’observabilité. La société envoie les données collectées via le service mesh Linkerd au dépôt Cortex de Grafana Labs, ainsi que les données du logiciel de suivi des problèmes Jira d’Atlassian via ses propres exportateurs Prometheus écrits en interne.
« Nous pouvons tout corréler (tant que les déploiements ont eu lieu au moment où les équipes poussent leur code) jusqu’à la somme d’argent que nous gagnons un jour en particulier en utilisant ce dispositif d’observabilité », assure Matt Young. « Avec Grafana, nous pouvons prendre des données à partir des mesures fournies par Linkerd sur ce que les services font réellement, et les superposer directement aux informations commerciales pour montrer quand un nouveau service a été déployé ou des systèmes ont été passés à l’échelle ».
Si ces projets semblent avancés, il est bon de noter que ces témoins sont éditeurs. Qu’en est-il de l’adoption d’OpenTelemetry et d’OpenMetrics par ceux qui utilisent les produits du marché ? Difficile de la savoir, tout le monde doit faire ses preuves.