drain помечает узел SchedulingDisabled и эвиктит Pod'ы (с учётом PDB), чтобы безопасно обслуживать ноду; DaemonSet'ы обычно игнорируются флагами, mirror/static pods остаются.
Разбор
- Без drain delete node — грубый и опасный путь.
- PDB может надолго заблокировать drain.
- После работ —
kubectl uncordon.
- Критичные singleton'ы без реплик дадут downtime.
Итог
drain — штатная процедура вывода ноды из-под нагрузки.