Installatie KVM

  KVM (Kernel-based Virtual Machine)

Kernel Based Virtual Machine

KVM (Kernel-based Virtual Machine) is een volledige virtualisatie oplossing voor linux op x86 hardware met de virtualisatie extensie (Intel VT or AMD-V). dit document beschrijft de installatie op een Ubuntu (jaunty, 9.04) machine. mijn doel is om het host systeem zo minimaal mogelijk op te zetten en de clients te gebruiken voor diverse doel einde.

Hardware

de CPU is het belangrijkste voor gebruik van KVM deze moet namelijk Intel VT or AMD-V ondersteunen. je kan controleren of je CPU 1 van de 2 ondersteund door:

egrep '(vmx|svm)' --color=always /proc/cpuinfo

Als je virtual machines meer als 2Gb geheugen moeten krijgen zal je een 64Bits installatie moeten doen, is mijn CPU geschikt voor 64Bit?

als je geen output krijgt kan je stoppen, je cpu ondersteund niet de virtualisatie extensie. de hardware die ik gebruik is de volgende.

* CPU
  AMD Athlon(tm) 64 X2 Dual Core Processor 4600+
* network:
  eth0                 1G
  eth1                 1G 
  wlan0                54G
* Memory 
  6GB
* Disk
  Maxtor 6V300F0 (SATA) 300GB
* Video 
  nVidia GeForce 7900 GT
* Sound 
  Creative SBLive! Player 5.1 

systeem is dus al redelijk gedateerd, maar dit had ik liggen. de video kaart en de Sound kaart zijn overkill maar zitten er nu eenmaal in.

Installatie van KVM

Omdat ik een zo minimale mogelijke installatie voor de host wil hebben heb ben ik helemaal opnieuwe beginnen met de Ubuntu installatie. tijdens het installatie proces heb ik 2 dingen aangevinkt. namelijk virtual server host en openssh server. gaande weg zal er nog wel wat software geinstalleerd worden. heb je een bestaand systeem dien je de volgende packages te installeren. de volgende packages heb ik al vast wel geïnstalleerd, python-vm-builder qemu

$ sudo apt-get install python-vm-builder qemu

op een bestaande machine installeer je dus ubuntu-virt-server ook nog.

$ sudo apt-get install ubuntu-virt-server python-vm-builder qemu

tijdens de installatie word je gevraagd om mail correct te configureren.

Om met je eigen user kvm te kunnen beheren moet je jouw eigen user account toevoegen aan de groep

sudo adduser $USER libvirtd

hierna een keer uitloggen en inloggen om de nieuwe groep actief te maken.

als alles geïnstalleerd is kunnen we kijken of KVM correct is werkt, run het volgende commando.

edwin@enterprise:~$ virsh -c qemu:///system list
Connecting to uri: qemu:///system
 Id Name                 State
----------------------------------

edwin@enterprise:~$

Als je een andere output krijgt bv:

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

Voordat je verder gaat is het verstandig dit op te lossen waarschijnlijk heb je geen schrijfrechten /var/run/libvirt/libvirt-sock is je user lid van de groep libvirtd ??

Het kvm commando zal je altijd als root moeten uitvoeren, kvm zonder opties zal een help messages printen van het commando. voor nu is het handig om te controleren of hardware acceleratie gesupport is. Je zou dit ook kunnen zien in dmesg waar in zou kunnen staan kvm: disabled at bios level.

Als het goed werkt moet je het volgende zien:

$ sudo kvm
QEMU PC emulator version 0.9.1 (kvm-84), Copyright (c) 2003-2008 Fabrice Bellard
usage: qemu [options] [disk_image]
...
$

als je dit ziet is hardware acceleration niet gesupport door je CPU of disabled at bios level:

$ sudo kvm
Could not initialize KVM, will disable KVM support
Ubuntu does not support running KVM without hardware acceleration. Sorry.
$