/ Çözümler

Kubernetes GPU Cluster

Kubernetes üzerinde GPU iş yükü orchestration. NVIDIA GPU Operator, Volcano scheduler ve konteyner tabanlı HPC iş yükü yönetimi.

Yapay zeka ve yüksek başarımlı hesaplama (HPC) iş yükleri büyüdükçe GPU kaynaklarını verimli, güvenli ve ölçeklenebilir biçimde yönetmek kritik hale gelir. Kubernetes, başlangıçta CPU tabanlı mikro servisler için tasarlanmış olsa da bugün GPU hızlandırmalı iş yüklerinin orkestre edilmesinde fiili standart konumuna gelmiştir. Mevasis, NVIDIA GPU Operator ve Volcano scheduler bileşenleriyle güçlendirilen Kubernetes GPU Cluster çözümüyle kurumunuzun hesaplama altyapısını bir üst seviyeye taşır.

Kubernetes GPU Cluster Nedir?

Kubernetes GPU Cluster, bir ya da daha fazla GPU donanımlı fiziksel ya da sanal sunucunun Kubernetes control plane altında yönetilen bir küme olarak çalıştırıldığı mimaridir. Bu mimaride her GPU kaynağı, Kubernetes tarafından bir “extended resource” olarak tanımlanır; iş yükleri Pod tanımlarında bu kaynakları talep eder ve scheduler uygun düğüme yerleştirir.

Geleneksel HPC ortamlarında SLURM gibi iş kuyruğu yöneticileri kullanılırken, Kubernetes tabanlı yaklaşım aşağıdaki avantajları beraberinde getirir:

  • Konteyner izolasyonu: Her iş yükü bağımsız ortamda çalışır; kütüphane çakışmaları ortadan kalkar.
  • Bildirimsel yapılandırma: Altyapı YAML manifestleri aracılığıyla kod olarak yönetilir.
  • Otomatik yeniden başlatma ve kurtarma: Başarısız Pod’lar otomatik olarak yeniden planlanır.
  • Ekosistem entegrasyonu: Helm chart’ları, GitOps iş akışları ve CI/CD pipeline’larıyla doğal entegrasyon sağlanır.

Temel Bileşenler

NVIDIA GPU Operator

NVIDIA GPU Operator, GPU düğümlerinde gerekli tüm yazılım bileşenlerini otomatik olarak yöneten bir Kubernetes operatörüdür. Manuel sürücü kurulumu, CUDA araç seti yapılandırması ve container runtime entegrasyonu gibi karmaşık adımları otomatize eder.

GPU Operator tarafından yönetilen bileşenler:

BileşenGörev
NVIDIA DriverGPU çekirdeği ile işletim sistemi arasındaki köprü
CUDA ToolkitParalel hesaplama kütüphaneleri
Container ToolkitDocker/containerd için GPU erişimi
Device PluginKubernetes’in GPU’ları kaynak olarak görmesini sağlar
DCGM ExporterGPU metriklerini Prometheus’a aktarır
MIG ManagerA100/H100 gibi kartlarda Multi-Instance GPU bölümleme

Volcano Scheduler

Standart Kubernetes scheduler, Batch ve HPC iş yükleri için tasarlanmamıştır. Volcano, bu boşluğu dolduran CNCF bünyesindeki özelleşmiş bir iş kuyruğu ve scheduler projesidir.

Volcano’nun sağladığı özellikler:

  • Gang scheduling: Dağıtık eğitim işlerinin (örn. PyTorch DDP) tüm Pod’ları aynı anda başlatılır; kısmi kaynak kullanımı engellenir.
  • Preemption ve priority: Yüksek öncelikli işler kaynak yetersizliğinde düşük öncelikli işleri askıya alabilir.
  • Queue yönetimi: Farklı ekip veya projelere kaynak kotaları atanır.
  • Backfill: Boş kapasiteyi küçük işlerle dolduran akıllı planlama.

Çok Kiracılı Mimari (Multi-Tenancy)

Kurumsal ortamlarda birden fazla ekip ya da departman aynı GPU cluster’ı kullanır. Kubernetes’in namespace ve RBAC mekanizmaları bu ihtiyacı karşılamak için temel araçları sağlar. Mevasis, bu yapıyı Volcano queue’ları ve ResourceQuota nesneleriyle güçlendirir:

apiVersion: scheduling.volcano.sh/v1beta1
kind: Queue
metadata:
  name: ml-team-queue
spec:
  weight: 60
  capability:
    nvidia.com/gpu: "8"
---
apiVersion: v1
kind: ResourceQuota
metadata:
  name: ml-team-quota
  namespace: ml-team
spec:
  hard:
    requests.nvidia.com/gpu: "8"
    limits.nvidia.com/gpu: "8"
    requests.memory: "256Gi"

Bu yapılandırmayla ML ekibi maksimum 8 GPU ve 256 GB bellek kullanabilir; diğer ekiplerin kaynakları korunur.

Tipik İş Yükü: Dağıtık Model Eğitimi

Kubernetes GPU Cluster üzerinde çalışan bir PyTorch dağıtık eğitim işi, Volcano’nun Job nesnesiyle tanımlanır:

apiVersion: batch.volcano.sh/v1alpha1
kind: Job
metadata:
  name: pytorch-ddp-training
spec:
  minAvailable: 4
  schedulerName: volcano
  queue: ml-team-queue
  tasks:
    - replicas: 4
      name: worker
      template:
        spec:
          containers:
            - name: pytorch
              image: nvcr.io/nvidia/pytorch:24.01-py3
              command:
                - torchrun
                - --nproc_per_node=2
                - train.py
              resources:
                requests:
                  nvidia.com/gpu: "2"
                  memory: "64Gi"
                limits:
                  nvidia.com/gpu: "2"
          restartPolicy: OnFailure

minAvailable: 4 parametresi gang scheduling’i etkinleştirir; dört Pod’un tamamı için kaynak sağlanmadan iş başlatılmaz. Bu sayede kısmi başlatmadan kaynaklanan kaynak israfı ve kilitlenme (deadlock) önlenir.

Gözlemlenebilirlik ve İzleme

Mevasis tarafından kurulan Kubernetes GPU Cluster, tam kapsamlı bir izleme altyapısıyla birlikte gelir:

  • DCGM Exporter: GPU kullanım oranı, bellek doluluk, sıcaklık, güç tüketimi ve NVLink bant genişliği metriklerini toplar.
  • kube-state-metrics: Pod, node ve kuyruk durumlarını Prometheus’a aktarır.
  • Grafana: GPU cluster durumunu gösteren hazır dashboard’lar (node başına GPU kullanımı, kuyruk beklemedeki işler, ekip bazında tüketim).
  • Alertmanager: GPU sıcaklık eşiği aşımı, düğüm NotReady durumu ve kaynak kotası ihlali için otomatik uyarılar.

Ağ Altyapısı: InfiniBand ve RoCE Entegrasyonu

Dağıtık derin öğrenme iş yükleri, düğümler arası düşük gecikmeli ve yüksek bantlı iletişim gerektirir. Mevasis, Kubernetes GPU Cluster’a entegre olacak ağ altyapısını da yapılandırır:

  • NVIDIA Mellanox InfiniBand: RDMA destekli, 100 Gb/s-400 Gb/s arası bant genişliği; kolektif operasyonlar için ideal.
  • RoCE (RDMA over Converged Ethernet): Mevcut Ethernet altyapısı üzerinde RDMA semantiği.
  • Multus CNI: Pod’lara hem standart Kubernetes ağı hem de InfiniBand/RoCE arayüzü atamasını sağlar.

Mevasis’in Kurulum Süreci

Mevasis, Kubernetes GPU Cluster kurulumunu dört aşamada gerçekleştirir:

  1. İhtiyaç analizi ve tasarım: GPU model seçimi, küme topolojisi, ağ mimarisi ve kiracı yapısının belirlenmesi.
  2. Donanım kurulumu ve ön hazırlık: Sunucuların fiziksel kurulumu, BIOS optimizasyonu, işletim sistemi kurulumu ve ağ yapılandırması.
  3. Kubernetes ve bileşen kurulumu: Küme kurulumu (kubeadm veya RKE2), GPU Operator, Volcano, izleme yığını ve depolama entegrasyonu (Rook-Ceph veya BeeGFS CSI).
  4. Doğrulama ve eğitim: Test iş yükleri ile performans doğrulaması, ekip eğitimi ve dokümantasyon teslimi.

Hangi İş Yüklerine Uygundur?

Kubernetes GPU Cluster aşağıdaki senaryolarda en yüksek değeri sunar:

  • Büyük dil modeli (LLM) ön eğitimi ve ince ayarı
  • Görüntü ve ses işleme pipeline’ları
  • Moleküler dinamik ve kuantum kimyası simülasyonları
  • Çok kullanıcılı Jupyter Hub ortamları (GPU paylaşımıyla)
  • MLOps pipeline’ları (Kubeflow, MLflow entegrasyonlu)

GPU altyapınızı Kubernetes ile modernize etmek ve ekiplerinizin hesaplama kaynaklarına adil, verimli biçimde erişmesini sağlamak istiyorsanız Mevasis uzmanlarıyla görüşün. İletişim sayfamızdan ihtiyaçlarınızı paylaşın; size özel bir çözüm tasarlayalım.

← Tüm Çözümler

Sıkça Sorulan Sorular

Bu çözüm ne zaman tercih edilmeli?

Kubernetes GPU Cluster, birden fazla ekibin aynı GPU altyapısını paylaştığı ortamlarda ve iş yüklerinin konteyner tabanlı olduğu durumlarda tercih edilmelidir. CI/CD pipeline entegrasyonu beklenen ve kaynak kullanımının merkezi olarak izlenmesi istenen senaryolar için idealdir.

Mevasis bu çözümü nasıl sağlıyor?

Mevasis, Kubernetes GPU Cluster kurulumunda donanım seçiminden yazılım konfigürasyonuna kadar uçtan uca hizmet sunar. NVIDIA GPU Operator entegrasyonu, Volcano scheduler kurulumu, ağ yapılandırması (InfiniBand veya RoCE), çok kiracılı namespace izolasyonu ve izleme altyapısı (Prometheus, Grafana) dahil olmak üzere tüm bileşenleri sahada konuşlandırır. Kurulum sonrasında yönetim, izleme ve güncelleme desteği de sağlanmaktadır.

Fiyatlandırma nasıl?

Kubernetes GPU Cluster fiyatlandırması; küme büyüklüğü, GPU model ve sayısı, ağ altyapısı tercihleri ve yönetilen hizmet kapsamına göre değişmektedir. Kurumunuza özel bir teklif almak için teklif formunu doldurabilirsiniz. Mevasis ekibi ihtiyaç analizini tamamladıktan sonra detaylı bir fiyat teklifi sunar.