La implementación raíz de Tomcat no funciona en Kubernetes (AKS)

La implementación raíz de Tomcat no funciona en Kubernetes (AKS)

Tengo problemas para implementar una aplicación Java .war en Tomcat en Kubernetes.

Tengo una imagen de Docker basada en tomcat:8.5.40-jre8 que contiene dos aplicaciones web Tomcat .war, una en ROOT y otra con su propia ruta. Cuando extraigo y ejecuto esta imagen de Docker localmente en mi Mac, todo funciona bien. Sin embargo, cuando implemento la imagen en nuestro servicio Microsoft Azure Kubernetes, la aplicación web ROOT solo responde con un 404. Si conecto una terminal al contenedor en ejecución, puedo ver que Tomcat ha descomprimido el archivo .war.

El problema comenzó cuando actualicé la versión de Kubernetes mediante Azure Portal, pero cuando creé un segundo servicio Azure Kubernetes con una versión inferior, el problema aún persiste.

No parece ser un problema de red. Cuando conecto un terminal a la imagen en ejecución en Kubernetes y curl localhost obtengo un 404, pero cuando hago lo mismo en mi máquina local obtengo la página que espero.

La misma imagen de Docker funcionó antes y el clúster ejecuta otro servicio casi idéntico en este momento sin ningún problema.

¿Cómo es posible que la imagen de Docker funcione en mi máquina, pero no cuando se implementa en AKS?

¡Cualquier ayuda sería muy apreciada! Atentamente,

V

Respuesta1

Resulta que la aplicación tenía una excepción ClassNotFoundException durante el inicio. Esto hizo que la aplicación no pudiera iniciarse después de la actualización de Kubernetes.

Después de corregir el error, que se encuentra en el registro localhost de Tomcat, la aplicación se ejecuta nuevamente.

información relacionada