Saat awal setup VM menggunakan libvirt secara default akan membuat VM dengan konfigurasi cpu mode='host-model'
. Mode ini akan menyalin kemampuan dari CPU Host server
salah satunya seperti Virtualization features ke dalam VM sehingga Anda dapat menjalankan VM di dalam VM atau istilahnya Nested virtualization.
Pada kondisi tertentu Anda mungkin tidak menginginkan fitur tersebut aktif atau tidak ingin pelanggan Anda menjalankan Nested virtualization. Untuk itu Anda dapat menonaktifkan dengan menyesuaikan konfigurasi XML pada domain VM seperti berikut.
Using feature #
Untuk menonaktifkan virtualisasi di VM bisa dengan disable feature vmx
dan hypervisor
. Edit konfigurasi XML pada domain VM seperti contoh berikut.
<cpu mode='host-model'>
<feature policy='disable' name='vmx'/>
<feature policy='disable' name='hypervisor'/>
</cpu>
Simpan konfigurasi lalu shutdown
dan start
VM untuk menerapkan perubahan.
virsh shutdown domname
virsh start domname
Kemudian jalankan perintah berikut untuk memastikan CPU sudah tidak mendukung virtualisasi
egrep -c '(vmx|svm)' /proc/cpuinfo
Using custom CPU #
Anda bisa juga mengonfigurasi mode cpu ke custom
alih-alih menggunakan host-model
. Edit konfigurasi XML pada domain VM seperti contoh berikut.
<cpu mode='custom'>
<model fallback='allow'>kvm64</model>
</cpu>
Ada beberapa model lain yang dapat digunakan seperti:
- kvm64
- core2duo
- Penryn
- Opteron_G1
- Nehalem-IBRS
- Nehalem
- Conroe
Setiap model akan membawa nama model CPU yang berbeda-beda mulai dari yang versi lama sampai terbaru. Sehingga untuk pemilihan model yang tidak tepat akan membuat service, kernel, dan package yang terinstall di VM tidak berjalan.
Simpan konfigurasi lalu shutdown
dan start
VM untuk menerapkan perubahan.
virsh shutdown domname
virsh start domname
Kemudian jalankan perintah berikut untuk memastikan CPU sudah tidak mendukung virtualisasi
egrep -c '(vmx|svm)' /proc/cpuinfo