Capítulo 4. Sonda sanitaria
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
El patrón Health Probe indica cómo una aplicación puede comunicar su estado de salud a Kubernetes. Para ser totalmente automatizable, una aplicación nativa de la nube debe ser altamente observable, permitiendo inferir su estado para que Kubernetes pueda detectar si la aplicación está levantada y si está lista para servir peticiones. Estas observaciones influyen en la gestión del ciclo de vida de los Pods y en la forma en que se enruta el tráfico hacia la aplicación.
Problema
Kubernetes comprueba regularmente el estado del proceso del contenedor y lo reinicia si detecta problemas. Sin embargo, por la práctica, sabemos que comprobar el estado del proceso no es suficiente para determinar la salud de una aplicación. En muchos casos, una aplicación se cuelga, pero su proceso sigue en marcha. Por ejemplo, una aplicación Java puede lanzar un OutOfMemoryError y seguir teniendo el proceso JVM en ejecución. Otra posibilidad es que una aplicación se bloquee porque se encuentre con un bucle infinito, un punto muerto o algún thrashing (caché, montón, proceso). Para detectar este tipo de situaciones, Kubernetes necesita una forma fiable de comprobar la salud de las aplicaciones, es decir, no para entender cómo funciona internamente una aplicación, sino para comprobar si la aplicación funciona como se espera y es capaz de servir a los consumidores. ...