Virtualization With KVM
Virtualization With KVM
04
- on 16.27 - No comments
I.PENJELASAN
II.Langkah
1.Periksa apakah CPU-mu mendukung untuk melakukan Virtulization(Virtualisasi) .Untuk
melihat apakah CPU anda mendukung untuk membuat Virtualisasi, ketik perintah :
2.Dan anda juga dapat melihat apakah CPU anda mendukung untuk membuat KVM.Tapi anda
sebelumnya menginstal CPU Checker.Dengan perintah :
kvm-ok
Perintah di atas berfungsi untuk menunjukan apakah KVM dapat di jalankan .Apabila ada
pemberitahuan seperti ini
INFO : /dev/kvm
KVM acceleration can be used
1.Paket libvirt-bin menyediakan libvirtd yang Anda butuhkan untuk mengelola qemu dan
KVM yang menggunakan libvirt .
2.Paket qemu-kvm digunakan untuk backend.
3.Paket ubuntu-vm-bulder adalah alat untuk membangun mesin virtual .
4.Paket bridge-utils menyediakan jembatan/penghubung antara jaringan anda ke mesin
virtual .
4.Untuk memastikan apakah username-mu di tambahkan ke group libvirtd dan kvm .Ketik
perintah :
adduser `id -un` libvirtd
adduser `id -un` kvm
ls -la /var/run/libvirt/libvirt-sock
virt-manager
NB : Apabila pada tahap ke 5(terdapat tombol Finish) atau sebelum kita membuat Virtual
Machine.Terdapat notifikasi seperti ini.
Tidak usah bingung , kita cukup buka Terminal dan mengetikan perintah seperti ini .
Dalam dunia virtulisasi komputer (physical computer) disebut sebagai host sementara semua
virtual machine akan disebut sebagai guest. Virtualbox membantu saya untuk melakukan
beberapa hal seperti misalnya :
mengakses aplikasi yang hanya tersedia di Windows tanpa harus punya komputer/laptop
dengan OS Windows.
mencoba varian distro Linux baru tanpa perlu melakukan instal ulang atau dual boot.
Bayangkan bila saya tidak punya VM, berapa banyak komputer (komputer dalam arti fisik
sebenarnya) yang harus saya miliki untuk melakukan eksperimen-eksperimen tadi. Dengan
menggunakan VM, saya jadi bisa melakukan testing yang memerlukan beberapa komputer
sekaligus. Selama komputer saya punya kapasitas memori dan kapasitas harddisk yang cukup,
saya bisa membuat banyak VM & menjalankannya sekaligus.
Virtualbox
VMware
KVM
Xen Hypervisor
Oracle VM
Proxmox
Full Virtualization, yang termasuk dalam kategori ini adalah Virtualbox, KVM. Full
Virtualization maksudnya adalah komputer host akan melakukan emulasi perangkat keras
(hardware) yang digunakan oleh guest. Guest tidak tahu kalau mesin yang digunakannya
adalah virtual machine. Full virtualization ini adalah tipe virtualisasi yang paling
fleksibel. Kita tidak perlu menggunakan OS dengan kernel khusus. Kita bisa langsung
menginstal sistem operasi layaknya kita menginstal OS pada komputer fisik. Kelemahan
full virtualization adalah guest tidak bisa mendapat kecepatan akses penuh saat
mengakses hardware (misalnya menulis/membaca data dari dalam harddisk atau bertukar
data lewat network interface). Lambatnya akses Input/Output ini akibat dari emulasi
hardware yang dilakukan oleh host.
Paravirtualization (PV), yang termasuk dalam kategori ini contohnya adalah Xen
Hypervisor. PV mengatasi kendala yang dimiliki oleh full virtualisation. OS yang
dipasang pada VM adalah versi termodifikasi dari sistem operasi (operating system/OS)
aslinya. Misalnya, RedHat Linux menyediakan kernel-xen untuk PV guest. Guest VM
sadar kalau mesin yang dipakainya adalah virtual machine. Sistem ini memiliki
throughtput yang jauh lebih baik daripada full virtualization & boleh dibilang yang paling
baik di antara 3 tipe virtualisasi. Sayangnya kita terikat pada pemilihan OS. Guest hanya
bisa menggunakan OS yang memang sudah disiapkan untuk berjalan di atas
paravirtualized VM.
Para-virtualized driver : sistem ini adalah kombinasi dari kedua sistem sebelumnya. OS
yang dipasang pada guest adalah OS biasa (native OS). Hanya saja ada tambahan driver
khusus yang perlu dipasang di komputer guest. Meskipun Virtualbox termasuk dalam
kategori Full virtualization, Virtualbox bisa termasuk juga dalam kategori ini. Virtualbox
menyediakan Virtualbox Guest Addition. Virtualbox Guest Addition menyediakan
driver-driver khusus untuk perangkat seperti network interface, video card, dsb. Sistem
ini menawarkan fleksibilitas dalam pemilihan OS sekaligus menawarkan performa I/O
yang lebih baik daripada full virtualization.
Menginstal KVM
Tulisan ini akan jadi catatan pribadi saya tentang langkah-langkah menginstal KVM pada
CentOS Linux 6.5. KVM adalah teknologi virtualisasi yang terintegrasi dengan kernel Linux.
KVM pertama kali diintegrasikan ke dalam kernel linux sejak versi kernel 2.6.20.
Dalam percobaan ini saya menggunakan notebook Fujitsu S6140 dengan spesifikasi seperti
berikut ini :
3GB RAM
Harddisk 160GB
Untuk bisa menggunakan KVM, komputer host harus memiliki CPU dengan fitur hardware
virtualization extension. Pada CPU Intel fitur ini dikenal dengan nama vmx (Intel VT
Extention). Sementara pada CPU AMD, fitur tadi dikenal dengan nama svm (AMD-V
Extention).
Notebook Fujitsu yang saya gunakan sudah dilengkapi dengan vmx. Untuk memastikan saya bisa
menggunakan perintah berikut ini :
Berikut ini adalah langkah-langkah yang perlu dilakukan untuk menyiapkan KVM :
1. Hal pertama yang perlu saya lakukan adalah memasang beberapa paket berikut :
2. Selanjutnya saya perlu mengaktifkan servis libvirtd supaya otomatis aktif saat proses
booting. libvirtd adalah aplikasi manajemen virtualisasi.
1 root@centosdev02:~# chkconfig libvirtd on
2 root@centosdev02:~# service libvirtd start
3 Starting libvirtd daemon: [ OK ]
4 root@centosdev02:~# service libvirtd status
5 libvirtd (pid 5870) is running...
root@centosdev02:~#
6
3. Supaya VM dapat beruinteraksi dengan dunia luar, saya perlu menyiapkan network
bridge. Bridge akan menjembatani komunikasi antara VM dengan LAN. Semua
komunikasi data dari setiap VM akan melewati bridge (virtual switch) menuju physical
network interface yang dimiliki oleh host.
4. Dalam contoh ini, bridge akan bertindak sebagai virtual switch menghubungkan VM
dengan port Ethernet notebook saya.
5. Biasanya IP dipegang langsung oleh port Ethernet. Saat menggunakan bridge, IP tidak
lagi dialokasikan ke Ethernet tetapi dialokasikan ke bridge interface (pada contoh ini
bridge interface-nya adalah br0. Berikut adalah beberapa konfigurasi yang harus dibuat
untuk mengalokasikan IP ke bridge interface
1 root@centosdev02:~# vi /etc/sysconfig/network
2 NETWORKING=yes
HOSTNAME=centosdev02.gbt733.net
3 GATEWAY=192.168.10.2
4 GATEWAYDEV=br0
5 root@centosdev02:~#
6
7 root@centosdev02:~# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
8 TYPE=Ethernet
9 UUID=9d32baec-21ee-4157-a8d9-b85b5c231444
10 ONBOOT=yes
11 HWADDR=00:17:42:BD:FC:F8
12 BRIDGE=br0
root@centosdev02:~#
13
14 root@centosdev02:~# vi /etc/sysconfig/network-scripts/ifcfg-br0
15 DEVICE=br0
16 TYPE=Bridge
17 ONBOOT=yes
18 BOOTPROTO=none
IPADDR=192.168.10.40
19 PREFIX=24
20 GATEWAY=192.168.10.2
21 DNS1=8.8.8.8
22 STP=on
DELAY=0
23 root@centosdev02:~#
24
25
26
27
28
6. Pada contoh diatas bridge akan menggunakan IP 192.168.10.40. Interface br0 akan
menggunakan port Ethernet eth0 sebagai physical interface-nya.
7. Setelah konfigurasi network sudah selesai, saya tinggal merestart servis network :
8. Untuk melihat status bridge saya bisa gunakan perintah seperti berikut ini :
Sampai tahap ini saya sudah siap untuk membuat sebuah VM. Ada beberapa cara yang bisa
digunakan untuk membuat & mengatur VM dalam KVM. Pertama kita bisa menggunakan
perintah virsh, virsh adalah aplikasi manajemen VM berbasis teks. Kedua kita bisa
menggunakan aplikasi virt-manager. Aplikasi virt-manager berbasis GUI sehingga jauh lebih
mudah digunakan. Pada contoh ini saya akan menggunakan virt-manager. Supaya bisa
menggunakan virt-manager saya perlu mengakses desktop mesin centosdev02. Saya akses
desktop centosdev02 melalui VNC. Cara memasang VNC pada CentOS 6.5 pernah saya tulis
pada posting sebelumnya. Mari kita lanjutkan langkah-langkah membuat VM dengan virt-
manager.
1. Aplikasi virt-manager dapat diaktifkan melalui Terminal. Perlu hak akses root untuk
bisa menjalankan virt-manager.
Bila autentikasi root sukses, virt-manager akan membuka jendela baru dengan nama
Virtual Machine Manager.
2. Untuk membuat VM baru, saya tinggal klik kanan pada jendela virt-manager lalu klik
pilihan New.
3. Akan muncul jendela baru yang membimbing kita untuk mulai membuat VM. Yang
pertama perlu diset adalah nama VM yang akan kita buat :
Saya juga perlu menentukan media sumber instalasi, saya pilih untuk menggunakan ISO
Image.
4. Saya akan menggunakan Ubuntu 14.04 sebagai guest OS. Klik tombol Forward bila
sudah selesai pada langkah ini
5. Selanjutnya saya perlu menentukan ISO image mana yang akan digunakan sebagai
sumber instalasi. Saya juga diminta untuk menentukan tipe OS yang akan dipasang ada
VM ini.
6. Saat pertama kali mencoba saya mendapati error seperti ini :
Ini adalah masalah permission untuk membaca ISO image Ubuntu. virt-manager bisa
memperbaiki sendiri masalah permission ini. Saya tinggal klik Yes untuk mengijinkan
virt-manager mengatur ulang permission ISO Ubuntu tersebut.
7. Berikutnya saya akan diminta untuk menentukan jumlah memori yang akan dialokasikan
untuk VM Ubuntu. Pada contoh ini saya set memori 512MB & mengalokasikan hanya 1
CPU untuk Ubuntu.
8. Berikutnya saya perlu menentukan seberapa besar storage yang akan digunakan oleh VM
ini. Boleh dibilang kita akan membuat virtual harddisk bagi komputer guest. Saya pilih
untuk mengalokasikan ruang sebesar 8GB.
9. Pada contoh ini saya mendapati error seperti ini.
virt-manager mengatakan tidak cukup ruang sebesar 8GB pada komputer centosdev02
ini. Sebenarnya saya masih punya banyak ruang kosong pada harddisk Fujitsu. Error ini
karena virt-manager masih menggunakan lokasi default untuk menyimpan virtual
harddisk. Lokasi default ini ada di : /var/lib/libvirt/images. Dalam kasus saya,
partisi root notebook Fujitsu ini hanya sebesar 8GB sehingga tidak mungkin menyimpan
file berukuran besar.
10. Saya batalkan dulu menu wizard membuat VM ini untuk memperbaiki lokasi tempat
penyimpanan virtual harddisk. Pengaturan lokasi images ini dapat ditemukan pada
menu Connection Details Virtual Machine Manager seperti pada contoh di bawah ini :
Saya memilih untuk membiarkan setting lokasi seperti itu. Yang saya lakukan adalah
membuat soft link ke partisi lain yang punya ruang cukup besar (saya pilih untuk
menggunakan partisi /home):
Setelah mengganti lokasi tersebut, saya tinggal klik tombol Refresh. Virtual Machine
Manager sekarang sudah melihat ruang sebesar 131.97GB, cukup untuk meletakkan
virtual harddisk VM.
11. Saya bisa mengulang kembali (dari langkah #2 di atas) untuk membuat VM baru. Setelah
selesai menentukan ukuran & lokasi penyimpanan virtual harddisk, virt-manager akan
menampilkan pilihan pengaturan jaringan. Saya memilih untuk menggunakan br0.
Artinya Ubuntu VM ini akan berkomunikasi dengan dunia luar melalui interface br0
milik centosdev01 sebagai komputer host-nya.
Jendela tersebut adalah console dari Virtual Machine yang baru saya buat. Anggap saja
itu adalah layar monitor dari virtual machine tersebut. Virtual Machine baru ini langsung
aktif & saya bisa segera menginstal Ubuntu ke dalam VM ini.
Tentu dalam tulisan ini, saya tidak akan merinci langkah-langkah instalasi Ubuntunya.
13. Pada jendela VM tadi ada tombol i yang bisa diklik untuk menampilkan informasi
tentang virtual machine itu sendiri. Di sini saya bisa melihat beberapa pengaturan virtual
hardware yang dipakai oleh Ubuntu sebagai komputer guest.
Dari menu inilah saya bisa mengatur kembali hardware yang digunakan oleh guest VM
ini. Misalnya saya bisa memasang tambahan virtual harddisk atau memasangkan
tambahan network interface, dsb.
Kira-kira seperti itu catatan saya mencoba mempelajari virtualisasi dengan KVM. Ada banyak
topik lain yang masih saya pelajari berkaitan dengan KVM ini. Mungkin lain waktu saya akan
tuliskan di posting selanjutnya.