Kubernetes для ML
Тема дорожной карты · MLOps
Kubernetes предоставляет фундаментальную инфраструктуру для масштабируемых ML-нагрузок: планирование GPU через NVIDIA Device Plugin, управление training job через Kubeflow Training Operator (TFJob, PyTorchJob), serving моделей через KServe, оркестрация workflow через Kubeflow Pipelines или Argo Workflows. Resource quota обеспечивает справедливое распределение ресурсов между командами; PriorityClass гарантирует, что production serving поды вытесняют низкоприоритетные training job. Horizontal Pod Autoscaler масштабирует inference deployment на основе пользовательских метрик (RPS, глубина очереди), экспортируемых в Prometheus.
Как это работает
Kubernetes для ML: Kubernetes для ML (training-jobs как K8s jobs, GPU node pools, KubeRay для distributed Ray, KServe для serving); GPU cluster management (node autoscaling, multi-instance GPU partitioning, fair-share scheduling для shared training-кластеров); cloud ML services (SageMaker, Vertex AI, Azure ML — проще ops, vendor lock-in trade-off; в РФ: Yandex DataSphere, MTC Cloud Tabby); hybrid + edge deployment (training в облаке, serving on-device или on-prem; federated learning где data не может покинуть premises).
Когда применять
Kubernetes для ML оправдан на 5+ инженерах + многих стеках — ниже простые инструменты (Modal, SageMaker, runpod, vast.ai) шипят быстрее. Для РФ-деплоев по Hard Rule #4 RF cloud-сервисы обязательны. Edge deployment — специализированная практика: hardware-aware модели + over-the-air апдейты + on-device мониторинг.
Типичные ошибки
Ловушки Kubernetes для ML: K8s-инфра для команды из 2 (operational cost > экономия); lock-in в одного cloud-провайдера managed ML без exit-плана; недооценка усилия edge deployment (huge hardware variety); GPU sharing не тестируют тщательно (один noisy tenant убивает всем training).