Заявка на консультацию
Оставьте ваши данные и наши менеджеры свяжуться с вами в ближайшее время
Блог

Как собрать GPU-кластер из нескольких серверов под ML-задачи

Разбираем, как собрать GPU-кластер для ML: выбор видеокарт, сетевое взаимодействие InfiniBand/RoCE, системы хранения, питание и охлаждение. Критическая роль сети между нодами и экономическая целесообр
Один сервер с 8 видеокартами кажется большой машиной — пока модель не перестает помещаться в память и не приходится резать датасет на части. С этого момента начинается история про кластер. В статье разберем, из каких узлов он состоит, какую сеть выбрать, сколько электричества придется подвести в стойку и как не выкинуть деньги на железо, которое будет простаивать. Без формул, по делу.

Когда одного сервера уже не хватает

Понять, что пора масштабироваться, можно по трем сигналам:
— модель не помещается в память одной ноды, и приходится либо урезать архитектуру, либо переходить на более тяжелую квантизацию; — обучение идет днями, а данных и экспериментов все больше; — инференс перестает справляться с потоком запросов, и очередь начинает копиться.
Если совпадает хотя бы два из трех — кластер уже не блажь, а способ сэкономить время команды и не платить за простаивающие лицензии.
Сравнительная диаграмма производительности: один мощный сервер с GPU в центре, вокруг него четыре узла кластера, стрелки показывают рост мощности и пропускной способности
Сравнение конфигураций для разных задач

Задача

Один сервер 8×GPU

Кластер 4 ноды × 8 GPU

Дообучение моделей до 13B параметров

Спокойно тянет

Избыточно

Обучение моделей 70B и выше

Не помещается в память

Штатный сценарий

Инференс 200–500 параллельных сессий

На грани

Запас по нагрузке

Эксперименты для нескольких команд

Очередь и блокировки

Можно делить ресурсы между проектами

Из чего состоит GPU-кластер

Кластер собирается из четырех слоев: вычисление, сеть, хранение и оркестрация. Каждый из них одинаково важен. Слабое звено в одном перекроет вложения во все остальные.

Вычислительные узлы

Это серверы, в которые поставлены видеокарты. Под обучение больших моделей обычно берут конфигурации на 8 ускорителях NVIDIA — H100, H200 или A100. Под бюджетные стенды и исследования идет вариант на RTX 4090. Внутри одного корпуса карты соединены через NVLink и NVSwitch — это «скоростное метро» между GPU: данные ходят на сотнях ГБ/с без участия процессора. Внутри ноды все хорошо. Проблемы начинаются между нодами.
Подобрать серверы для машинного обучения под конкретную модель проще, если заранее знать целевой размер сети и объем датасета.

Сеть между узлами

Здесь живет половина инженерных решений по кластеру. Главная развилка — InfiniBand HDR/NDR или Ethernet 100/200/400G с RoCE v2. Простыми словами: и то и другое умеет отдавать GPU одного сервера данные напрямую из памяти GPU другого сервера, минуя процессор. Эта технология называется RDMA — прямой доступ к памяти удаленного хоста. Без нее тренировка на нескольких нодах теряет смысл: ускорители больше ждут, чем считают.
Аналогия простая. Видеокарты — это болиды Формулы-1. Сеть — дорога, по которой они едят. Если положить грунтовку, болиды бесполезны.
Архитектурная схема GPU-кластера: вычислительные узлы с видеокартами, центральные коммутаторы, система хранения, сетевые кабели, распределение нагрузки между компонентами

Системы хранения

Датасет на сотни терабайт лежит не на локальных дисках, а на общем хранилище — иначе ноды будут гонять данные туда-сюда. Под высокую нагрузку берут параллельные файловые системы — Lustre, BeeGFS или Weka — поверх All-Flash NVMe-полок. Главная задача такого хранилища — равномерно отдавать поток всем нодам одновременно, без узких мест.

Оркестрация и планировщик

Тот, кто решает, на каких нодах запустить очередную задачу. По терминологии: Slurm — это планировщик заданий из мира HPC, Kubernetes — полноценный оркестратор с контейнерной изоляцией. Оба варианта — рабочие. Slurm — классика HPC и научных кластеров: жесткие очереди, понятные приоритеты, минимум магии. Kubernetes с надстройками Kubeflow или Volcano — контейнерный подход для команд, которым важно изолировать окружения и крутить рядом обучение, инференс и пайплайны данных.
Если в команде уже живет Kubernetes — берите его и не плодите технологий. Если приходит классический ML-инженер из академии — Slurm зайдет быстрее.

Какие GPU выбрать под задачу

Цены меняются каждые пару кварталов, поэтому в таблице — порядок, а не точные суммы. Серверный бренд намеренно не указываем: рынок сегментирован, выбор зависит от региона поставки и сервисной поддержки.
GPU для ML-кластеров: характеристики и стоимость

GPU

Память

Под какие задачи

Стоимость сервера на 8 шт. (порядок)

NVIDIA H100 80 GB

80 ГБ HBM3

Обучение LLM от 70B параметров, multi-node distributed training

от 25–30 млн ₽

NVIDIA A100 80 GB

80 ГБ HBM2e

Дообучение средних моделей, инференс LLM 13–70B, классические задачи компьютерного зрения

от 12–18 млн ₽

NVIDIA H200 141 GB

141 ГБ HBM3e

Инференс очень больших моделей, длинный контекст

от 30 млн ₽

NVIDIA RTX 4090

24 ГБ GDDR6X

Исследовательские стенды, прототипирование, инференс моделей до 13B

от 3–5 млн ₽

Если задача — собрать кластер под обучение собственной LLM, базовый комплект на 4 ноды по 8 H100 стоит как небольшой коммерческий ЦОД. Под инференс уже обученных моделей чаще выбирают A100 — соотношение цены и производительности удобнее. Заказать сервер с GPU NVIDIA H100 можно как готовой сборкой, так и под индивидуальную конфигурацию.
Для ориентира: базовая сборка на 4 ноды по 8 H100 со всей инфраструктурой обходится от 100–150 млн ₽ единоразово. Аренда похожей конфигурации у провайдера — от пары миллионов рублей в месяц.

Сеть и межсоединение: где экономить нельзя

Это место, где чаще всего теряют деньги. Соблазн понятный: GPU стоят дорого, сеть кажется второстепенной, ставят обычный Ethernet 10G — и обучение замедляется в 3–5 раз. Видеокарты простаивают, счета за электричество и аренду идут, а модель учится столько же, сколько раньше училась на одной ноде.
Что важно держать в голове.
Между нодами должен ходить трафик с пропускной способностью не меньше 200 Гбит/с на каждое GPU-направление при сценариях data parallelism, и заметно выше — при tensor parallelism между нодами. Поэтому коммерческие сборки тяготеют к InfiniBand NDR (400 Гбит/с) или Ethernet 400G с RoCE.
GPUDirect RDMA убирает процессор и оперативную память из пути данных. Это не маркетинг, а реальная экономия 20–40% времени обучения. Библиотека NCCL от NVIDIA берет на себя коллективные операции (allreduce и подобные), и она же тянет максимум именно из RDMA-сетей.
Топология сети тоже имеет значение. Для кластеров до 8 нод хватает простой схемы «все в один коммутатор». Для 16+ нод обычно строят fat-tree — иерархическую структуру с резервированием каналов, чтобы любая пара нод гарантированно получала полную полосу.
Современная сетевая инфраструктура в дата-центре: оптические кабели, коммутаторы InfiniBand и Ethernet, системы охлаждения, шкафы с электроснабжением, четкая сетевая топология

Питание, охлаждение и стойка

Цифры, которые часто становятся сюрпризом.
Энергопотребление GPU-конфигураций

Конфигурация

Энергопотребление

1 сервер 8×H100

8–10 кВт

1 сервер 8×A100

5–7 кВт

1 сервер 8×RTX 4090

3–4 кВт

Стойка из 4 нод 8×H100

32–40 кВт

Стандартная коммерческая стойка в большинстве дата-центров — это 5, максимум 10 кВт. То есть один сервер на 8×H100 уже выбирает половину типового лимита. Четыре таких сервера в одну стойку без подготовки не поставить.
Варианта три. Разносить серверы по нескольким стойкам — теряется плотность, растет аренда. Искать ЦОД с поддержкой high-density стоек на 30–50 кВт. Переходить на жидкостное охлаждение — заднедверные теплообменники или прямое охлаждение чипов. Последний путь дает максимальную плотность, но требует подготовленной инфраструктуры — обычно его предлагают только специализированные операторы.
Если своя серверная не вытягивает по электричеству или охлаждению, разумный шаг — колокейшн в дата-центре, где стойки уже спроектированы под высокую тепловую нагрузку.

Кластер своими силами или аренда — что выбрать

Развилка одна, но решений три.
Купить железо и поставить в свою серверную. Подходит, если есть подготовленное помещение, бесперебойное питание, кондиционирование и команда, которая будет это обслуживать. Главный минус — большие капитальные вложения и риск устаревания за 3–4 года.
Купить железо и арендовать стойки в коммерческом ЦОД. Промежуточный вариант: владение оборудованием остается за компанией, а питание, охлаждение и физическая безопасность — за дата-центром. Подходит, когда нужен полный контроль над конфигурацией и данными.
Арендовать готовые GPU-серверы у провайдера. Самый быстрый старт: контракт за пару дней, никаких CAPEX, можно увеличивать и уменьшать емкость под проект. Минус — выше операционная стоимость в долгую и зависимость от чужих очередей на железо. Аренда GPU-сервера обычно выгоднее покупки в первый год использования, дальше расчет зависит от загрузки.
Интерьер высокотехнологичного дата-центра: ряды серверных стоек, красное и синее освещение, системы жидкостного охлаждения, электросистемы и кабельное хозяйство

Пошаговый план сборки кластера на 4 ноды

  1. Зафиксировать целевые модели и сценарии — обучение, дообучение, инференс. От этого зависит выбор GPU и объем памяти на карту.
  2. Подобрать вычислительные ноды — конфигурации серверов с нужным числом ускорителей и поддержкой NVSwitch.
  3. Спроектировать сеть — выбрать InfiniBand или Ethernet с RoCE, посчитать пропускную способность, заложить топологию.
  4. Подобрать хранилище — параллельную ФС поверх NVMe-полок с запасом по IOPS на пиковое чтение датасета.
  5. Выбрать оркестратор — Slurm или Kubernetes исходя из компетенций команды.
  6. Пилотировать на одной ноде — собрать весь стек, прогнать тестовое обучение, замерить утилизацию GPU.
  7. Масштабировать поэтапно — добавлять ноды по одной, проверять, как ведет себя сеть и хранилище под растущей нагрузкой.

Типовые ошибки при сборке GPU-кластера

  • Сэкономили на сети. Поставили 10G Ethernet вместо InfiniBand или 100G+ с RDMA. Результат: ускорители недогружены, обучение тянется в разы дольше.
  • Не рассчитали мощность стойки. Серверы привезли, ЦОД не дает столько киловатт — приходится разносить ноды по разным залам и переделывать сетевую схему.
  • Взяли Kubernetes без опыта. Команда увязает в YAML-манифестах, операторах и сетевых политиках — а ML-задачи стоят.
  • Положили датасет на локальные диски нод. Каждая нода тянет данные по сети поодиночке, скорость обучения падает на 30–50%.
  • Не настроили мониторинг утилизации GPU. Картина «дорогие ускорители простаивают» обнаруживается через квартал, когда инвестиции уже сделаны.

Заключение

GPU-кластер из нескольких серверов — это про задачи, которые в один сервер уже не помещаются: большие модели, длинный контекст, поток одновременных запросов. Главная статья расходов и главный риск в проекте — сеть между нодами. На ней нельзя экономить: пропускная способность и поддержка RDMA напрямую определяют, как быстро будут считаться эпохи и насколько утилизируются дорогие ускорители.
Питание и охлаждение — вторая по важности тема: стойка на 32–40 кВт требует подготовленной инфраструктуры, и обычная серверная справится не всегда. И последнее: считать стоит совокупную стоимость владения за 3 года, а не только цену железа. Если сравнение покажет, что покупка не окупается — разумнее взять подбор сервера под нагрузку у профильного поставщика и стартовать с готовой инфраструктуры.

Ответы на частые вопросы

Сколько серверов нужно, чтобы это уже считалось кластером?

Формально — от двух. На практике под обучение больших моделей собирают сборки от четырех нод: меньше — и сетевая инфраструктура с оркестратором не окупаются, выгоднее остаться в рамках одного сервера с 8 GPU.

Можно ли собрать GPU-кластер на RTX 4090 или нужны только A100/H100?

Можно, и это разумный путь для исследовательских стендов. Главное ограничение — у RTX 4090 нет полноценной поддержки NVLink между картами и слабее работа с FP64. Под обучение больших LLM это критично, под прототипирование и инференс моделей до 13B параметров — нет.

Чем InfiniBand отличается от Ethernet и нужен ли он для кластера на 2 ноды?

InfiniBand — отдельная сетевая технология, спроектированная под низкие задержки и встроенный RDMA. Ethernet с RoCE v2 умеет то же самое, но требует тщательной настройки приоритизации трафика. Для двух нод подойдет и качественный Ethernet 200/400G — разница начинает играть на 8+ нодах.

Какая мощность нужна в стойке для одного сервера 8×H100?

В пике — около 10 кВт. С запасом по питанию и резерву — закладывают 12 кВт на одну ноду. Это уже high-density сценарий: обычная стойка на 5 кВт не подойдет.

Slurm или Kubernetes — что выбрать для управления ML-кластером?

Slurm проще для классических очередей обучения и команд с опытом HPC. Kubernetes удобнее, когда рядом крутятся инференс, пайплайны и сервисы, а команда уже работает с контейнерами. Универсального ответа нет — выбор идет от компетенций.