I recently upgrade my project spring boot version to 3.0.2 from 2.7.4, and now liveness and readiness probe is returning 404. It is happening to one app and not to other app even though I haven't changed anything. Here are some differences:
App that works with 3.0.2:
- Uses Netty
- Not exposing any endpoint
- in helm chart, it only has livenessProbe:
- don't have ingress.yml
App that doesn't work:
- Uses Tomcat
- Exposes endpoint
- in helm, it has livenessProbe: and readinessProbe
- has ingress.yml
I removed ingress related yml files and deployed and still failed.
I tried deploy app without readinessProbe, and it deploys but if I port-forward and access liveness endpoint, it gives me 404 as well.
Here is helm.yml:
livenessProbe:
httpGet:
path: /actuator/health/liveness
port: 8080
scheme: HTTP
initialDelaySeconds: 60
periodSeconds: 60
timeoutSeconds: 5
failureThreshold: 3
readinessProbe:
httpGet:
path: /actuator/health/readiness
port: 8080
scheme: HTTP
initialDelaySeconds: 30
periodSeconds: 30
timeoutSeconds: 10
failureThreshold: 3
...
...
- name: management.endpoint.health.probes.enabled
value: 'true'
- name: management.endpoint.health.show-details
value: 'always'
We have three engineers trying to figure this out, but no luck so far. If you need any other information, please let me know.