Question d'entretien pour Ingénieur SRE

Quelle est la différence entre une sonde de liveness et une sonde de readiness, et comment les gens se trompent-ils ?

Ce que le recruteur cherche à évaluer, comment structurer votre réponse et un exemple parlé à adapter.

Réponse rapide

Une sonde de readiness contrôle si un pod reçoit du trafic ; une sonde de liveness contrôle si le kubelet redémarre le conteneur. L'erreur classique est de pointer la liveness vers une dépendance en aval, si bien qu'une base de données lente redémarre tous les pods en boucle et transforme une panne partielle en panne totale. La liveness ne devrait vérifier que le fait que le processus est vivant et non bloqué. Utilisez une sonde de startup pour les applications qui démarrent lentement.

Pourquoi les recruteurs posent cette question

C'est l'une des questions Kubernetes les plus rentables, parce qu'une mauvaise configuration provoque activement des pannes et que le mode de défaillance est contre-intuitif. Le recruteur veut vous entendre dire que la liveness est un dernier recours pour des états irrécupérables, que la readiness est le bon endroit pour vérifier les dépendances, et que les délais et seuils des sondes doivent refléter le vrai comportement au démarrage.

Comment structurer votre réponse

  • Énoncez la différence mécanique : routage du trafic contre redémarrage du conteneur.
  • Nommez l'anti-patron de la vérification de dépendance et son rayon d'impact.
  • Expliquez ce que la liveness devrait vraiment vérifier.
  • Ajoutez les sondes de startup et des seuils sensés pour les applications lentes à démarrer.

Exemple de réponse

Exemple parlé, à la première personne

La readiness décide si le pod figure dans les endpoints du service, la liveness décide si le kubelet tue et redémarre le conteneur. La panne que j'ai vraiment vue, c'est une équipe qui avait fait vérifier la base de données par l'endpoint de liveness. La base a ralenti, tous les pods ont échoué la liveness à peu près en même temps, tout le déploiement est parti en boucle de redémarrage, et au lieu de lectures dégradées on n'avait plus rien du tout, plus une ruée de connexions froides au retour. La liveness devrait être presque ennuyeuse : le processus peut-il servir un handler trivial, la boucle d'événements est-elle coincée. Tout ce qui touche aux dépendances appartient à la readiness, parce que sortir un pod de la rotation est réversible et bon marché. L'autre chose que je vérifie toujours, c'est le timing. Si l'application met 45 secondes à préchauffer ses caches, soit vous utilisez une sonde de startup, soit vous réglez initialDelaySeconds et failureThreshold en conséquence, sinon vous avez construit une machine qui ne peut jamais finir de démarrer.

Vous passez cet entretien bientôt ? GhostPilot écoute votre appel en direct, repère la question dès qu'elle est posée et affiche une réponse structurée à l'écran en temps réel. Essayez-le lors de votre prochain entretien blanc, ou prenez un Session Pass à $29, sans abonnement, pour le jour J.

Voir comment ça marche

Questions de relance à prévoir

  • Qu'arrive-t-il aux requêtes en cours quand une sonde de readiness commence à échouer ?
  • Comment configureriez-vous les sondes pour une application avec 90 secondes de préchauffage ?
  • Quand est-il correct que la liveness échoue volontairement ?

Autres questions pour Ingénieur SRE

Votre recruteur posera sa propre version de celle-ci. Collez votre véritable fiche de poste dans le Question Predictor gratuit et obtenez les 20 questions que ce poste a le plus de chances de poser, avec ce que chacune cherche vraiment à sonder.

Prédire mes questions

Répétez les questions difficiles avant qu'on vous les pose

Entraînez-vous avec un copilote en direct, puis présentez-vous prêt. Un Session Pass à $29 vous accompagne pendant l'entretien, sans abonnement et sans engagement.

Obtenir GhostPilot