mk:
hello, i was doing the lab about k8s upgrade, but i noticed something and trying to clear my doubts.
so, i was upgrading the master node, so first i did the drain comand:
kubectl drain controlplane --ignore-daemonsets
so, as i’ve learned drain comands make the node unschedulable and evict all pods are controlled by various components such as replicaset, deployment etc
so i was expecting to see 0 pods on control node but it wasn’t:
root@controlplane:~# k get nodes
NAME STATUS ROLES AGE VERSION
controlplane Ready,SchedulingDisabled master 68m v1.19.0
node01 Ready <none> 67m v1.19.0
root@controlplane:~# k get pods -A -o wide | grep -i controlplane
kube-system etcd-controlplane 1/1 Running 0 68m 10.32.240.3 controlplane <none> <none>
kube-system kube-apiserver-controlplane 1/1 Running 0 68m 10.32.240.3 controlplane <none> <none>
kube-system kube-controller-manager-controlplane 1/1 Running 0 68m 10.32.240.3 controlplane <none> <none>
kube-system kube-flannel-ds-74wgz 1/1 Running 0 67m 10.32.240.3 controlplane <none> <none>
kube-system kube-proxy-xcw6b 1/1 Running 0 67m 10.32.240.3 controlplane <none> <none>
kube-system kube-scheduler-controlplane 1/1 Running 0 68m 10.32.240.3 controlplane <none> <none>
so i tried to check who they were controlled by:
root@controlplane:~# k describe pod etcd-controlplane -n kube-system | grep -i controlled
Controlled By: Node/controlplane
root@controlplane:~# k describe pod kube-apiserver-controlplane -n kube-system | grep -i controlled
Controlled By: Node/controlplane
but still having some doubts.
so i would like some clarification about it, so my questions are:
• why are they still running on controlplane, shouldn’t be already evicted ? (i tried also with the --force
to check if they will be evicted but nada)
• i can understand etcd is not part of the upgrade, so the rest shouldn’t be in evicted automatically ?
thanks a lot for your explanation!