Since the introduction of EndpointSlices, the Endpoints API in Kubernetes has become obsolete for new features.
As of Kubernetes 1.33, the Endpoints API is officially deprecated, and users are encouraged to switch to EndpointSlices.
The plan is to change Kubernetes Conformance criteria to eliminate the need for running the Endpoints controller in modern clusters.
Users with workloads or scripts still using the Endpoints API should start migrating to EndpointSlices.
EndpointSlice API allows Services to have multiple EndpointSlices associated with them, supporting features like dual-stack networking.
EndpointSlices are used to represent endpoints of a single IP family, handle changes in port configurations, and manage a large number of endpoints efficiently.
When fetching EndpointSlices, users should use labels to associate them with the corresponding Service rather than by name.
Migrating to EndpointSlices involves updating code to fetch and process EndpointSlices instead of Endpoints.
For generating EndpointSlices, a new YAML format is required, including explicit address types and conditions for each endpoint.
EndpointSlices offer new features like topology hints and terminating endpoints, enhancing functionality beyond the Endpoints API.