Reimplement PR #4339
parent
6ec54a096e
commit
72508c26fe
|
@ -183,9 +183,7 @@ At some point, the pods terminate, and the cluster look like this:
|
||||||
|
|
||||||
At this point, if an impatient cluster administrator tries to drain `node-2` or
|
At this point, if an impatient cluster administrator tries to drain `node-2` or
|
||||||
`node-3`, the drain command will block, because there are only 2 available
|
`node-3`, the drain command will block, because there are only 2 available
|
||||||
pods for the deployment, and its PDB requires at least 2. After some time
|
pods for the deployment, and its PDB requires at least 2. After some time passes, `pod-d` becomes available.
|
||||||
|
|
||||||
asses, `pod-d` becomes available.
|
|
||||||
|
|
||||||
The cluster state now looks like this:
|
The cluster state now looks like this:
|
||||||
|
|
||||||
|
|
|
@ -83,7 +83,7 @@ For example, if you have a StatefulSet with three replicas and have
|
||||||
set a `PodDisruptionBudget` for that set specifying `minAvailable:
|
set a `PodDisruptionBudget` for that set specifying `minAvailable:
|
||||||
2`. `kubectl drain` will only evict a pod from the StatefulSet if all
|
2`. `kubectl drain` will only evict a pod from the StatefulSet if all
|
||||||
three pods are ready, and if you issue multiple drain commands in
|
three pods are ready, and if you issue multiple drain commands in
|
||||||
parallel, Kubernetes will respect the PodDisruptionBudget an ensure
|
parallel, Kubernetes will respect the PodDisruptionBudget and ensure
|
||||||
that only one pod is unavailable at any given time. Any drains that
|
that only one pod is unavailable at any given time. Any drains that
|
||||||
would cause the number of ready replicas to fall below the specified
|
would cause the number of ready replicas to fall below the specified
|
||||||
budget are blocked.
|
budget are blocked.
|
||||||
|
@ -91,7 +91,7 @@ budget are blocked.
|
||||||
## The Eviction API
|
## The Eviction API
|
||||||
|
|
||||||
If you prefer not to use [kubectl drain](/docs/user-guide/kubectl/{{page.version}}/#drain) (such as
|
If you prefer not to use [kubectl drain](/docs/user-guide/kubectl/{{page.version}}/#drain) (such as
|
||||||
to avoid calling to an external command, or to get finer control over over the pod
|
to avoid calling to an external command, or to get finer control over the pod
|
||||||
eviction process), you can also programmatically cause evictions using the eviction API.
|
eviction process), you can also programmatically cause evictions using the eviction API.
|
||||||
|
|
||||||
You should first be familiar with using [Kubernetes language clients](/docs/tasks/administer-cluster/access-cluster-api/#programmatic-access-to-the-api).
|
You should first be familiar with using [Kubernetes language clients](/docs/tasks/administer-cluster/access-cluster-api/#programmatic-access-to-the-api).
|
||||||
|
|
Loading…
Reference in New Issue