TGViewer
CORTEL CORTEL @cortel_cloud · 4.07K subscribers
Post #2675 1.02K
✅ Node Readiness Controller: расширение логики готовности узлов в Kubernetes

Стандартные условия (Conditions) узла Kubernetes (Ready, DiskPressure, PIDPressure и др.) определяют возможность запуска подов. Однако в ряде сценариев этой информации недостаточно для корректной оценки состояния узла.

✅ Node Readiness Controller — компонент, появившейся в 2026 году, который расширяет механизм оценки готовности узлов. Он позволяет добавлять пользовательские условия готовности, влияющие на планирование подов, без модификации kubelet.

🔫 Область применения

— Ограниченность стандартных метрик: Kubelet маркирует узел как Ready при успешном ответе на запросы. При отказе CNI-плагина или container runtime узел может оставаться Ready, несмотря на неработоспособность подов.
— Выявление скрытых сбоев: Некоторые отказы оборудования или ОС не изменяют статус kubelet, но делают узел непригодным для выполнения рабочих нагрузок.
— Изоляция неисправных узлов: Контроллер централизованно переводит проблемные узлы в состояние NotReady или накладывает taints, предотвращая планирование подов.

🔫 Основные преимущества

✅ Гибкие условия готовности — Определение собственного набора проверок, которые узел должен пройти, чтобы считаться готовым к запуску подов. Например, верификация драйверов GPU, доступность CNI или корректная работа агентов observability.

✅ Автоматическое управление taints — Контроллер автоматически накладывает или снимает taints на узлы в зависимости от состояния заданных условий. Это предотвращает попадание подов на узлы, не прошедшие проверку, и освобождает их сразу после восстановления.

✅ Декларативная инициализация узлов — Многоэтапная подготовка узлов описывается в виде правил и выполняется предсказуемо. Ход инициализации отслеживается через статус ресурсов, что упрощает отладку и аудит.

🔫Основные концепции и особенности

➡️ Два режима работы
Непрерывный контроль — проверки выполняются постоянно на протяжении всего жизненного цикла узла. При отказе критического компонента (например, драйвера устройства) узел немедленно изолируется.
Одноразовая инициализация — проверки запускаются только при вводе узла в эксплуатацию. После успешного прохождения правила мониторинг прекращается.

➡️Интеграция через Node Conditions
Контроллер не выполняет проверки самостоятельно, а реагирует на условия узла (Node Conditions). Это позволяет использовать:
• Node Problem Detector (NPD) — кастомные скрипты диагностики;
• Readiness Condition Reporter — легковесный агент для проверки локальных HTTP-эндпоинтов и обновления условий.

➡️ Безопасное внедрение — Режим dry run имитирует применение правил без фактического воздействия на кластер. Контроллер логирует планируемые действия и отображает список затронутых узлов, позволяя проверить корректность конфигурации до включения защиты.

Node Readiness Controller дополняет стандартную логику kubelet, позволяя учитывать реальное состояние инфраструктурных компонентов и автоматически управлять доступностью узлов./

👉 Подробнее в официальном блоге k8s и в git репозитории Node Readiness Controller

#заметкиИнженера
  • 👍 8
  • ❤ 3
  • 🔥 2
More from @cortel_cloud
  1. Oct 1, 2026🖥 sed — потоковый редактор текста в Linux 🤓 Появился в Bell Labs в 1970-х и до сих пор и…
  2. Sep 29, 2026🖥 РАЗНИЦА Block, File и Object Storage 🧑‍🎓Повторение — мать учения. Для разных задач по…
  3. Sep 25, 2026😎 Когнитивная РАЗгрузка За неделю с горящими дедлайнами, часовыми ВКС и постоянным перекл…
  4. Sep 23, 2026💻 kubectl diff: обработка изменений в CI/CD kubectl diff сравнивает текущую конфигурацию…
  5. Sep 18, 2026🛡 ДА! У НАС ЦЕЛАЯ ЧЕРЕДА ПОЛЕЗНЫХ ЭФИРОВ ПРО ИБ! 🎙 Уже 24 сентября Вероника Нечаева, выс…
  6. Sep 16, 2026👩‍💻 Работа с ПДн это непрерывный процесс. Компания меняется — появляются новые сервисы,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →