Example Analysis of K8S delete node Operation and maintenance
K8S delete node operation and maintenance example analysis, many novices are not very clear about this, in order to help you solve this problem, the following editor will explain for you in detail, people with this need can come to learn, I hope you can gain something.
Kubelet v1.16 source code
Analysis of delete node process
The current version of K8s node is controlled by NodeLifecycleController in controller-manager
In this version, TaintBasedEvictions feature is not enabled by default to deal with NoExecute stains and tolerance of not ready node. It can be confirmed by the following command. Grep-r "Controller is using taint based evictions." Kube-controller-manager.INFO
On the other hand, NodeLifecycleController has no corresponding handler to deal with the Delete event of node. Instead, the map structure of ZonePodEvictor is used to record which timeout nodes need to be actively deleted.
-- node-monitor-grace-period duration Default: 40s// workers that evicts pods from unresponsive nodes.zonePodEvictor map [string] * scheduler.RateLimitedTimedQueuecontroller will start a goroutine every NodeEvictionPeriod interval 100ms, and the doEvictionPass operation deletes the pod on the node node stored in each ZonePodEvictor queue. DoEvictionPass ()-> nodeutil.DeletePods ()-> kubeClient.CoreV1 () .Pods (pod.Namespace) .Delete (pod.Name, nil)
Node controller monitors node status through monitorNodeStatus goroutine.
By comparing the node data of the local informer with the etcd, the node nodes are divided into several categories (added,deleted, newZoneRepresentatives). It is observed that there is an added,deleted list in the node, but when the zone status is empty, add the newZoneRepresentatives list, and after confirmation, the node will be added to the ZonePodEvictor queue.
Kubectl delete node is a dangerous operation that triggers evict eviction for all pod on the node after execution. Please be careful.
Is it helpful for you to read the above content? If you want to know more about the relevant knowledge or read more related articles, please follow the industry information channel, thank you for your support.