Updating EndpointSlice documentation for Kubernetes 1.19
This commit is contained in:
@@ -36,17 +36,29 @@ components still rely on Endpoints. For now, enabling EndpointSlices should be
|
||||
seen as an addition to Endpoints in a cluster, not a replacement for them.
|
||||
{{< /note >}}
|
||||
|
||||
EndpointSlices are a beta feature. Both the API and the EndpointSlice
|
||||
{{< glossary_tooltip term_id="controller" >}} are enabled by default.
|
||||
{{< glossary_tooltip text="kube-proxy" term_id="kube-proxy" >}}
|
||||
uses Endpoints by default, not EndpointSlices.
|
||||
|
||||
For better scalability and performance, you can enable the
|
||||
`EndpointSliceProxying`
|
||||
[feature gate](/docs/reference/command-line-tools-reference/feature-gates/)
|
||||
on kube-proxy. That change
|
||||
switches the data source to be EndpointSlices, which reduces the amount of
|
||||
Kubernetes API traffic to and from kube-proxy.
|
||||
EndpointSlice functionality in Kubernetes is made up of several different
|
||||
components, most are enabled by default:
|
||||
* _The EndpointSlice API_: EndpointSlices are part of the
|
||||
`discovery.k8s.io/v1beta1` API. This is beta and enabled by default since
|
||||
Kubernetes 1.17. All components listed below are dependent on this API being
|
||||
enabled.
|
||||
* _The EndpointSlice Controller_: This {{< glossary_tooltip text="controller"
|
||||
term_id="controller" >}} maintains EndpointSlices for Services and the Pods
|
||||
they reference. This is controlled by the `EndpointSlice` feature gate. It has
|
||||
been enabled by default since Kubernetes 1.18.
|
||||
* _The EndpointSliceMirroring Controller_: This {{< glossary_tooltip
|
||||
text="controller" term_id="controller" >}} mirrors custom Endpoints to
|
||||
EndpointSlices. This is controlled by the `EndpointSlice` feature gate. It has
|
||||
been enabled by default since Kubernetes 1.19.
|
||||
* _Kube-Proxy_: When {{< glossary_tooltip text="kube-proxy" term_id="kube-proxy">}}
|
||||
is configured to use EndpointSlices, it can support higher numbers of Service
|
||||
endpoints. This is controlled by the `EndpointSliceProxying` feature gate on
|
||||
Linux and `WindowsEndpointSliceProxying` on Windows. It has been enabled by
|
||||
default on Linux since Kubernetes 1.19. It is not enabled by default for
|
||||
Windows nodes. To configure kube-proxy to use EndpointSlices on Windows, you
|
||||
can enable the `WindowsEndpointSliceProxying` [feature
|
||||
gate](/docs/reference/command-line-tools-reference/feature-gates/) on
|
||||
kube-proxy.
|
||||
|
||||
## Using EndpointSlices
|
||||
|
||||
|
||||
Reference in New Issue
Block a user