Difference between revisions of "stoney cloud: Nested virtualization"

From stoney cloud
Jump to: navigation, search
[unchecked revision][unchecked revision]
(Abstract)
(Setup)
Line 20: Line 20:
 
<source lang='bash'>
 
<source lang='bash'>
 
cat > /etc/modprobe.d/nested-virtualization.conf << EOF
 
cat > /etc/modprobe.d/nested-virtualization.conf << EOF
options kvm-intel nested=1
+
options kvm-intel nested=Y enable_shadow_vmcs=Y
options kvm-amd nested=1
+
options kvm-amd nested=Y
 
EOF
 
EOF
 
</source>
 
</source>
  
 
[[Category:stoney cloud]][[Category:Installation]]
 
[[Category:stoney cloud]][[Category:Installation]]

Revision as of 15:04, 20 December 2013

Abstract

This document describes how to set up nested virtualization on a default installation (until it gets enabled by default).

Nested virtualization permits to start another hypervisor (in our case KVM) inside a virtual machine.

With the current version of Qemu/KVM you can expect a performance of about 25% of the host performance (concerning CPU and Memory access) in a guest within a guest (L2). In the future Qemu/KVM should support Intels Virtual EPT which should give 80% of the host performance for L2.

See:

For Intel CPUs we are going to enable Shadow VMCS which requires a sufficiently new CPU, otherwise it gets ignored.

Setup

Login as root, then execute the following and reboot (or rmmod/modprobe the corresponding modules if no VM is running)

cat > /etc/modprobe.d/nested-virtualization.conf << EOF
options kvm-intel nested=Y enable_shadow_vmcs=Y
options kvm-amd nested=Y
EOF