Enable Graceful Node Shutdown for Kubernetes >= 1.21.0 (#7746)
* Enable Graceful Node Shutdown for Kubernetes >= 1.21.0 * Add sample graceful shutdown parameterspull/7754/head
parent
a2cf6816ce
commit
a3e34f589a
|
@ -149,6 +149,10 @@ kube_proxy_nodeport_addresses: >-
|
|||
## Encrypting Secret Data at Rest (experimental)
|
||||
kube_encrypt_secret_data: false
|
||||
|
||||
# Graceful Node Shutdown (Kubernetes >= 1.21.0), see https://kubernetes.io/blog/2021/04/21/graceful-node-shutdown-beta/
|
||||
# kubelet_shutdown_grace_period: 60s
|
||||
# kubelet_shutdown_grace_period_critical_pods: 20s
|
||||
|
||||
# DNS configuration.
|
||||
# Kubernetes cluster name, also will be used as DNS domain
|
||||
cluster_name: cluster.local
|
||||
|
|
|
@ -96,3 +96,7 @@ tlsCipherSuites:
|
|||
{% if kubelet_event_record_qps %}
|
||||
eventRecordQPS: {{ kubelet_event_record_qps }}
|
||||
{% endif %}
|
||||
{% if kube_version is version('v1.21.0', '>=') %}
|
||||
shutdownGracePeriod: {{ kubelet_shutdown_grace_period }}
|
||||
shutdownGracePeriodCriticalPods: {{ kubelet_shutdown_grace_period_critical_pods }}
|
||||
{% endif %}
|
||||
|
|
|
@ -107,6 +107,13 @@
|
|||
- not ignore_assert_errors
|
||||
- inventory_hostname in groups['kube_node']
|
||||
|
||||
- name: Stop when ShutdownGracePeriod less than ShutdownGracePeriodCriticalPods
|
||||
assert:
|
||||
that: kubelet_shutdown_grace_period > kubelet_shutdown_grace_period_critical_pods
|
||||
msg: "ShutdownGracePeriod ({{ kubelet_shutdown_grace_period }}) needs to be greater than ShutdownGracePeriodCriticalPods ({{ kubelet_shutdown_grace_period_critical_pods }}) in order to give normal pods time to be evacuated, please see https://kubernetes.io/blog/2021/04/21/graceful-node-shutdown-beta/ for details"
|
||||
when:
|
||||
- kube_version is version('v1.21.0', '>=')
|
||||
|
||||
# This assertion will fail on the safe side: One can indeed schedule more pods
|
||||
# on a node than the CIDR-range has space for when additional pods use the host
|
||||
# network namespace. It is impossible to ascertain the number of such pods at
|
||||
|
|
|
@ -230,6 +230,13 @@ kube_api_aggregator_routing: false
|
|||
# Profiling
|
||||
kube_profiling: false
|
||||
|
||||
# Graceful Node Shutdown
|
||||
# This requires kubernetes >= 1.21.0
|
||||
kubelet_shutdown_grace_period: 60s
|
||||
# kubelet_shutdown_grace_period_critical_pods should be less than kubelet_shutdown_grace_period
|
||||
# to give normal pods time to be gracefully evacuated
|
||||
kubelet_shutdown_grace_period_critical_pods: 20s
|
||||
|
||||
# Container for runtime
|
||||
container_manager: docker
|
||||
|
||||
|
|
Loading…
Reference in New Issue