ESXİ Sunucuda Sanal Makineye GPU Passthrough Nasıl Yapılır?

AI Icon Bu İçeriği Yapay Zekâ (AI) ile Özetleyin:

VMware Esxi sanallaştırma alanında en yüksek performans sunan yapılarından biridir. Fakat yapay zeka, render, video işleme gibi ağır yüklerde yalnızda CPU ve ram gücü yeterli olmaz. Bu tür yoğun işlemlerde sanal makinenin GPU’ya doğrudan erişmesi gerekir.

GPU Passthrough Nedir?

GPU Passthrough tam olarak bu ihtiyaca cevap verir. Fiziksel bir ekran kartının sanallaştırmayı atlayarak tek bir sanal makineye doğrudan bağlanmasını sağlar. VMware’de bu yöntem DirectPath I/O olarak adlandırılır. GPU, sanal makine tarafından paylaşımlı bir kaynak gibi değil, gerçek donanım gibi kullanılır.

BIOS Üzerinde IOMMU Açma

IOMMU, fiziksel PCI cihazlarının sanal makineler tarafından izole şekilde kullanılmasını sağlar. Sistemi başlatmadan önce BIOS ayarlarına girerek donanım tabanlı sanallaştırma desteğini aktif etmemiz gerekir.

  • Intel İşlemciler için VT-d seçeneğini Enabled konumuna getirelim.
  • AMD İşlemciler için IOMMU seçeneğini Enabled yapalım.

ESXi Üzerinde GPU’yu Passthrough Moduna Alma

GPU passthrough için önce ESXİ üzerinde GPU’nun hosta ait bir donanım olmaktan çıkarılması gerekir. Bu işlem vSphere Client üzerinden Host → Configure → Hardware → PCI Devices yoluyla GPU için Toggle passthrough seçilerek yapılır.

Yeniden başlatma sonra GPU sanal makinelere atanabilir hale gelir.

Sanal makine kapalıyken donanım ayarlarına girelim ve PCI Device olarak GPU seçelim. Bu işlem tamamlandığında GPU fiziksel olarak o sanal makineye bağlanmış olur.

Windows VM GPU

Windows sanal makine açıldığında GPU otomatik olarak kullanılmaz. İşletim sistemi, GPU’yu ancak üretici sürücüsü yüklendikten sonra aktif eder. NVIDIA veya AMD’nin resmi sürücüsü kurulup sistem yeniden başlatıldığında GPU, Aygıt Yöneticisi altında fiziksel bir kart gibi görünür.

Linux VM GPU

Linux tarafında GPU’nun tanınıp tanınmadığı terminal üzerinden bu komut ile doğrulayabiliriz.

lspci | grep -i vga

NVIDIA GPU kullanılıyorsa sürücünün düzgün çalıştığı aşağıdaki komutla kontrol edilir.

nvidia-smi

Bu komut çıktı veriyorsa GPU aktif demektir.

NVIDIA Error 43 Sorunu

NVIDIA kartlar, sanal ortamda çalıştığını algıladığında sürücüyü bilinçli olarak devre dışı bırakır. Bu durum Error 43 olarak bilinir.

VM seviyesinde hypervisor bilgisini gizleyen bir parametre eklendiğinde bu kontrol devre dışı kalır.

hypervisor.cpuid.v0 = "FALSE"

Nested ESXi Ortamında GPU Passthrough Nedir?

Nested ESXİ test, eğitim ya da doğrulama durumalarında kullanılan ESXİ host üzerinde çalışan sanal bi ESXİ örneğidir.

İlk olarak fiziksel sunucuya en uygun sürüm olan ESXi 7.0 Update 3g kuralım. VMware’in resmi web sitesinden ISO dosyası indirildikten sonra bir USB kurulum medyası oluşturularak fiziksel sunucuya ESXi kurulumu tamamlayalım.

Nested ESXi Sanal Cihazının Dağıtımı

Fiziksel ESXi kurulduktan sonra, hazır Nested ESXi OVA dosyasıyla sanal bir ESXi oluşturalım. OVA dağıtımında CPU ve RAM, çalıştırılacak sanal makinelere göre planlanır.

GPU’yu Fiziksel ESXi Üzerinde Passthrough Moduna Alma

Fiziksel ESXi üzerinde GPU, PCI passthrough moduna alalım ve GPU’ya ait VendorId / DeviceId bilgilerini doğrulayalım.

VendorId:DeviceId = 8086:5690

Nested ESXi sanal makinesini kapatalım. Donanım ayarlarında hardware-assisted virtualization seçeneğini devre dışı bırakıp, sanal IOMMU etkinleştirelim.

Nested ESXi Sanal Makinesi Ayarlarını Düzenleme

Fiziksel host yeniden başlatıldıktan sonra nested ESXi sanal makinesinin donanım ayarlarını düzenleyelim. Nested ESXi kapalı durumdayken Edit Settings menüsüne girip aşağıdaki işlemleri yapalım.

  • Expose hardware-assisted virtualization to the guest OS seçeneğinin işareti kaldırılır
  • Virtual IOMMU özelliği etkinleştirilir
  • Yeni bir PCI Device eklenerek fiziksel GPU seçilir

Nested ESXi İçin VM Gelişmiş Parametreler

Nested ESXi ortamında GPU’nun düzgün tanınabilmesi için VM seviyesinde bazı gelişmiş parametrelerin tanımlanması gerekir.

pciPassthru.use64bitMMIO = "TRUE"
pciPassthru.64bitMMIOSizeGB = "16"
vhv.allowPassthru = "TRUE"
vhv.enable = "TRUE

AMD tabanlı sistemlerde ek olarak bu komutu kullanalım.

amd.iommu.supportsPcip = "TRUE"

Nested ESXi’i Başlatma ve Doğrulama

Tüm yapılandırmalar tamamlandıktan sonra Nested ESXi sanal makinesi başlatalım. ESXi Embedded Host Client arayüzüne bağlanılarak GPU’nun nested ortamda doğru şekilde tanınıp tanınmadığı kontrol edilmelidir.

Sık Sorulan Sorular

GPU Passthrough yaptıktan sonra ekran kartını başka bir sanal makinede kullanabilir miyim?

Passthrough yöntemiyle GPU, seçilen sanal makineye dedicated atanır. Bu işlem sırasında GPU, fiziksel host’un kontrolünden çıkar dolayısıyla aynı anda ne host ne de başka bir VM bu kartı kullanamaz.

NVIDIA “Code 43” hatasını neden alıyorum?

NVIDIA sürücüleri, bir sanal makine içerisinde çalıştıklarını algıladıklarında sürücüyü durdurabilir. VM konfigürasyonuna hypervisor.cpuid.v0 = "FALSE" ekleyerek sanallaştırma katmanını ekran kartından gizlemeniz gerekir.

Her anakart ve işlemci GPU Passthrough destekler mi?

İşlemcinizin ve anakartınızın Intel VT-d veya AMD IOMMU teknolojilerini desteklemesi ve bu özelliklerin BIOS üzerinden aktif edilmiş olması şarttır.

vGPU ile GPU Passthrough arasındaki fark nedir?

  • GPU Passthrough: Kartın tamamı tek bir VM’e verilir. En yüksek performansı sunar ve lisans gerektirmez.
  • vGPU: Bir fiziksel GPU parçalara bölünerek birden fazla VM’e paylaştırılır. NVIDIA Enterprise profilleri ve özel lisanslar gerektirir.
Önceki Makale

Proxmox VE Cluster Kurulumu

Yorum Yaz

Yorum Bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İndeks