OpenStack : Enabling Nested Virtualization

Pada lab kali ini, saya mau berbagi tentang pengalaman yang saya alami ketika menggunakan OpenStack.

Jadi ketika environment OpenStack saya sudah jadi, Performa instance yang berjalan sangat tidak memuaskan, salah satunya dari sisi performa disk read/write.

Berikut perbandingannya :

[email protected] :~$ dd if=/dev/zero of=test_file bs=64k count=1k conv=fdatasync
1024+0 records in
1024+0 records out
67108864 bytes (67 MB, 64 MiB) copied, 0,856948 s, 78,3 MB/s
[email protected] :~# dd if=/dev/zero of=test_file bs=64k count=1k conv=fdatasync
1024+0 records in
1024+0 records out
67108864 bytes (67 MB) copied, 0,0741331 s, 905 MB/s

Setelah mencari – cari, ternyata kendala yang dialami dikarenakan dari sisi node compute tidak mengaktifkan fitur Nested-Virtualization (KVM), sehingga apabila performa instance ingin ditingkatkan saya perlu mengaktifkan module Nested Virtualization pada masing masing node compute, untuk langkah peng-aktifannya berikut caranya :

Langkah 1 : Check Status KVM Nested Module

Untuk memastikan status fitur Nested-Virtualization pada tiap node, kalian dapat menjalankan perintah berikut :

cat /sys/module/kvm_intel/parameters/nested
N => Jika output adalah N maka statusnya disable
Y => Jika output adalah Y maka statusnya enable

Langkah 2 : Enable KVM Nested Module

Untuk mengaktifkan fitur Nested-Virtualization pada tiap node ( prosesor intel ), kalian dapat menjalankan perintah berikut :

vi /etc/modprobe.d/kvm-nested.conf

Lalu silakan diisikan dengan konfigurasi sebagai berikut :

options kvm-intel nested=1
options kvm-intel enable_shadow_vmcs=1
options kvm-intel enable_apicv=1
options kvm-intel ept=1

Langkah 3 : Remove Previsious KVM Modul

Selanjutnya silakan menghapus module kvm_intel yang telah ada dengan menjalankan perintah berikut :

modprobe -r kvm_intel

Langkah 4 : Add New KVM Modul

Apabila module kvm_intel telah dihapus, silakan menambahkan kembali module kvm_intel yang telah dilakukan konfigurasi sebelumnya menggunakan perintah berikut :

modprobe -a kvm_intel

Langkah 5 : Apply Nested Virtualization to all Nova Compute

Selanjutnya kita perlu melakukan konfigurasi dari sisi service Nova pada tiap compute ( /etc/nova/nova.conf ), berikut adalah konfigurasi yang perlu disesuaikan :

...
virt_type=kvm
cpu_mode=host-passthrough
....

Setelah perubahan dilakukan, lakukan reboot pada tiap – tiap compute node.

reboot

Langkah 6 : Check Instance CPU Info

Langkah selanjutnya adalah, memastikan jika konfigurasi telah diterapkan pada instance yang berada pada layanan OpenStack, berikut adalah langkahnya :

[email protected]: ~# cat /proc/cpuinfo |grep model
model name    : Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz
[email protected]: ~# dd if=/dev/zero of=test_file bs=64k count=1k conv=fdatasync
1024+0 records in
1024+0 records out
67108864 bytes (67 MB, 64 MiB) copied, 0.0966199 s, 695 MB/s

Selesai !

Jika ada yang kurang dimengerti, silakan bertanya dikolom komentar atau melalui email [email protected] .

Leave a Reply

Your email address will not be published. Required fields are marked *