Tidy docs about EndpointSlice & related features
Co-authored-by: Rey Lejano <52760880+reylejano@users.noreply.github.com>
This commit is contained in:
@@ -5,55 +5,51 @@ reviewers:
|
||||
- imroc
|
||||
title: Enabling Service Topology
|
||||
content_type: task
|
||||
min-kubernetes-server-version: 1.17
|
||||
---
|
||||
|
||||
<!-- overview -->
|
||||
{{< feature-state for_k8s_version="v1.21" state="deprecated" >}}
|
||||
|
||||
This feature, specifically the alpha topologyKeys API, is deprecated in
|
||||
Kubernetes v1.21. [Topology Aware
|
||||
Hints](/docs/concepts/services-networking/topology-aware-hints) was introduced
|
||||
in Kubernetes v1.21 and provides similar functionality.
|
||||
This feature, specifically the alpha `topologyKeys` field, is deprecated since
|
||||
Kubernetes v1.21.
|
||||
[Topology Aware Hints](/docs/concepts/services-networking/topology-aware-hints/),
|
||||
introduced in Kubernetes v1.21, provide similar functionality.
|
||||
|
||||
_Service Topology_ enables a {{< glossary_tooltip term_id="service">}} to route traffic based upon the Node
|
||||
topology of the cluster. For example, a service can specify that traffic be
|
||||
preferentially routed to endpoints that are on the same Node as the client, or
|
||||
in the same availability zone.
|
||||
|
||||
## {{% heading "prerequisites" %}}
|
||||
|
||||
{{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}
|
||||
|
||||
|
||||
<!-- steps -->
|
||||
|
||||
## Introduction
|
||||
|
||||
_Service Topology_ enables a service to route traffic based upon the Node
|
||||
topology of the cluster. For example, a service can specify that traffic be
|
||||
preferentially routed to endpoints that are on the same Node as the client, or
|
||||
in the same availability zone.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
The following prerequisites are needed in order to enable topology aware service
|
||||
routing:
|
||||
|
||||
* Kubernetes 1.17 or later
|
||||
* {{< glossary_tooltip text="Kube-proxy" term_id="kube-proxy" >}} running in iptables mode or IPVS mode
|
||||
* Enable [Endpoint Slices](/docs/concepts/services-networking/endpoint-slices/)
|
||||
* Kubernetes v1.17 or later
|
||||
* Configure {{< glossary_tooltip text="kube-proxy" term_id="kube-proxy" >}} to run in iptables mode or IPVS mode
|
||||
|
||||
|
||||
<!-- steps -->
|
||||
|
||||
## Enable Service Topology
|
||||
|
||||
{{< feature-state for_k8s_version="v1.17" state="alpha" >}}
|
||||
{{< feature-state for_k8s_version="v1.21" state="deprecated" >}}
|
||||
|
||||
To enable service topology, enable the `ServiceTopology` and `EndpointSlice` feature gate for all Kubernetes components:
|
||||
To enable service topology, enable the `ServiceTopology`
|
||||
[feature gate](/docs/reference/command-line-tools-reference/feature-gates/) for all Kubernetes components:
|
||||
|
||||
```
|
||||
--feature-gates="ServiceTopology=true,EndpointSlice=true"
|
||||
--feature-gates="ServiceTopology=true`
|
||||
```
|
||||
|
||||
|
||||
## {{% heading "whatsnext" %}}
|
||||
|
||||
|
||||
* Read about the [Service Topology](/docs/concepts/services-networking/service-topology) concept
|
||||
* Read about [Endpoint Slices](/docs/concepts/services-networking/endpoint-slices)
|
||||
* Read about [Topology Aware Hints](/docs/concepts/services-networking/topology-aware-hints/), the replacement for the `topologyKeys` field.
|
||||
* Read about [EndpointSlices](/docs/concepts/services-networking/endpoint-slices/)
|
||||
* Read about the [Service Topology](/docs/concepts/services-networking/service-topology/) concept
|
||||
* Read [Connecting Applications with Services](/docs/concepts/services-networking/connect-applications-service/)
|
||||
|
||||
|
||||
|
||||
@@ -10,8 +10,9 @@ min-kubernetes-server-version: 1.21
|
||||
{{< feature-state for_k8s_version="v1.21" state="alpha" >}}
|
||||
|
||||
_Topology Aware Hints_ enable topology aware routing with topology hints
|
||||
included in EndpointSlices. This approach tries to keep traffic close to where
|
||||
it originated from. This can result in decreased costs and improved performance.
|
||||
included in {{< glossary_tooltip text="EndpointSlices" term_id="endpoint-slice" >}}.
|
||||
This approach tries to keep traffic close to where it originated from;
|
||||
you might do this to reduce costs, or to improve network performance.
|
||||
|
||||
## {{% heading "prerequisites" %}}
|
||||
|
||||
@@ -19,13 +20,13 @@ it originated from. This can result in decreased costs and improved performance.
|
||||
|
||||
The following prerequisite is needed in order to enable topology aware hints:
|
||||
|
||||
* {{< glossary_tooltip text="Kube-proxy" term_id="kube-proxy" >}} running in
|
||||
* Configure the {{< glossary_tooltip text="kube-proxy" term_id="kube-proxy" >}} to run in
|
||||
iptables mode or IPVS mode
|
||||
* Ensure that you have not disabled EndpointSlices
|
||||
|
||||
## Enable Topology Aware Hints
|
||||
|
||||
To enable service topology, enable the `TopologyAwareHints` [feature
|
||||
To enable service topology hints, enable the `TopologyAwareHints` [feature
|
||||
gate](docs/reference/command-line-tools-reference/feature-gates/) for the
|
||||
kube-apiserver, kube-controller-manager, and kube-proxy:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user