A Service selector is app=billing, but the Deployment Pods are labeled app=invoice. The Pods are Ready. What do you expect for Endpoints?
Select an answer to reveal the explanation.
Short Explanation
The Service is calling out “billing” and the Pods answer to “invoice”—so nobody shows up on the roster. Ready doesn’t help if the labels don’t match. Align selector and Pod labels and Endpoints will populate.
Full Explanation
A Service selects backends by label selector. If no Pods carry matching labels, the Endpoints (or EndpointSlice) set remains empty even when Pods are Ready. Kubernetes does not rewrite selectors to Deployment names, does not attach all namespace Pods, and does not key Endpoints off image names.