Networking
Endpoints
58 / 82

A failed readiness probe removes a Pod from the live endpoint list within moments.

Behind each Service is an EndpointSlice listing ready Pod IPs. A headless Service skips the virtual IP and returns the Pod IPs directly.

Servicecheckout-aReadycheckout-bReadycheckout-creadiness failingEndpointSlice10.244.1.5 ready10.244.1.6 readyc-pod removed

The readiness link

Probe fails, the EndpointSlice controller drops the Pod, kube-proxy updates its rules. Traffic stops reaching it, but the container keeps running.

ep iconHeadless ServiceclusterIP: None

DNS returns the individual Pod IPs and no load-balancing layer sits in between. With a StatefulSet each Pod gets its own name: pg-0.postgres.shop.svc.cluster.local.

no endpoints? start here
$ kubectl get endpointslices -l kubernetes.io/service-name=checkout
$ kubectl describe svc checkout | grep -A3 Endpoints
# empty = selector matches no Ready Pods