emissary-ingress / emissary

open source Kubernetes-native API gateway for microservices built on the Envoy Proxy
https://www.getambassador.io
Apache License 2.0
4.32k stars 685 forks source link

Emissary Ingress Readiness/Liveness Probe #5588

Closed sekar-saravanan closed 4 months ago

sekar-saravanan commented 4 months ago

Hi, I am working on emissary-ingress for quite sometime and configured the setup in kubernetes with below probs.

livenessProbe:
    httpGet:
        path: /ambassador/v0/check_alive
        port: 8877
        scheme: HTTP
readinessProbe:
    httpGet:
        path: /ambassador/v0/check_ready
        port: 8877
        scheme: HTTP

and I made some modification envoy.json to use overload_manager (envoy.overload_actions.stop_accepting_requests) future. when overload_actions triggered, its started to block some percent of requests. But unexpectedly, its blocking the requests coming from the probs too. https://github.com/envoyproxy/envoy/issues/23843

Is there any other way, we can perform healthcheck on emissary-ingress instead (_/ambassador/v0/checkready, _/ambassador/v0/checkalive) ?

There is something /ready endpoint which is exposed by admin port (8001), mentioned in the below document. Can we use this to perform readiness check ? https://www.getambassador.io/docs/emissary/latest/release-notes