kubernetes/uncordon-node

Uncordon Node

Re-enable scheduling on a previously cordoned node.

nodes
maintenance

Command

kubectl uncordon <node-name>

Explanation

The 'kubectl uncordon' command reverses a cordon action, marking a node as schedulable once more. It’s commonly used after maintenance or when scaling back into service. Pods can then be placed on this node by the Kubernetes scheduler as usual.

Common Use Cases

  • Bring a maintained node back into scheduling rotation
  • Resume workload distribution across previously cordoned nodes
  • Re-enable nodes after temporary isolation

Best Practices

  • Always verify node readiness with 'kubectl get nodes' before uncordoning
  • Check scheduler logs or cluster autoscaler after uncordoning for balanced scheduling

Common Mistakes to Avoid

  • Forgetting to uncordon nodes after maintenance, leading to underutilization
  • Misunderstanding that uncordon doesn’t automatically reschedule evicted pods

Troubleshooting

Problem: Node remains unschedulable even after uncordoning

Solution: Verify there are no taints preventing scheduling and ensure kubelet is healthy.

Examples

Mark the node as schedulable again

kubectl uncordon node-1