Ü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. adım: Sunucu türünü ve uzantıları kontrol edin
- Linux: /dev/kvm eksik veya erişilemiyor
- Windows: Hyper-V kurulmuyor
- Windows: WSL 2 hatası 0x80370102
- Windows'ta hipervizör çakışmaları
- Windows Server'da Docker Desktop
- Android emülatörleri sanallaştırmanın kapalı olduğunu bildiriyor
- İç içe konuklar yavaş
- 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
grep -Ec '(vmx|svm)' /proc/cpuinfo
ls -l /dev/kvm
lsmod | grep kvm0'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
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:
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:
sudo usermod -aG kvm $USERWindows: 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:
bcdedit /enum | findstr -i hypervisorlaunchtype
bcdedit /set hypervisorlaunchtype AutoWindows: 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:
- Sunucunun bir VDS olduğundan ve uzantıların göründüğünden emin olun (1. adım).
- Virtual Machine Platform bileşeninin kurulu olduğundan emin olun, ardından yeniden başlatın.
hypervisorlaunchtypedeğerini yukarıdaki gibi kontrol edipAutoyapın.- 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
- Genel bakışa dönün: VDS ve iç içe sanallaştırma.
- Konuk oluşturun: libvirt ile KVM veya Windows VDS'te Hyper-V.
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.