Bases du cloud et des conteneurs

Dans un système où plusieurs services fonctionnent ensemble, on veut savoir par quels services est passée une requête d'un utilisateur, dans quel ordre, et combien de temps elle a passé dans chacun. Parmi les données utilisées pour l'observabilité, laquelle est la plus adaptée ?

  1. AMétriques (séries temporelles numériques comme l'utilisation CPU et le nombre de requêtes)
  2. BJournaux (enregistrements d'événements émis par chaque service)
  3. CTraces (enregistrements du parcours d'une requête et du temps de chaque segment)
Afficher la réponse et l'explication

Réponse : C. Traces (enregistrements du parcours d'une requête et du temps de chaque segment)

L'observabilité est la mesure dans laquelle l'état interne d'un système peut être déduit des données qu'il émet, et l'on cite souvent les métriques, les journaux et les traces comme données à cet effet. Dans le traçage (traçage distribué), un identifiant propre à la requête est transmis entre les services, et les heures de début et de fin des segments de traitement (spans) dans chaque service sont enregistrées pour reconstituer le parcours d'une requête et la répartition de son temps. Les métriques conviennent pour détecter les tendances générales et les anomalies, et les journaux pour l'examen détaillé d'événements particuliers, mais les traces sont les plus adaptées pour suivre le flux d'une requête à travers les services. En pratique, l'identifiant de la trace est aussi écrit dans les journaux, et l'on combine les trois pour trouver les causes.

S'entraîner sur ce thème Retour au thème

Autres questions sur Bases du cloud et des conteneurs

  1. Parmi les fonctions du noyau Linux qui permettent les conteneurs, quelle association entre les espaces de noms (namespaces), les cgroups (groupes de contrôle) et leur rôle est correcte ?
  2. Sur un hôte Linux, Docker sert à démarrer un conteneur à partir d'une image fondée sur une autre distribution que celle de l'hôte, et l'on y exécute uname -r (commande qui affiche la version du noyau) et cat /etc/os-release (commande qui affiche les informations sur la distribution). Quelle description des résultats est correcte ?
  3. Quelle description de la relation entre une image de conteneur et un conteneur est correcte ?
  4. Dans un conteneur démarré à partir d'une image, on modifie le fichier de configuration /etc/app.conf, qui fait partie de l'image. Quelle description de ce qui se passe avec le mécanisme de stockage habituel de Docker (comme overlay2) est correcte ?
  5. Pour décompresser une archive de 500 MB, data.tar.gz, une image a été construite avec le Dockerfile ci-dessus. Bien que l'archive ait été supprimée dans le même RUN après la décompression, l'image est restée plus grosse de la taille de l'archive. Quelle association entre la cause et le remède est la plus appropriée ?