İçeriğe geç

Ürün belgeleriSanallaştırma ve VDS

İç içe sanallaştırma sorunları: KVM, Hyper-V, WSL 2 ve emülatörler

VDS içinde başlamayan sanal makineleri ve emülatörleri düzeltin: eksik /dev/kvm, kurulmayan Hyper-V, WSL 0x80370102 hatası, çakışmalar ve yavaş konuklar.

  • Orta
  • 15 dk okuma
  • Güncellendi
Bu sayfada
  1. 1. adım: Sunucu türünü ve uzantıları kontrol edin
  2. Linux: /dev/kvm eksik veya erişilemiyor
  3. Windows: Hyper-V kurulmuyor
  4. Windows: WSL 2 hatası 0x80370102
  5. Windows'ta hipervizör çakışmaları
  6. Windows Server'da Docker Desktop
  7. Android emülatörleri sanallaştırmanın kapalı olduğunu bildiriyor
  8. İç içe konuklar yavaş
  9. Sonraki adımlar

İç içe sanallaştırma sunucunuza hipervizörlerin ihtiyaç duyduğu işlemci özelliklerini verir. Bir şey yine de başlamıyorsa mesaj genellikle eksik parçayı adlandırır. En yaygın nedeni bir dakikada eleyen 1. adımla başlayın.

1. adım: Sunucu türünü ve uzantıları kontrol edin

İç içe sanallaştırma VDS paketlerinin ve nested dedicated sunucuların bir parçasıdır. VPS paketleri bunu sunmaz; bu yüzden donanım hızlandırması gerektiren hipervizörler, WSL 2, Docker Desktop ve Android emülatörleri onlarda çalışamaz.

Linux

Bash
grep -Ec '(vmx|svm)' /proc/cpuinfo
ls -l /dev/kvm
lsmod | grep kvm

0'dan büyük bir sayı, bir /dev/kvm aygıtı ve yüklü kvm_intel veya kvm_amd modülleri KVM'nin kullanılabileceğini gösterir.

Windows

PowerShell
Get-ComputerInfo -Property HyperV*
systeminfo | findstr /i "Hyper-V"

Hyper-V kurulmadan önce Hyper-V gereksinimleri sanallaştırmayı donanım yazılımında etkin olarak bildirmelidir. Bir hipervizör çalıştığında Windows bir hipervizör algılandığını bildirir.

Bir VDS'te uzantılar eksikse sunucuyu bir kez yeniden başlatın. Hâlâ eksikse bu çıktıyla bir destek talebi açın.

Linux: /dev/kvm eksik veya erişilemiyor

kvm-ok KVM acceleration can NOT be used yazıyor. Yukarıdaki sayı 0 ise uzantılar görünmüyor (bkz. 1. adım). Sayı 0'dan büyükse işlemcinize uygun modülü yükleyin:

Bash
sudo modprobe kvm_intel
sudo modprobe kvm_amd

İşlemciye göre ikisinden yalnızca biri yüklenir. Ardından ls -l /dev/kvm ile kontrol edin.

Could not access KVM kernel module: Permission denied. Kullanıcınız /dev/kvm aygıtını kullanamıyor. Kullanıcıyı aygıtın sahibi olan gruba (genellikle kvm) ekleyin ve yeniden oturum açın:

Bash
sudo usermod -aG kvm $USER

Windows: Hyper-V kurulmuyor

Server Manager veya Install-WindowsFeature işlemcide gerekli sanallaştırma yeteneklerinin olmadığını bildiriyor. Hyper-V uzantıları göremiyor. 1. adımı kontrol edin; sunucu bir VDS ise destek talebi açın.

Hyper-V kurulu ama sanal makineler başlamıyor: "The virtual machine could not be started because the hypervisor is not running". Hipervizör Windows ile birlikte başlayacak şekilde ayarlı değil. Yönetici olarak açılmış bir istemde açılış ayarını kontrol edip düzeltin, ardından yeniden başlatın:

PowerShell
bcdedit /enum | findstr -i hypervisorlaunchtype
bcdedit /set hypervisorlaunchtype Auto

Windows: WSL 2 hatası 0x80370102

Error: 0x80370102 The virtual machine could not be started because a required feature is not installed. Microsoft'un bu hata için çözüm listesi sunucular için de geçerlidir:

  1. Sunucunun bir VDS olduğundan ve uzantıların göründüğünden emin olun (1. adım).
  2. Virtual Machine Platform bileşeninin kurulu olduğundan emin olun, ardından yeniden başlatın.
  3. hypervisorlaunchtype değerini yukarıdaki gibi kontrol edip Auto yapın.
  4. Eski VMware veya VirtualBox sürümleri gibi üçüncü taraf hipervizörleri güncelleyin veya kapatın.

Windows'ta hipervizör çakışmaları

Hyper-V, WSL 2 ve bazı emülatörler Windows hipervizörünü kullanır. Diğer hipervizörlerin eski sürümleri o etkinken çalışamaz ve bazı Android emülatörleri Hyper-V'li sistemler için ayrı yapılar sunar. Ya her şeyi Windows hipervizöründe tutun (güncel VMware ve VirtualBox sürümleri Hyper-V ile birlikte çalışmayı destekler) ya da Hyper-V tabanlı özellikleri kapatıp yeniden başlatın.

Windows Server'da Docker Desktop

Docker Desktop, Windows'un sunucu sürümlerinde desteklenmez. Bir Windows Server VDS'te Docker Engine'i WSL 2 içinde çalıştırın (Windows Server'da WSL 2); bir Windows masaüstü imajında Docker Desktop her zamanki gibi WSL 2 veya Hyper-V kullanır.

Android emülatörleri sanallaştırmanın kapalı olduğunu bildiriyor

Android emülatörleri donanım hızlandırmasına ihtiyaç duyar. Bir VPS'te bunu alamazlar. Bir VDS'te veya nested dedicated sunucuda 1. adımı ve emülatörün kendi gereksinimlerini kontrol edin; bkz. Android emülatör sorunlarını giderme.

İç içe konuklar yavaş

  • Konuklara sabit bellek verin ve gerektiğinden fazla vCPU vermeyin; asla VDS'te olandan fazla vermeyin.
  • Paravirtual aygıtlar kullanın: KVM ve Proxmox VE'de virtio diskler ve ağ kartları, Hyper-V'de Generation 2 sanal makineler.
  • Veritabanları gibi diski yoğun kullanan işleri iç içe konuklarda değil, VDS'in kendisinde tutun.
  • Tüm makineye ihtiyaç duyan üretim iş yükleri bir dedicated sunucuya aittir.

Sonraki adımlar

Sık sorulan sorular

VPS'im neden sanal makine çalıştırmıyor?

HyperDC'de işlemcinin sanallaştırma uzantılarını sisteminize yalnızca VDS paketleri ve nested dedicated sunucular aktarır. Apple Silicon macOS VPS dahil bir VPS'te kendi sanal makinelerini başlatan yazılımlar donanım hızlandırmasını kullanamaz.

Paketim VDS ama uzantılar görünmüyor. Ne yapmalıyım?

Sunucuyu bir kez yeniden başlatın, çünkü paket değişikliği yeniden başlatmadan sonra geçerli olur. Hâlâ yoksa bu rehberdeki kontrol komutlarının çıktısıyla bir destek talebi açın.

İç içe sanal makinem neden yavaş?

Her sanallaştırma katmanı, en çok disk ve ağ G/Ç'sinde olmak üzere ek yük getirir. Konuklara sabit bellek ve makul vCPU sayısı verin, paravirtual (virtio) aygıtlar kullanın ve ağır veritabanlarını iç içe konukların dışında tutun.

Windows VDS'te VirtualBox veya VMware Workstation çalıştırabilir miyim?

Hyper-V veya WSL 2 açıksa yalnızca Hyper-V ile birlikte çalışmayı destekleyen sürümleri. Aksi halde aynı anda tek bir hipervizör kullanın.

Şifre Oluştur

Lütfen onaylayın