Update API Priority and Fairness doc for graduatino to beta (#24975)
This commit is contained in:
parent
dc8c7db4e8
commit
bf23ba2aa9
|
@ -6,7 +6,7 @@ min-kubernetes-server-version: v1.18
|
||||||
|
|
||||||
<!-- overview -->
|
<!-- overview -->
|
||||||
|
|
||||||
{{< feature-state state="alpha" for_k8s_version="v1.18" >}}
|
{{< feature-state state="beta" for_k8s_version="v1.20" >}}
|
||||||
|
|
||||||
Controlling the behavior of the Kubernetes API server in an overload situation
|
Controlling the behavior of the Kubernetes API server in an overload situation
|
||||||
is a key task for cluster administrators. The {{< glossary_tooltip
|
is a key task for cluster administrators. The {{< glossary_tooltip
|
||||||
|
@ -37,25 +37,30 @@ Fairness feature enabled.
|
||||||
|
|
||||||
<!-- body -->
|
<!-- body -->
|
||||||
|
|
||||||
## Enabling API Priority and Fairness
|
## Enabling/Disabling API Priority and Fairness
|
||||||
|
|
||||||
The API Priority and Fairness feature is controlled by a feature gate
|
The API Priority and Fairness feature is controlled by a feature gate
|
||||||
and is not enabled by default. See
|
and is enabled by default. See
|
||||||
[Feature Gates](/docs/reference/command-line-tools-reference/feature-gates/)
|
[Feature Gates](/docs/reference/command-line-tools-reference/feature-gates/)
|
||||||
for a general explanation of feature gates and how to enable and disable them. The
|
for a general explanation of feature gates and how to enable and
|
||||||
name of the feature gate for APF is "APIPriorityAndFairness". This
|
disable them. The name of the feature gate for APF is
|
||||||
feature also involves an {{< glossary_tooltip term_id="api-group"
|
"APIPriorityAndFairness". This feature also involves an {{<
|
||||||
text="API Group" >}} that must be enabled. You can do these
|
glossary_tooltip term_id="api-group" text="API Group" >}} with: (a) a
|
||||||
things by adding the following command-line flags to your
|
`v1alpha1` version, disabled by default, and (b) a `v1beta1`
|
||||||
`kube-apiserver` invocation:
|
version, enabled by default. You can disable the feature
|
||||||
|
gate and API group v1beta1 version by adding the following
|
||||||
|
command-line flags to your `kube-apiserver` invocation:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
kube-apiserver \
|
kube-apiserver \
|
||||||
--feature-gates=APIPriorityAndFairness=true \
|
--feature-gates=APIPriorityAndFairness=false \
|
||||||
--runtime-config=flowcontrol.apiserver.k8s.io/v1alpha1=true \
|
--runtime-config=flowcontrol.apiserver.k8s.io/v1beta1=false \
|
||||||
# …and other flags as usual
|
# …and other flags as usual
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Alternatively, you can enable the v1alpha1 version of the API group
|
||||||
|
with `--runtime-config=flowcontrol.apiserver.k8s.io/v1beta1=true`.
|
||||||
|
|
||||||
The command-line flag `--enable-priority-and-fairness=false` will disable the
|
The command-line flag `--enable-priority-and-fairness=false` will disable the
|
||||||
API Priority and Fairness feature, even if other flags have enabled it.
|
API Priority and Fairness feature, even if other flags have enabled it.
|
||||||
|
|
||||||
|
@ -189,12 +194,14 @@ that originate from outside your cluster.
|
||||||
|
|
||||||
## Resources
|
## Resources
|
||||||
The flow control API involves two kinds of resources.
|
The flow control API involves two kinds of resources.
|
||||||
[PriorityLevelConfigurations](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#prioritylevelconfiguration-v1alpha1-flowcontrol-apiserver-k8s-io)
|
[PriorityLevelConfigurations](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#prioritylevelconfiguration-v1beta1-flowcontrol-apiserver-k8s-io)
|
||||||
define the available isolation classes, the share of the available concurrency
|
define the available isolation classes, the share of the available concurrency
|
||||||
budget that each can handle, and allow for fine-tuning queuing behavior.
|
budget that each can handle, and allow for fine-tuning queuing behavior.
|
||||||
[FlowSchemas](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#flowschema-v1alpha1-flowcontrol-apiserver-k8s-io)
|
[FlowSchemas](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#flowschema-v1beta1-flowcontrol-apiserver-k8s-io)
|
||||||
are used to classify individual inbound requests, matching each to a single
|
are used to classify individual inbound requests, matching each to a
|
||||||
PriorityLevelConfiguration.
|
single PriorityLevelConfiguration. There is also a `v1alpha1` version
|
||||||
|
of the same API group, and it has the same Kinds with the same syntax and
|
||||||
|
semantics.
|
||||||
|
|
||||||
### PriorityLevelConfiguration
|
### PriorityLevelConfiguration
|
||||||
A PriorityLevelConfiguration represents a single isolation class. Each
|
A PriorityLevelConfiguration represents a single isolation class. Each
|
||||||
|
@ -522,4 +529,3 @@ For background information on design details for API priority and fairness, see
|
||||||
the [enhancement proposal](https://github.com/kubernetes/enhancements/blob/master/keps/sig-api-machinery/20190228-priority-and-fairness.md).
|
the [enhancement proposal](https://github.com/kubernetes/enhancements/blob/master/keps/sig-api-machinery/20190228-priority-and-fairness.md).
|
||||||
You can make suggestions and feature requests via [SIG API
|
You can make suggestions and feature requests via [SIG API
|
||||||
Machinery](https://github.com/kubernetes/community/tree/master/sig-api-machinery).
|
Machinery](https://github.com/kubernetes/community/tree/master/sig-api-machinery).
|
||||||
|
|
||||||
|
|
|
@ -51,7 +51,8 @@ different Kubernetes components.
|
||||||
| `AnyVolumeDataSource` | `false` | Alpha | 1.18 | |
|
| `AnyVolumeDataSource` | `false` | Alpha | 1.18 | |
|
||||||
| `APIListChunking` | `false` | Alpha | 1.8 | 1.8 |
|
| `APIListChunking` | `false` | Alpha | 1.8 | 1.8 |
|
||||||
| `APIListChunking` | `true` | Beta | 1.9 | |
|
| `APIListChunking` | `true` | Beta | 1.9 | |
|
||||||
| `APIPriorityAndFairness` | `false` | Alpha | 1.17 | |
|
| `APIPriorityAndFairness` | `false` | Alpha | 1.17 | 1.19 |
|
||||||
|
| `APIPriorityAndFairness` | `true` | Beta | 1.20 | |
|
||||||
| `APIResponseCompression` | `false` | Alpha | 1.7 | |
|
| `APIResponseCompression` | `false` | Alpha | 1.7 | |
|
||||||
| `AppArmor` | `true` | Beta | 1.4 | |
|
| `AppArmor` | `true` | Beta | 1.4 | |
|
||||||
| `BalanceAttachedNodeVolumes` | `false` | Alpha | 1.11 | |
|
| `BalanceAttachedNodeVolumes` | `false` | Alpha | 1.11 | |
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
apiVersion: flowcontrol.apiserver.k8s.io/v1alpha1
|
apiVersion: flowcontrol.apiserver.k8s.io/v1beta1
|
||||||
kind: FlowSchema
|
kind: FlowSchema
|
||||||
metadata:
|
metadata:
|
||||||
name: health-for-strangers
|
name: health-for-strangers
|
||||||
|
|
Loading…
Reference in New Issue