За последние месяцы Deckhouse Kubernetes Platform (DKP) прошла через серию масштабных обновлений, которые затронули все уровни платформы — от механизмов безопасности на уровне ядра ОС до пользовательских интерфейсов. Развивая DKP как универсальный инструмент для ИТ-ландшафтов любой сложности, мы значительно расширили функциональность каждой подсистемы. Эти изменения позволили нам, в частности, вывести на новый уровень прозрачность потребления вычислительных ресурсов, информационную безопасность и облегчить взаимодействие с платформой.
В этом обзоре рассказываем, какие возможности появились у пользователей Deckhouse и как они помогают обеспечивать надёжность и масштабируемость системы вне зависимости от типа окружения.
Прозрачность расходов и гибкость управления
Для многих компаний затраты на ИТ-инфраструктуру остаются непрозрачными. Поэтому в центре управления кластерами, Deckhouse Commander, мы реализовали инструменты биллинга и учёта затрат.
Теперь потребление ресурсов (CPU, память, хранилище) переводится в понятные финансовые показатели. Данные можно детализировать по конкретным проектам, командам или кластерам. Это делает расходы предсказуемыми: бизнес видит стоимость эксплуатации каждого сервиса и может планировать бюджет исходя из реального потребления.
Также мы расширили возможности команд для самостоятельной настройки инфраструктуры. Теперь через Commander можно управлять хранилищами образов Deckhouse, а в шаблонах кластеров — указывать пользовательские скрипты на Bash или Python. Это позволяет автоматизировать финальную настройку кластеров под любые требования.
Инфраструктурный слой и универсальная интеграция
DKP работает поверх любой инфраструктуры. При этом мы стремимся сделать интеграцию платформы универсальной, чтобы обеспечить компаниям архитектурную независимость от провайдера.
- Deckhouse Virtualization Platform (DVP). Добавлены улучшения для промышленной эксплуатации: сетевые политики для изоляции трафика на уровне проекта, диагностические сообщения CSI прямо в статусе PVC и автоматическая очистка неактуальных объектов VMBDA.
- VMware Cloud Director. Появились правила affinity/anti-affinity для управляемого размещения ВМ по гипервизорам.
- zVirt. Появилась возможность задавать статическую пользовательскую настройку сети для группы узлов, что позволяет точнее настраивать сетевые параметры под требования существующей инфраструктуры.
- Матрица совместимости. Deckhouse обеспечивает технологическую совместимость всех компонентов ИТ-системы — от инфраструктуры до приложений. За последние восемь месяцев матрица пополнилась более чем 40 новыми продуктами наших партнёров по аппаратному обеспечению (YADRO, DEPO Computers, Delta Computers, Aquarius, Kraftway), безопасности (Kaspersky, Positive Technologies, InfoWatch, R-Vision, BI.ZONE, «Рутокен», TRON.ASOC), миграции и отказоустойчивости («Хайстекс», Mind) и прикладному ПО (DirectumRX, Neoflex Dognauts, Lekton Sigma).
ИБ: защита на уровне ядра ОС и инструменты управления доступом
DKP переходит на новый уровень безопасности. Мы планомерно снижаем поверхность потенциальных атак на платформу за счёт использования distroless-образов в CNI Cilium. Также внедрена система контроля целостности на базе файловой системы EROFS и технологии dm-verity. Это гарантирует защиту компонентов платформы от несанкционированных изменений на уровне ядра ОС.
Кроме того, мы переоформили свой сертификат ФСТЭК России (№ 4860): теперь он распространяется не только на контейнеризацию, но и на виртуализацию. В результате Deckhouse Kubernetes Platform Certified Security Edition Pro позволяет управлять контейнерами и виртуальными машинами в рамках единой защищённой платформы. Подробнее о пользе от обновления сертификата для наших клиентов рассказали на вебинаре.
Другие обновления безопасности
Помимо защиты на уровне ядра, мы внедрили ряд инструментов, которые автоматизируют контроль доступа и помогают ИБ-специалистам быстрее реагировать на угрозы:
- Аутентификация через Kerberos. Добавили поддержку корпоративного SSO на базе Kerberos для бесшовного входа пользователей в кластеры DKP. Теперь это происходит без отдельных учётных записей через прямую интеграцию с существующей инфраструктурой.
- Гибкое управление уязвимостями в образах контейнеров. Формат VEX и фильтрация уязвимостей по уровню критичности позволяют точечно контролировать допуск образов в продуктивную среду, исключая ложные срабатывания и шум от некритичных CVE.
- Расширенные полномочия администраторов проектов. Администраторы проектов теперь могут самостоятельно управлять ролями и авторизацией внутри своих проектов. Это даёт командам автономию и снимает нагрузку с администраторов платформы.
- Защита платформенных компонентов. Новая политика запрещает exec/attach к подам с меткой Deckhouse, а валидация CONNECT-операций закрывает дополнительный вектор атаки — компоненты платформы защищены от несанкционированного доступа даже привилегированных пользователей.
- Ограничение привилегий и контроль размещения нагрузок. Политики запрета wildcard-прав в RBAC и контроля tolerations предотвращают получение избыточных прав и размещение нагрузок на системных узлах. Это снижает поверхность атаки без необходимости ручного аудита манифестов.
- Тонкая настройка сессий. Управление временем жизни refresh-токенов, возможность включать/выключать отдельные провайдеры Dex, маппинг claim’ов и поддержка кастомного CA для GitLab-провайдера позволяют адаптировать платформу под строгие внутренние стандарты ИБ.
- Прозрачность для аудита. Автоматическое логирование запросов без аутентификации к kube-apiserver обеспечивает полную наблюдаемость при расследовании инцидентов и прохождении аудитов безопасности.
Единая платформа для контейнеризации и виртуализации
DKP позволяет запускать виртуальные машины (ВМ) наравне с контейнерами. В недавних обновлениях в подсистему виртуализации добавлены следующие функции для промышленной эксплуатации:
- Клонирование ВМ. Позволяет создавать копии существующих ВМ для быстрого развёртывания нескольких ВМ с одинаковой конфигурацией или для проверки обновлений.
- Гибкое управление USB. Проброс физических USB-устройств с гипервизора в ВМ, миграция ВМ с USB без остановки, централизованное управление доступом на уровне кластера.
- Ручной контроль размещения. Появилась возможность выбора конкретного сервера при миграции виртуальной машины для точного ручного контроля над размещением нагрузок в кластере.
- Оптимизация хранилища. Добавили автоматическую очистку удалённых образов дисков ВМ по расписанию для экономии места и снижения затрат.
Платформа для ML/AI и высоконагруженных вычислений
Мы стремимся создать в Deckhouse универсальную базу для запуска AI-нагрузок любой сложности.
Оптимизация работы с GPU
DKP обеспечивает более гибкое распределение ресурсов GPU под разные типы нагрузок на одном узле с помощью покарточной настройки MIG (Multi-Instance GPU). Ранее MIG-конфигурация применялась на уровне всего узла и была одинаковой для всех GPU. Теперь для каждой физической GPU-карты на узле можно задавать свой набор MIG-партиций. Это изменение обеспечивает более гибкое распределение ресурсов под разные типы нагрузок на одном узле.
Линейка управляемых сервисов (PaaS)
Чтобы ускорить разработку и снизить операционную нагрузку на команды, мы развиваем линейку управляемых сервисов (managed services). Уже добавлены семь сервисов, которые закрывают основные сценарии работы с данными:
- транзакционные (PostgreSQL);
- кеширование и in-memory-слой (Valkey, Memcached);
- стриминг и event-driven-взаимодействие (Kafka);
- распределённое хранение (Cassandra);
- аналитика и Lakehouse (Hive Metastore, Trino).
Все сервисы предоставляются в managed-модели, что снижает операционную нагрузку на команды, уменьшает инфраструктурные риски и ускоряет запуск приложений и data-пайплайнов.
Управляющий слой и ядро платформы
Мы постоянно совершенствуем ядро Deckhouse Kubernetes Platform, на базе которого строятся все фичи и компоненты платформы. В последних обновлениях мы сфокусировались на повышении прозрачности процессов обновления и автоматизации системных настроек, чтобы упростить эксплуатацию и оптимизировать потребление ресурсов управляющего слоя.
- Поддержка Kubernetes 1.34 и 1.35. Платформа обеспечивает работу с актуальными версиями Kubernetes. Также мы внедрили гибкое управление доступностью экспериментальных возможностей Kubernetes через параметр enabledFeatureGates.
- Высокая доступность. Добавили режим выделенного узла-арбитра, который позволяет развернуть отказоустойчивый кластер по схеме «2 master-узла + выделенный etcd-узел». Это решение позволяет сэкономить ресурсы управляющего слоя без уменьшения уровня его высокой доступности.
- Прозрачность обновлений. Новый компонент update-observer даёт исчерпывающую видимость процесса обновления кластера. Он отслеживает статус kube-apiserver, kube-scheduler, kube-controller-manager и kubelet в реальном времени, исключая «слепые зоны» и позволяя оперативно реагировать на любые отклонения.
- Расширение памяти через swap. Теперь Deckhouse поддерживает использование swap-памяти для подов (при использовании cgroup v2). Это даёт возможность гибко реагировать на кратковременные всплески нагрузки. Настройка swap не является абсолютной защитой от OOM-kill, однако существенно снижает вероятность принудительного завершения процессов.
- Автоматизация Garbage Collector. Порог очистки выселенных подов теперь рассчитывается автоматически и адаптируется под размер вашего кластера. Это решение исключает ручную настройку и обеспечивает оптимальное соотношение между скоростью работы etcd и доступностью истории состояний подов.
- Автовычисление maxPods. В отсутствие ручных настроек Deckhouse автоматически рассчитывает максимальное количество подов на узлах группы. Расчёт строится на базе ёмкости подсети подов — это гарантирует, что количество подаваемых на узел подов всегда будет соответствовать доступным сетевым ресурсам.
Наблюдаемость
Мы много работали над удобством и полнотой графического интерфейса подсистемы наблюдаемости. Наша цель — сделать состояние платформы прозрачным, а ежедневную эксплуатацию — проще и более предсказуемой для специалистов любого уровня.
- Наблюдаемость в «одном окне». Настраивать условия алертов и создавать собственные метрики стало проще и быстрее. Все действия доступны из одного окна, что сокращает время настройки и снижает порог входа при работе с правилами мониторинга. Мы переработали интерфейс просмотра алертов в консоли: добавили разделение по критичности и отображение графиков метрик алерта. Появилась возможность отключать уведомления об отдельных событиях. Также мы провели редизайн панелей графиков для повышения удобства использования и улучшили навигацию: добавили быстрый поиск и поддержку горячих клавиш.
- Мультитенантность алертов. Мы разделили алерты на системные и проектные. Это позволяет гибко настраивать доступ к алертам в рамках конкретных проектов или всей системы.
- Гибкие политики уведомлений. Добавлена поддержка каналов (email, Telegram, Slack, вебхуки) и политик уведомлений как на уровне всей системы, так и на уровне отдельных проектов. Теперь можно точно определять, какие алерты и по каким каналам доставлять.
- Высокая доступность. Подсистема наблюдаемости стала отказоустойчивой. Если кластер работает в режиме High Availability (HA), модуль observability также переходит в HA-режим. Сервисы запускаются на нескольких узлах и синхронизируют между собой данные: если один из подов будет остановлен, остальные сохранят полную функциональность.
Интерфейс кластера и графический установщик
Параллельно мы развиваем инженерный опыт взаимодействия с платформой. Мы стремимся к тому, чтобы управление жизненным циклом кластера — от первой настройки до разграничения прав доступа — требовало меньше ручных действий и времени.
- Разделение прав доступа в интерфейсе. В интерфейсе мы провели деление платформы на административную (система) и пользовательскую (проекты) части. Теперь правила доступа позволяют чётко разделить операции на уровне всей системы или конкретного проекта напрямую через UI. Это даёт командам необходимую автономию, а администраторам — порядок в управлении ресурсами.
- Усовершенствованный графический установщик. Мы улучшили полноту и информативность сервисных сообщений, а также доработали предпроверки корректности настроек и готовности инфраструктуры. Это позволяет заранее учитывать ограничения среды и снижать риск ошибок на этапе развёртывания.
- Новые формы установки и инвентарь ресурсов. Добавлены формы для развёртывания в инфраструктурах vSphere, Deckhouse Virtualization Platform и zVirt. В инвентарь добавлены SSH-ключи и SSH-бастионы: теперь эти ресурсы можно переиспользовать в нескольких кластерах, что избавляет от рутинных ручных настроек при развёртывании каждого кластера.
Хранилище и работа с данными
Для хранения данных в DKP используется встроенное локальное и реплицируемое хранилище, подключаются внешние системы через CSI, а также задействуются мощности публичных и частных облаков. В недавних обновлениях мы доработали механизмы управления данными, чтобы обеспечить отказоустойчивость систем хранения «из коробки» и упростить миграцию приложений между контурами.
- Отказоустойчивое хранение. Все управляющие модули встроенного программно-определяемого хранилища, а также CSI-контроллеры для подключения внешних программных хранилищ и СХД теперь автоматически конфигурируются в отказоустойчивом режиме в мультимастер-кластерах. Это снижает риск простоев при отказах контроллеров и повышает стабильность хранения в рабочих средах.
- Возможность импорта томов. Теперь в хранилище доступен полный цикл экспорта и импорта данных, что упрощает миграции statefull-приложений между кластерами, перенос данных между средами и восстановление в случае инцидентов или плановых работ.
Хранилище образов
Обновления позволяют полностью локализовать работу с образами внутри инфраструктуры, что повышает автономию кластеров и снижает затраты на поддержку сторонних решений.
- Локальная копия хранилища образов платформы. Модуль позволяет создать копию хранилища образов контейнеров платформы внутри кластера и переключить развёрнутый кластер DKP на работу с ним. Таким образом исключается необходимость в дополнительном внешнем хранилище для обновления платформы.
- Хранилище образов прикладной нагрузки. В DKP появилось встроенное хранилище контейнерных образов прикладной нагрузки, который позволяет запускать пользовательскую нагрузку в кластере без необходимости предварительного развёртывания и настройки внешнего registry.
Сетевая подсистема
Встроенная программно-определяемая сеть обеспечивает связанность кластера с существующей инфраструктурой и легко интегрируется в корпоративную среду. Мы развиваем сетевую подсистему Deckhouse, чтобы сделать связность приложений более прозрачной и надёжной даже в закрытых контурах. Новые функции автоматизируют рутинные настройки и расширяют возможности интеграции платформы с корпоративными сервисами.
- GeoIP. Мы добавили возможность кеширования и поддержку работы с зеркалами для баз геолокации IP-адресов. Теперь риск упереться в лимиты поставщика баз GeoIP стал ниже, а определять географию IP-адресов в закрытых окружениях — проще.
- CNI Cilium и протокол SCTP. Мы добавили поддержку протокола SCTP, который широко используется в работе телеком-операторов. Это позволяет использовать современные протоколы (radius, diameter) для аутентификации, авторизации и аккаунтинга пользователей телеком-сервисов на прикладном уровне.
- Istio. При организации федерации и мультикластера теперь есть возможность использовать доменные имена (наряду с IP-адресами) для объявления сервисов, что делает организацию межкластерного взаимодействия приложений более простой и нативной.
Документация
Мы сделали документацию DKP удобнее и практичнее для команд внедрения и эксплуатации:
- Подготовили материалы для сложных сценариев: гайд по установке DKP в закрытом окружении и по разметке и объёму дисков перед установкой DKP. Это позволяет заранее учитывать ограничения инфраструктуры и снижать риск ошибок на этапе внедрения.
- Переработали и актуализировали раздел «Архитектура» — добавили туда 27 новых страниц, описывающих архитектуру восьми различных подсистем DKP.
- Инструкцию по развёртыванию DKP через графический установщик дополнили подробными шагами и скриншотами интерфейса с примерами.
Кроме того, мы улучшили базовые сценарии работы с документацией:
- В разделе документации модулей переработали фильтры по категориям, что улучшает навигацию по каталогу модулей.
- FAQ получил новый формат: вопросы сгруппированы по категориям, ответы по умолчанию свернуты, а при переходе по прямой ссылке сразу открывается нужный ответ. Это помогает быстрее находить конкретную информацию без лишнего скролла.
- Изображения в документации теперь можно увеличивать.
- Улучшено отображение документации на мобильных устройствах.
Deckhouse Академия
Образовательные программы Deckhouse развиваются вместе с платформой. Наша цель — не просто дать вам инструмент, но и помочь стать в нём экспертом, тратить меньше времени на поиск ответов и уверенно чувствовать себя при работе с любой частью системы. В Deckhouse Академии произошли следующие обновления.
- Мы разработали и запустили новые курсы: «Инструменты безопасности в DKP» и «Использование системы мониторинга в DKP».
- Наш курс «Использование DKP» теперь доступен в записи. Вам больше не нужно ждать набора группы и подстраиваться под даты запуска очередного потока — курс можно проходить тогда, когда вам удобно.
- Подготовили сертификацию «Инженер безопасности DKP».
- Опубликовали на сайте бесплатный мини-курс «Основы информационной безопасности в Kubernetes и DKP».
Этот обзор — лишь часть большой работы, которую команда Deckhouse проделала за последние месяцы. Каждая новая функция, будь то биллинг в интерфейсе или проверка целостности модулей в ядре, создана для того, чтобы ваша работа была проще, а ИТ-системы — стабильнее. Чтобы изучить технические подробности релизов, загляните в нашу документацию.