Les 3 piliers de l'observabilité

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
121
Mois de parution
octobre 2022
Spécialité(s)


Résumé

N'importe qui ayant travaillé dans l'informatique depuis plus de cinq ans vous le dira : on n'a pas attendu Google et son livre sur les SRE [1] pour « monitorer » nos systèmes. Au passage, excusez-moi pour l'affreux barbarisme alors que j'aurais pu utiliser le mot surveiller tout simplement, mais alerte de « divulgâchage » : il y en aura malheureusement bien d'autres dans cet article, parce que soit je ne trouve pas la traduction française satisfaisante, soit la traduction française n'a pas exactement le même sens. Alors pourquoi depuis cinq ans ne parle-t-on plus que d'observabilité et non plus de monitoring ?


C'est que les choses dans le paysage de l'IT ont pas mal changé ces dernières années. Mais vous le savez sans doute déjà : il y a eu l'arrivée des microservices, des conteneurs, des orchestrateurs... Comment y échapper ! Mais pour que tout le monde soit à la même page avant d'entrer dans le vif du sujet, nous allons commencer par un petit retour dans le temps pour mieux comprendre les challenges auxquels l'observabilité doit faire face.

1. Il était une fois...

Il n'y a pas si longtemps, le terme service n'était jamais employé pour désigner une application, et pour cause, l'application en question était le plus souvent un monolithe. Ici, pas de débat entre monolithe et microservices, juste une brève histoire du temps. Exécuter une application monolithique était une opération relativement simple, et pour qu'un monolithe soit isolé des autres workloads, il suffisait de lui dédier sa propre machine virtuelle. Partant de là, « monitorer » un monolithe...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne
Références

[1] Les livres sur le Site Reliability Engineering de Google sont disponibles en ligne (et en anglais) : https://sre.google/books/

[2] Traduction d'un tweet de « Honest Update @honest_update » de 2015 : "We replaced our monolith with micro services so that every outage could be more like a murder mystery." https://twitter.com/honest_update/status/651897353889259520

[3] Les Golden Signals sont définis dans le livre du SRE : 
https://sre.google/sre-book/monitoring-distributed-systems/

[4] Les signaux dans OpenTelemetry : 
https://opentelemetry.io/docs/concepts/signals/

[5] J'espère que je ne vous fais pas découvrir eBPF, il y a en ce moment même une telle hype autour de cet outil révolutionnaire qu'il est difficile de passer à côté : https://ebpf.io/

[6] Le papier de recherche de Google intitulé Google Wide profiling: A continuous profiling infrastructure for data centers est disponible en ligne : https://research.google/pubs/pub36575/

[7] BPF ou maintenant cBPF est l'ancêtre d'eBPF, et pour les curieux, Wikipédia nous dit tout : https://fr.wikipedia.org/wiki/BSD_Packet_Filter



Article rédigé par

Par le(s) même(s) auteur(s)

Le Continuous Profiler

Magazine
Marque
GNU/Linux Magazine
Numéro
264
Mois de parution
juillet 2023
Spécialité(s)
Résumé

L'arrivée de Docker, de Kubernetes et plus généralement de ce que l'on nomme le cloud natif a bousculé nos habitudes : de la manière dont nous écrivons notre code, dont nous le déployons, mais aussi de la manière dont nous l'observons ! Peu d'entre nous se préoccupaient de l'Application Performance Monitoring (APM) avant 2014, et je suis sûr que beaucoup ignorent encore ce qu'est une trace distribuée. Pourtant, avec nos applications dynamiques découpées en microservices et hébergées dans le cloud, il est de plus en plus difficile de faire l'impasse sur ce genre d'outils. Et le continuous profiler est justement l'un de ces précieux outils.

Les logs, encore et toujours pertinents

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
121
Mois de parution
octobre 2022
Spécialité(s)
Résumé

Parmi les trois piliers de l'observabilité, s'il y en a bien un qui n'a pas besoin d'être présenté, ce sont bien les logs. Qui n'a pas son anecdote sur un print initialement utilisé par un développeur pour s'assurer du bon déroulement de son code qui finit par se retrouver dans le code en production ? Le log est réellement l'instrument qui nous permet de répondre à cette question rudimentaire, mais essentielle : que se passe-t-il dans mon code à l'instant t. Mais parce qu'il est simple à utiliser et flexible à souhait, le log pose souvent un réel problème lorsqu'une application passe en production. Et c'est encore plus vrai dans les systèmes distribués.

La magie des métriques

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
121
Mois de parution
octobre 2022
Spécialité(s)
Résumé

Les métriques sont de loin, à mon humble avis, le signal le plus fascinant. Je vous l'accorde, elles sont aussi vieilles que l'informatique elle-même et pour cause : « ce qui ne se mesure pas ne s'améliore pas » [1]. Mais mesurer une chose est parfois un art, et dans les technologies de l'informatique, c'est un art qui a fondamentalement évolué ces dernières années. Non pas qu'on ne mesure plus les mêmes choses qu'il y a 20 ans, la charge d'un CPU et les IOPS ont toujours leur importance, mais on ne les aborde simplement plus de la même manière, surtout quand on vient à parler de systèmes distribués.

Les derniers articles Premiums

Les derniers articles Premium

Bénéficiez de statistiques de fréquentations web légères et respectueuses avec Plausible Analytics

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Pour être visible sur le Web, un site est indispensable, cela va de soi. Mais il est impossible d’en évaluer le succès, ni celui de ses améliorations, sans établir de statistiques de fréquentation : combien de visiteurs ? Combien de pages consultées ? Quel temps passé ? Comment savoir si le nouveau design plaît réellement ? Autant de questions auxquelles Plausible se propose de répondre.

Quarkus : applications Java pour conteneurs

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Initié par Red Hat, il y a quelques années le projet Quarkus a pris son envol et en est désormais à sa troisième version majeure. Il propose un cadre d’exécution pour une application de Java radicalement différente, où son exécution ultra optimisée en fait un parfait candidat pour le déploiement sur des conteneurs tels que ceux de Docker ou Podman. Quarkus va même encore plus loin, en permettant de transformer l’application Java en un exécutable natif ! Voici une rapide introduction, par la pratique, à cet incroyable framework, qui nous offrira l’opportunité d’illustrer également sa facilité de prise en main.

Les listes de lecture

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.
11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.
10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Voir les 64 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous