« Tüm yayınlar

KubeSwift: Kubernetes Üzerinde Cloud Hypervisor ile VM Orkestrasyonu

KubeSwift, sanal makineleri Kubernetes özel kaynaklarıyla tanımlayıp Cloud Hypervisor üzerinde çalıştırır; GPU geçişi, canlı taşıma ve OCI imaj desteği sağlar.

KubeSwift, sanal makineleri doğrudan Kubernetes iş yükleri gibi yöneten bir proje. Bir VM, özel bir kaynak (CRD) olarak tanımlanıyor; controller'lar bunu bir pod'a dönüştürüyor ve pod içindeki swiftletd bileşeni hipervizörü başlatıyor. Çoğu senaryoda Cloud Hypervisor kullanılırken, HGX SXM gibi çok GPU'lu NVSwitch topolojilerinde CUDA'nın gerektirdiği tam PCIe hiyerarşisi Cloud Hypervisor'da henüz desteklenmediği için geçici olarak QEMU'ya başvuruluyor.

Proje; disk veya kernel tabanlı önyükleme (mikroVM dahil), VFIO tabanlı tam GPU passthrough (yerel SwiftGPU modeli veya Kubernetes DRA ile), Multus/SR-IOV/OVN destekli ağ yapılandırması, guest portlarını Kubernetes Service olarak dışa açma, disk klonlama ve anlık görüntü (snapshot) alma, OCI registry üzerinden imaj ve tam durum göçü, mTLS destekli canlı VM taşıma ve SwiftGuestPool ile ReplicaSet benzeri filo yönetimi gibi geniş bir özellik seti sunuyor. Toplam 13 CRD ile API tanımlanıyor ve swiftctl CLI'si günlük operasyonlar için sağlanıyor.

Proje henüz 1.0 öncesi aşamada; v1alpha1 API sürümler arasında değişebiliyor. Çalışma ortamı olarak /dev/kvm destekli x86_64 Linux node'ları gerekiyor ve kod tabanı AGPL-3.0 lisansı altında yayımlanıyor. Bulut-native altyapılarda VM ve container iş yüklerini tek bir kontrol düzleminde birleştirmek isteyen mühendisler için önemli bir referans niteliğinde.