Введение
LeaderWorkerSet
Alauda Build of LeaderWorkerSet основан на проекте Kubernetes SIG LeaderWorkerSet (LWS).
LeaderWorkerSet предоставляет Kubernetes-нативный workload API для развертывания групп подов по паттерну Leader/Worker, что позволяет запускать распределённые нагрузки на нескольких узлах — в частности, обучение и инференс крупных AI моделей — как полноценные объекты в Kubernetes.
Основные компоненты и возможности включают:
- LeaderWorkerSet CRD: основной API-ресурс, определяющий группу реплицированных наборов подов Leader/Worker. Каждая реплика состоит из одного лидер-пода и настраиваемого количества воркер-подов, которые совместно планируются и управляются как единое целое.
- Совместное планирование и топологическая осведомлённость: лидеры и воркеры внутри группы планируются вместе с поддержкой ограничений по распределению топологии, чтобы размещать поды на одном узле, стойке или зоне доступности для низкой задержки межузловой связи (например, NVLink, InfiniBand).
- Многоузловой инференс LLM: позволяет обслуживать крупные языковые модели, превышающие память GPU одного узла (например, Llama 3.1 405B), на нескольких узлах с использованием тензорного или конвейерного параллелизма. LWS является обязательной зависимостью Alauda Build of KServe для данного сценария.
- Многоузловое обучение: поддерживает распределённые фреймворки обучения (PyTorch DDP, DeepSpeed, Megatron-LM), обеспечивая стабильные, совместно расположенные группы подов лидер/воркер с предсказуемыми именами хостов и сетевыми идентичностями.
- Пошаговые обновления и восстановление после сбоев: поддерживает поочерёдные перезапуски и автоматическую замену подов на уровне группы, гарантируя согласованную переработку всей группы Leader/Worker при сбое или обновлении.
- Последовательный запуск: лидер-под может выступать в роли точки входа и координатора, при этом воркер-поды запускаются после готовности лидера — что позволяет использовать фреймворки, требующие инициализации мастер-процесса перед подключением воркеров.
Для установки на платформе смотрите Install LeaderWorkerSet.
Документация
Официальная документация и связанные ресурсы LeaderWorkerSet:
- LeaderWorkerSet Documentation: https://lws.sigs.k8s.io/ — официальная документация с описанием концепций, API и руководствами по использованию.
- LeaderWorkerSet GitHub: https://github.com/kubernetes-sigs/lws — исходный код, API-справочник и примеры проекта LeaderWorkerSet Kubernetes SIG.
- KServe (Alauda Build): ../kserve/intro — KServe использует LeaderWorkerSet как обязательную зависимость для многоузлового инференса LLM.