KVM: Instalasi

From OnnoWiki
Revision as of 17:42, 8 February 2015 by Onnowpurbo (talk | contribs)
Jump to navigation Jump to search

Pre-installation checklist

Periksa apakah CPU kita mendukung virtualisasi hardware

Untuk menjalankan KVM, kita memerlukan prosesor yang mendukung virtualisasi hardware. Intel dan AMD keduanya telah mengembangkan ekstensi untuk prosesor mereka, Intel VT-x (code name Vanderpool) dan AMD-V (code name Pacifica). Untuk melihat apakah prosesor yang kita gunakan mendukung salah satu dari ini, kita dapat memperhatikan output dari perintah ini:

egrep -c '(vmx|svm)' /proc/cpuinfo

Jika 0 berarti CPU kita tidak mendukung virtualisasi hardware.

Jika 1 atau lebih maka dia mendukung - tetapi kita masih harus memastikan bahwa virtualisasi diaktifkan di BIOS.

Secara default, jika kita boot ke kernel XEN tidak akan menampilkan svm atau vmx flag menggunakan perintah grep. Untuk melihat apakah diaktifkan atau tidak dari Xen, tulis:

cat /sys/hypervisor/properties/capabilities

Kita harus melihat HVM flag di output.

Alternatif lain untuk men-cek apakah CPU mendukung virtualisasi hardware, kita dapat menjalankan:

apt-get install cpu-checker
kvm-ok 

akan menghasilkan keluaran seperti ini:

INFO: /dev/kvm exists
KVM acceleration can be used

Jika kita melihat keluaran:

INFO: Your CPU does not support KVM extensions
KVM acceleration can NOT be used

Kita masih dapat menjalankan mesin virtual, akan tetapi akan sangat lambat jika tanpa KVM extension.

Gunakan 64 bit kernel (jika memungkinkan)

Menjalankan kernel 64 bit di sistem operasi host sangat di sarankan tapi tidak di haruskan.

  • Untuk melayani Virtual Machine (VM) dengan RAM lebih besar dari 2GB, kita harus menggunakan kernel 64 bit. Pada kernel 32 bit, kita akan dibatasi RAM 2GB untuk sebuah VM.
  • Sebuah sistem 64 bit dapat digunakan oleh guest 32 bit maupun 64 bit. Sebuah sistem 32 bit hanya dapat digunakan untuk guest 32 bit saja.

To see if your processor is 64-bit, you can run this command:

egrep -c ' lm ' /proc/cpuinfo

If 0 is printed, it means that your CPU is not 64-bit.

If 1 or higher, it is. Note: lm stands for Long Mode which equates to a 64-bit CPU.

Now see if your running kernel is 64-bit, just issue the following command:

uname -m

x86_64 indicates a running 64-bit kernel. If you use see i386, i486, i586 or i686, you're running a 32-bit kernel.

Note: x86_64 is synonymous with amd64.

Installation of KVM

Install Necessary Packages

For the following setup, we will assume that you are deploying KVM on a server, and therefore do not have any X server on the machine.

You need to install a few packages first:

Lucid (10.04) or later

$ sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils

Karmic (9.10) or earlier

$ sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utils
   libvirt-bin provides libvirtd which you need to administer qemu and kvm instances using libvirt
  • qemu-kvm (kvm in Karmic and earlier) is the backend
  • ubuntu-vm-builder powerful command line tool for building virtual machines
  • bridge-utils provides a bridge from your network to the virtual machines

You might also want to install virt-viewer, for viewing instances.

Add Users to Groups

Karmic (9.10) and later

You need to ensure that your username is added to the group libvirtd:

$ sudo adduser `id -un` libvirtd
Adding user '<username>' to group 'libvirtd' ...

After this, you need to relogin so that your user becomes an effective member of the libvirtd group. The members of this group can run virtual machines. (You can also 'newgrp kvm' in a terminal, but this will affect only that terminal.)

Releases prior to Karmic (9.10)

You need to ensure that your username is added to the groups: kvm and libvirtd.

To check:

$ groups

adm dialout cdrom floppy audio dip video plugdev fuse lpadmin admin sambashare kvm libvirtd

To add your <username> to the groups:

$ sudo adduser `id -un` kvm
Adding user '<username>' to group 'kvm' ...
$ sudo adduser `id -un` libvirtd
Adding user '<username>' to group 'libvirtd' ...

After the installation, you need to relogin so that your user becomes an effective member of kvm and libvirtd user groups. The members of this group can run virtual machines.

Verify Installation

You can test if your install has been successful with the following command:

$ virsh -c qemu:///system list
 Id Name                 State
----------------------------------

$

If on the other hand you get something like this:

$ virsh -c qemu:///system list
libvir: Remote error : Permission denied
error: failed to connect to the hypervisor
$

Something is wrong (e.g. you did not relogin) and you probably want to fix this before you move on. The critical point here is whether or not you have write access to /var/run/libvirt/libvirt-sock.

The sock file should have permissions similar to:

$ sudo ls -la /var/run/libvirt/libvirt-sock
srwxrwx--- 1 root libvirtd 0 2010-08-24 14:54 /var/run/libvirt/libvirt-sock

Also, /dev/kvm needs to be in the right group. If you see:

 $ ls -l /dev/kvm
crw-rw----+ 1 root root 10, 232 Jul  8 22:04 /dev/kvm

You might experience problems when creating a virtual machine. Change the device's group to kvm/libvirtd instead:

sudo chown root:libvirtd /dev/kvm

Now you need to either relogin or restart the kernel modules:

rmmod kvm
modprobe -a kvm

Optional: Install virt-manager (graphical user interface)

If you are working on a desktop computer you might want to install a GUI tool to manage virtual machines.

$ sudo apt-get install virt-manager

Virtual Machine Manager will appear in Applications -> System Tools menu. First create a new connection to local QEMU instance from File -> Add Connection menu. Localhost (QEMU) or QEMU/KVM should appear in the virtual machine list. Note: there already exist Localhost (QEMU Usermode) connection but this does not work at least on Ubuntu 10.04.

Create a new virtual machine by pressing the top left Create a new virtual machine toolbar button.

Referensi