Node Conditions

Обзор

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


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

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

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

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

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

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

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

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

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


Где смотреть

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