Node Conditions

Обзор

Node Conditions — состояния узла, по которым можно определить, здоров ли узел и готов ли он принимать поды. Условия отображаются на странице узла и в kubectl describe node.


Состояния здорового узла

Состояние Описание Здоровый статус
NetworkUnavailable Cilium/CNI не запущен на узле false
MemoryPressure Kubelet сообщает о нехватке памяти false
DiskPressure Kubelet сообщает о нехватке дискового пространства false
PIDPressure Слишком много процессов (PID) на узле false
Ready Узел готов принимать поды true

Дополнительные условия (Node Problem Detector)

При установленном Node Problem Detector (NPD) могут отображаться дополнительные условия:

Состояние Описание Здоровый статус
KernelDeadlock Ядро Linux в состоянии блокировки false
CNIProblem CNI-плагин не работает корректно false
DiskPressureContainer Недостаточно места для контейнеров false
KubeletUnhealthy Проблемы с kubelet false
CorruptDockerOverlay2 Повреждение драйвера хранения false
ReadOnlyContainer Файловая система контейнера только для чтения false
KubeProxyUnhealthy Проблемы с kube-proxy false

Автоматические Taints при условиях

При определённых условиях Kubernetes автоматически добавляет Taints на узел:

Taint Описание Эффект
node.kubernetes.io/not-ready Ready=False NoExecute
node.kubernetes.io/unreachable Ready=Unknown NoExecute
node.kubernetes.io/memory-pressure Нехватка памяти NoSchedule
node.kubernetes.io/disk-pressure Нехватка диска NoSchedule
node.kubernetes.io/pid-pressure Лимит PID NoSchedule
node.kubernetes.io/network-unavailable Сеть недоступна NoSchedule
node.kubernetes.io/unschedulable Узел не подлежит планированию (cordon) NoSchedule
node.cloudprovider.kubernetes.io/uninitialized Узел с облачным провайдером до инициализации cloud-controller-manager NoSchedule

Подробнее о встроенных taints — в разделе Node Pools, Taints и Tolerations.


Где смотреть

  • Интерфейс: Администрирование → Управление узлами → клик по узлу → вкладка «Узел» → блок «Состояние».
  • CLI: kubectl describe node <name> — секция Conditions.