Re:Kubernetes Journey – How to setup the HAProxy Cluster wit...
by xnxn on Thursday February 27, 2020 @12:08PM
(#22435189)
ingress-nginx doesn't do readiness/liveness checks itself; the kubelet does[1].
If any of the containers in a Pod aren't ready, the endpoints controller[2] removes the Endpoint object corresponding to that Pod. ingress-nginx watches these Endpoints objects[3] to determine which Pods it should send traffic to.
Edit: As to your use case, I think you should remove the readiness probe from that one container you don't care about.
[1]: https://kubernetes.io/docs/tasks/configure-pod-container/con...
[2]: https://kubernetes.io/docs/concepts/overview/components/#kub...
[3]: https://kubernetes.github.io/ingress-nginx/user-guide/miscel...
Re:Kubernetes Journey – How to setup the HAProxy Cluster wit...
by llarsson on Thursday February 27, 2020 @01:38PM
(#22436262)
Third paragraph in the documentation says that a Pod as a whole is only considered ready if all containers are ready:
https://kubernetes.io/docs/tasks/configure-pod-container/con...
I was looking into this because if I have a pod with 3 containers, if 1 container wasn't running, nginx-ingress stopped serving traffic. I actually want to continue serving traffic if a certain container is still running, not all 3 running necessarily
Do you know or have any documentation on how nginx-ingress actually does its readiness/liveness checks?