Alex Tsmokalyuk:
why does controlplane keep NoSchedule taint even when I uncordon it?
Alistair Mackay:
Hi @Alex Tsmokalyuk
cordon/uncordon does not affect the taints on a node. To remove taints you must use kubectl taint node
https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/#concepts
Alistair Mackay:
Controlplane nodes are tainted because you generally don’t want to run normal workloads on them. Only system pods should really run there.
Alex Tsmokalyuk:
Yeah I know but the lightning lab required the pod to be running on controlplane
Alex Tsmokalyuk:
thank you man
Trung Tran:
Either remove taints or add tolerations to your pods
Alex Tsmokalyuk:
Ligtning lab, task 1: cluster upgrade
Alex Tsmokalyuk:
before draining worker node, I have to remove taint from controlplane so that pods are recreated on controlplane
Alistair Mackay:
Only if it says to do so. If it does not, the pods will wait to be scheduled until you complete the node upgrade.
Alex Tsmokalyuk:
only if the task says to guarantee service continuity? Ok, in this case it does not. So why do we drain the worker node at all?
Alistair Mackay:
Just so that you understand how to do it. In a real life scenario you would have more than one worker so your pods would migrate