
Инфраструктура для машинного обучения — это не просто «поставить кубер и Jupyter». Любая команда, которая пыталась собрать MLOps-стек с нуля, знает: в теории всё просто, а на практике — год возни, YAML на сотни строк и бесконечные танцы с GPU-драйверами. Мы через это тоже прошли.
Так появилась Nova AI — новая редакция нашей платформы Nova, адаптированная под задачи искусственного интеллекта и машинного обучения. Базовая Nova уже несколько лет используется компаниями как Kubernetes-платформа для оркестрации контейнеров и управления инфраструктурой. Но в какой-то момент стало ясно: если поверх этого ядра добавить GPU Operator и специализированные ML-сервисы — такие как JupyterHub, MLflow, Airflow и KServe, — получится полноценная среда для ML-команд.
Меня зовут Никита Векессер, я лидер продукта Nova AI, и в этой статье будет инженерный разбор того, как мы собрали новую редакцию продукта: из чего она состоит, как устроено управление компонентами, как реализовано дробление GPU и почему мы сделали ставку на модульность, а не на монолитный стек вроде Kubeflow.
Почему и зачем появилась Nova AI
Nova AI выросла из Nova Container Platform — Kubernetes-платформы Orion soft для оркестрации контейнеров. Уже несколько лет она используется enterprise-компаниями для инфраструктурных сценариев, и со временем стало понятно, что она также хорошо подходит для задач машинного обучения и искусственного интеллекта.
Первым делом мы провели опрос рынка и определили основные боли ML-команд:
построение собственной ML-платформы занимает год–полтора даже у опытных инженеров;
рынок MLOps-специалистов узкий, и потеря одного из них способна надолго остановить развитие инфраструктуры;
оптимизация GPU и распределённый инференс остаются для большинства компаний неизведанной зоной;
Основной приоритет на создание инфраструктуры под ML, в результате чего часто забивают безопасность и другие сопутствующие и неотъемлемые вещи.

Nova AI решает эти проблемы на уровне инфраструктуры: это не набор компонентов, а единый слой, где ключевые сервисы уже протестированы и согласованы. Платформа устраняет лишнюю сложность и обеспечивает стабильное и единообразное окружение для ML и AI без необходимости в ручной сборке.
Логичный вопрос, который наверняка может возникнуть у читателя: чем это всё отличается от Kubeflow и аналогов?
Kubeflow действительно покрывает весь ML-цикл — от подготовки данных до инференса, но на практике редко используется в продакшне. Он сложен в установке, требует глубокой доработки под корпоративные политики и тяжело интегрируется с существующими системами безопасности.
Nova AI построена иначе: всё модульно и управляется через CRD и кастомный оператор, который автоматизирует установку и обновление компонентов по принципу GitOps. Команда сама выбирает нужные модули — JupyterHub, Airflow, MLflow, KServe и другие. Каждый можно установить отдельно, без жёстких зависимостей и общего монолита.
Такой подход убивает сразу не двух, а трёх зайцев:
упрощает интеграцию с внутренними системами и IDM;
делает обновления и масштабирование предсказуемыми;
позволяет использовать знакомый стек инструментов в контейнерной инфраструктуре.
В результате Nova AI остаётся инженерно понятным решением: без магии, без vendor lock-in, с знакомой многим архитектурой и контролем за всем, что происходит под капотом.
Архитектура и стек
Как уже писалось выше, в основе Nova AI — Nova Container Platform, Kubernetes-платформа Orion soft для оркестрации контейнеров. Поверх неё развёрнут слой, оптимизированный под задачи машинного обучения и искусственного интеллекта.

Архитектура разделена на два уровня — инфраструктурный и прикладной.
Инфраструктурный уровень отвечает за взаимодействие с железом и GPU-ресурсами. Здесь работает кастомный оператор, который управляет установкой системных компонентов:
NVIDIA GPU Operator — обеспечивает корректное определение и использование видеокарт в кластере;
Node Feature Discovery — определяет аппаратные характеристики нод и их системные конфигурации.
Оба компонента устанавливаются по умолчанию. При необходимости в конфигурации кастомного оператора можно задать параметры для включения режимов MIG (Multi-Instance GPU) или time-slicing, чтобы управлять дроблением GPU на уровне манифеста. Этот слой обеспечивает видимость GPU и распределение вычислительных ресурсов между подами.
Прикладной уровень — это ML-стек, с которым работают инженеры и дата-сайентисты:
JupyterHub для запуска ноутбуков,
Airflow для оркестрации пайплайнов,
MLflow для трекинга экспериментов,
MinIO для хранения данных,
KServe для инференса моделей,
KubeRay — для распределённых вычислений и управления задачами.
Каждый модуль независим: можно развернуть только нужные — например, ограничиться JupyterHub или добавить Airflow и MLflow для полного цикла MLOps. Все настройки выполняются через ресурсы MLInfrastructure и MLCluster, которые создаёт оператор.
Оператор интегрирован с FluxCD: изменения конфигурации применяются автоматически и безопасно. Чтобы включить новый модуль, достаточно изменить манифест ресурса — и платформа сама доставит нужные компоненты в кластер. Это избавляет от ручных кастомизаций на сотни строк и делает процесс воспроизводимым.
С точки зрения эксплуатации, Nova AI — это управляемая среда, где ML-инструменты остаются независимыми сервисами, но их установка и обновления происходят централизованно.
Общий интерфейс управления при этом не навязывается: у каждого инструмента сохраняется свой UI — JupyterHub, MLflow, Airflow и т. д.
Так достигается баланс между гибкостью и контролем: единая точка управления через CRD и GitOps, но полная автономность компонентов на уровне работы и интерфейсов.
GPU и производительность
В Nova AI дробление GPU на уровне драйвера реализовано стандартными средствами NVIDIA — MIG и time-slicing. Ниже кратко о том, как эти режимы работают и чем отличаются. Тот или иной режим выбирается в зависимости от конфигурации и возможностей видеокарты.
MIG обеспечивает аппаратное разделение GPU на независимые логические секции. Каждая получает гарантированные ресурсы, и «перетекание» нагрузки между задачами исключено. Такой вариант даёт стабильную производительность и защищённость от ошибок вроде Out of Memory, но требует GPU с поддержкой MIG на уровне железа (серии A100/H100 и совместимые).
Time-slicing распределяет ресурсы по времени. Это более гибкий режим, доступный почти на всех видеокартах, но без строгой изоляции: отдельные процессы могут временно занимать больше ресурсов, чем запланировано, что потенциально влияет на соседние задачи.
Nova AI не накладывает собственных ограничений — все возможности и лимиты определяются самим железом и драйверами NVIDIA. Платформа просто обеспечивает правильную интеграцию и автоматическую настройку через GPU Operator, без необходимости ручного тюнинга.
Распределенный инференс
Платформа поддерживает объединение ресурсов GPU с разных физических серверов. Это позволяет запускать крупные языковые модели, которым требуется больше видеопамяти, чем доступно на одном узле.
В одном из пилотных кейсов на четырёх серверах с GPU NVIDIA Tesla T4 были запущены модели Qwen-2.5-7B и Qwen-2.5-Coder-14B. Платформа автоматически распределяла нагрузку между карточками и масштабировала вычисления внутри единого GPU-кластера.
Утилизация и контроль производительности
Nova AI включает инструменты для мониторинга и анализа загрузки ресурсов, но не задаёт единую систему метрик. Платформа обеспечивает базовые механизмы сбора данных, а выбор и интерпретация метрик остаются на стороне команды.
Инженеры могут логически делить GPU и распределять задачи параллельно, повышая фактическую утилизацию ресурсов видеокарт. Для мониторинга можно использовать привычный стек Prometheus и Grafana с экспортом метрик GPU, CPU, памяти и сетевых задержек.
Типовая интеграция включает централизованные метрики, логи и алёртинг на уровне Kubernetes. Набор графиков и правил уведомлений можно расширять под конкретный ворклоад: следить за загрузкой GPU, откликами пайплайнов, временем инференса или простоями вычислительных узлов.
Nova AI не подменяет собой систему наблюдаемости — она даёт инфраструктурный слой, где метрики доступны из коробки и легко встраиваются в существующие процессы DevOps/MLOps.
Ключевая идея такая:
дробление GPU реализовано нативно через NVIDIA-операторы;
поведение зависит от выбранного режима (MIG / time-slicing);
платформа не лезет в вычисления, а отвечает за предсказуемую работу и мониторинг среды.
Безопасность и комплаенс
В Nova AI безопасность встроена на уровне инфраструктуры — от управления секретами до сканирования на уязвимости контейнеров и хостов.
Управление секретами и токенами
Центральный элемент системы — StarVault, хранилище секретов компании Orion soft. Оно служит единой точкой входа для всех сервисов Nova AI и обеспечивает централизованный контроль доступа.
Компоненты с пользовательским интерфейсом — MLflow, JupyterHub, Airflow и другие — интегрированы со StarVault по протоколу OIDC (OpenID Connect). Пользователь проходит аутентификацию один раз, а доступ к сервисам управляется через общую политику.
Для доставки секретов в контейнеры поддерживаются несколько механизмов:
Vault Agent — автоматически получает и обновляет секреты внутри подов;
Vault CSI Driver — монтирует секреты в виде файлов;
Vault Secrets Webhook — подставляет токены и переменные окружения при запуске контейнеров.
Такой подход исключает хранение секретов в открытом виде и обеспечивает безопасную работу ML-стека даже в изолированных инфраструктурах.
Защита контейнеров и сетей
В Nova AI реализован тот же уровень безопасности, что и в базовой Nova Container Platform. Для контроля среды выполнения используется NeuVector — модуль, отвечающий за runtime-мониторинг и анализ сетевых соединений. Он выявляет уязвимости, отслеживает подозрительную активность и при необходимости блокирует несанкционированные операции.
Модуль подключается опционально, но при активации обеспечивает промышленный уровень наблюдаемости и защиты, достаточный для критичных и закрытых сред.
Соответствие требованиям
Nova AI создаётся с учётом российских норм информационной безопасности и политики импортозамещения. В экосистеме Orion soft уже есть сертифицированная редакция продукта, одобренная ФСТЭК. Команда работает над её обновлением и планирует включить туда модули ML-инфраструктуры Nova AI.
Платформа полностью совместима с отечественными ОС: Astra Linux, Red OS и другими. Все базовые компоненты, включая NVIDIA GPU Operator, протестированы на этих дистрибутивах и обеспечивают корректную работу GPU.
В планах — пересборка ключевых компонентов ML-стека (Airflow, MLflow, и др.) из исходников с устранением уязвимостей, что обеспечит прозрачность, контроль версий и соответствие требованиям безопасности при поставке решений заказчикам.
Таким образом, Nova AI уже поддерживает необходимые отечественные ОС и стандарты, а в перспективе планирует стать частью сертифицированной сборки, предназначенной для организаций с повышенными требованиями к ИБ и комплаенсу.
Типовой пилот
Развернуть минимальный кластер Nova AI в среднем занимает 30–40 минут. Процесс полностью описан в документации и не требует ручных доработок.
Для пилота достаточно:
одного узла с GPU (физического или виртуального, поддерживающего драйверы NVIDIA). Если в ворклоаде используется GPU, нужно наличие такого узла и установка ресурса MLInfrastructure. Если же нагрузка выполняется только на CPU, ресурс MLInfrastructure можно не устанавливать — достаточно MLCluster;
предустановленной Nova Container Platform либо чистого сервера для её установки;
лицензии Nova AI.
Из подготовки — только установка видеодрайверов NVIDIA. Этот шаг выполняется строго по инструкции: требуется установка NVIDIA GPU Drivers. Мы протестировали их совместимость с отечественными ОС — Astra Linux и Red OS, так что проблем с установкой и работой GPU в этих средах не возникает.
После выполнения необходимых подготовительных шагов кластер разворачивается из готовых манифестов, и пользователю сразу доступны базовые компоненты ML-стека — JupyterHub, MLflow, Airflow. Такой пилот позволяет быстро проверить интеграцию с инфраструктурой заказчика и оценить возможности платформы в реальных условиях.
Сложности первых внедрений
Успешное развертывание Nova AI во многом зависит от подготовленности среды и согласованности инфраструктуры. При наличии у команды базовых нав��ков работы с Kubernetes и контейнерами установка проходит без затруднений
Чаще всего ошибки возникают из-за:
некорректных сетевых конфигураций или маршрутизации;
нехватки понимания механики подов и ресурсных лимитов;
неверно настроенных архитектурных зависимостей.
Эти вопросы решаются совместно: инженеры Orion soft подключаются к пилотам, помогают с конфигурацией и разбором ошибок. Обычно достаточно одного совместного сеанса, чтобы привести систему в рабочее состояние.
Поддержка и обновления
Nova AI изначально создавалась как управляемая платформа, где обновления и конфигурации применяются по принципу GitOps. Все параметры хранятся в репозитории и синхронизируются автоматически — без ручных вмешательств.
Перед релизом обновления проходят внутреннее тестирование: проверяется совместимость модулей и корректность обновления. В продакшн выкладываются только проверенные контейнерные образы, которые устанавливаются стандартными командами.
Во время пилота создаётся общий чат с инженерами OrionSoft — через него решаются вопросы по установке и конфигурации. После выхода в продакшн заказчики подключаются к техподдержке и при необходимости передают кейсы напрямую в разработку.
За счёт такой схемы обновления проходят предсказуемо, а кластеры остаются воспроизводимыми и управляемыми.
Будущее и опыт
Пока проходят первые пилоты мы собираем обратную связь от инженеров и заказчиков, чтобы понять, какие задачи им важнее всего закрыть в ближайших релизах.
Дальше — курс на развитие по нескольким ключевым направлениям.
Альтернативные GPU. Сейчас платформа оптимизирована под NVIDIA, но мы работаем над совместимостью и с китайскими видеокартами — это важно в условиях импортозамещения и локальных поставок железа.
Рабочие окружения. Помимо JupyterHub появится поддержка VS Code как альтернативного инструмента для экспериментов — для тех, кто привык писать код именно в нём.
ML-стек. В разработке новые компоненты: мониторинг моделей, Feature Store и инструменты, которые помогут глубже контролировать и управлять ML-процессами.
Network Operator. Добавление этого компонента позволит гибче управлять сетевыми политиками и изоляцией сервисов внутри ML-кластера.
UX для дата-сайентистов. Хочется, чтобы работа между компонентами была максимально естественной: например, результаты экспериментов из JupyterHub автоматически появлялись в MLflow без дополнительных действий.
Инфраструктура. В ближайших релизах появится автоматическая установка GPU-драйверов для российских ОС — чтобы новый сервер можно было запустить без участия администратора.
Дорожная карта гибкая: приоритеты задаёт не внутренний план, а реальные сценарии у заказчиков.
Связаться с нами и запросить демо можно через сайт Nova AI— там же оформляется пилот.
А в комментариях расскажите, с какими проблемами вы сталкивались при запуске ML-инфры и что помогло их решить — обсудим.