호스트 Linux, 게스트 Windows를 갖춘 AMD Ryzen의 중첩된 가상화

호스트 Linux, 게스트 Windows를 갖춘 AMD Ryzen의 중첩된 가상화

QEMU KVM이 포함된 호스트 Ubuntu 18이 있습니다. 가상 머신 Windows 10(Hyper-V 지원)

Windows VM에서 Android Studio 에뮬레이터를 실행하고 싶습니다.

호스트에는 kvm_amd가 중첩되어 있습니다=1

VM 설정 #1:

<vcpu placement='static'>8</vcpu>

<cpu mode='host-model' check='partial'>
  <model fallback='allow'/>
  <feature policy='disable' name='hypervisor'/>
</cpu>

이 설정을 사용하면 Windows VM에는 다음이 포함됩니다.

  • 펌웨어 가상화: 예
  • VM 모니터 모드 확장: 아니요

VM 설정 #2:

<vcpu placement='static'>8</vcpu>
<cpu mode='host-passthrough' check='none'/>

이 설정을 사용하면 VM에는 다음이 포함됩니다.

  • 펌웨어 가상화: 예
  • VM 모니터 모드 확장: 예
  • 하지만 VM이 너무 느려서 작동할 수 없습니다.
  • 토폴로지를 기본값이 아닌 다른 것으로 변경하면 VM이 부팅 루프에 들어갑니다.

추가 정보가 필요한 경우 알려주시기 바랍니다. 당신이 나를 도울 수 ?

답변1

마침내 Hyper-V 및 Docker Desktop이 원활하게 실행되는 Windows 11 Professional 클라이언트에서 qemu-kvm을 사용할 수 있게 되었습니다.

이것은 내 설정이므로 다른 사람들에게 도움이 될 수도 있습니다. 광고 의도가 없습니다! 하드웨어:

Gigabyte X570 I AORUS PRO WIFI
BIOS-Version F37a (Virtualization enabled, Hyperthreading disabled)
AMD Ryzen 9 3950X 16-Core Processor
64Gb RAM

소프트웨어:

OS: Centos Stream 8
Kernel: 4.18.0-448.el8.x86_64
libvirt 8.0.0
QEMU 6.2.0

/etc/modprobe.d/kvm.conf

options kvm ignore_msrs=1
options kvm_amd nested=1

버쉬 설정:

<memory unit='KiB'>16777216</memory>
<currentMemory unit='KiB'>16777216</currentMemory>
<vcpu placement='static'>12</vcpu>
<resource>
  <partition>/machine</partition>
</resource>
<os>
  <type arch='x86_64' machine='pc-q35-rhel8.2.0'>hvm</type>
</os>
<features>
  <acpi/>
  <apic/>
  <hyperv mode='custom'>
    <relaxed state='on'/>
    <vapic state='on'/>
    <spinlocks state='on' retries='8191'/>
    <vpindex state='on'/>
    <runtime state='on'/>
    <synic state='on'/>
    <stimer state='on'/>
    <reset state='on'/>
    <vendor_id state='on' value='1234567890ab'/>
    <frequencies state='on'/>
    <reenlightenment state='on'/>
    <tlbflush state='on'/>
    <ipi state='on'/>
    <evmcs state='off'/>
  </hyperv>
  <kvm>
    <hidden state='on'/>
    <hint-dedicated state='on'/>
    <poll-control state='on'/> 
  </kvm>
  <vmport state='off'/>
  <smm state='on'/>
</features>
<cpu mode='host-passthrough' check='none' migratable='off'>
  <topology sockets='1' dies='1' cores='12' threads='1'/>
  <cache mode='passthrough'/>
  <feature policy='require' name='topoext'/>
  <feature policy='require' name='svm'/>
  <feature policy='require' name='x2apic'/>
  <feature policy='require' name='hypervisor'/>
  <feature policy='require' name='invtsc'/>
</cpu>
<clock offset='localtime'>
  <timer name='rtc' tickpolicy='catchup'/>
  <timer name='pit' tickpolicy='delay'/>
  <timer name='hpet' present='no'/>
  <timer name='hypervclock' present='yes'/>
  <timer name='tsc' present='yes' mode='native'/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<pm>
  <suspend-to-mem enabled='no'/>
  <suspend-to-disk enabled='no'/>
</pm>

SecureBoot 및 TPM 없이 Windows 11 Pro를 설치했습니다. Google 세부정보를 알려주세요.

Shift+F10 to launch cmd in windows setup regedit goto “HKEY_LOCAL_MACHINE\SYSTEM\Setup” 
right-click “New ⇒ Key ⇒ LabConfig” “New ⇒ DWORD (32-bit) ⇒ 
BypassTPMCheck ⇒ 1” same for “BypassRAMCheck” and “BypassSecureBootCheck”

관련 정보