Pregunta de entrevista para Site Reliability Engineer

¿Cuál es la diferencia entre una liveness probe y una readiness probe, y en qué se equivoca la gente?

Qué evalúa el entrevistador, cómo estructurar tu respuesta y un ejemplo hablado que puedes adaptar.

Respuesta rápida

Una readiness probe controla si un pod recibe tráfico; una liveness probe controla si el kubelet reinicia el contenedor. El error clásico es apuntar la liveness a una dependencia aguas abajo, de forma que una base de datos lenta reinicia todos los pods en bucle y convierte una caída parcial en una total. La liveness solo debería comprobar que el proceso está vivo y no bloqueado. Usa una startup probe para aplicaciones que arrancan despacio.

Por qué lo preguntan los entrevistadores

Es una de las preguntas de Kubernetes con más valor, porque una configuración incorrecta provoca caídas de forma activa y el modo de fallo es contraintuitivo. El entrevistador quiere oír que entiendes la liveness como último recurso para estados irrecuperables, que la readiness es el sitio adecuado para comprobar dependencias, y que los tiempos y umbrales de las probes tienen que reflejar el arranque real.

Cómo estructurar tu respuesta

  • Enuncia la diferencia mecánica: enrutado de tráfico frente a reinicio del contenedor.
  • Nombra el antipatrón de comprobar dependencias y su radio de impacto.
  • Explica qué debería comprobar la liveness de verdad.
  • Añade las startup probes y umbrales sensatos para apps de arranque lento.

Ejemplo de respuesta

Ejemplo hablado, en primera persona

La readiness decide si el pod está en los endpoints del servicio, la liveness decide si el kubelet mata y reinicia el contenedor. El fallo que he visto de verdad es un equipo que hizo que el endpoint de liveness comprobara la base de datos. La base de datos se puso lenta, todos los pods fallaron la liveness más o menos a la vez, el deployment entero entró en bucle de reinicios, y en vez de lecturas degradadas nos quedamos sin nada, más una avalancha de conexiones frías al volver. La liveness debería ser casi aburrida: ¿puede el proceso servir un handler trivial, no está atascado el bucle de eventos? Todo lo relativo a dependencias pertenece a la readiness, porque sacar un pod de la rotación es reversible y barato. La otra cosa que siempre reviso son los tiempos. Si la app tarda 45 segundos en calentar cachés, o usas una startup probe o ajustas initialDelaySeconds y failureThreshold para que encajen, porque si no has construido una máquina que nunca puede terminar de arrancar.

¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.

Mira cómo funciona

Preguntas de seguimiento que puedes esperar

  • ¿Qué pasa con las peticiones en vuelo cuando una readiness probe empieza a fallar?
  • ¿Cómo configurarías las probes para una app con 90 segundos de calentamiento?
  • ¿Cuándo es correcto que la liveness falle a propósito?

Más preguntas para Site Reliability Engineer

Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.

Predecir mis preguntas

Ensaya las preguntas difíciles antes de que te las hagan

Practica con un copiloto en vivo y entra preparado. Un Session Pass de $29 te lleva a través de la entrevista sin suscripción y sin ataduras.

Consigue GhostPilot