Difference between revisions of "KVM"

From PostgreSQL_wiki
Jump to: navigation, search
(Praktische toepassing virt-clone)
(Prepareer LVM)
Line 11: Line 11:
 
en maak vervolens de volume group aan.
 
en maak vervolens de volume group aan.
 
root@sauron:~# vgcreate dev-kvm /dev/sda6
 
root@sauron:~# vgcreate dev-kvm /dev/sda6
=== Prepareer een logical volume ===
 
Maak een (voorbeeld) logical partition aan op de gecreeerde volume group
 
root@sauron:~# lvcreate -L 16G -n support dev-kvm
 
Zie [[Kvm_test#kvm_volume | kvm test]] voor testuitvoer.
 
   
 
== Debian ==
 
== Debian ==

Revision as of 13:45, 28 June 2010

Installatie fysieke host

Installeer een kale machine met ruimte voor:

  • 8 Gb voor de fysieke machine, primary partition
  • 2 Gb swap, eerste logical partition op de extended partition
  • LVM op de tweede logical partition van de extended partition

Voor testuitvoer van het KVM gedeelte zie de uitvoer van tests na configuratiestappen in kvm test.

Prepareer LVM

Creeer het physical volume.

root@sauron:~# pvcreate /dev/sda6
 Physical volume "/dev/sda6" successfully created

en maak vervolens de volume group aan.

 root@sauron:~# vgcreate dev-kvm /dev/sda6

Debian

De installatie verloopt vanaf een USB-stick met een netinstall, installeer een kale machine van 4 Gb met een swap space van 2 Gb. De uitvoer van tests na configuratiestappen staat in kvm test . Voorbereiding virtuele machines:
Vervolgens als de machine draait:

udell-kvm:~# apt-get install kvm qemu lvm2 libvirt-bin virtinst bridge-utils virt-manager virt-clone virt-goodies virt-top

Ubuntu Server

De installatie verloopt via een .iso image van een CDRom, dus na de install is de volgende stap nodig voor zowel de host als de guests:

root@sauron:~# apt-get update && apt-get upgrade

De networkbridge voor KVM

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
  address 10.68.71.4
  netmask 255.255.255.224
  gateway 10.68.71.1
  bridge_ports eth0
  bridge_fd 9
  bridge_hello 2
  bridge_maxage 12
  bridge_stp off
udell-kvm:~# /etc/init.d/networking restart

Voeg toe aan /etc/modules

kvm
kvm-intel
udell-kvm:~# modprobe kvm kvm-intel

Inspectie dom0

Inspecteer de dom0 met:

root@sauron:~# virt-top

Zie kvm test.

Installatie domU

De installatie verloopt middels vncviewer. Maak contact met de fysieke machine als de installatie op de fysieke machine is gestart. Let op: de -Y optie dient om grafisch weer te geven en het poortnummer is de poort waarop vnc voor de te installeren machines luistert.

martin@udell:~$ ssh -Y 192.168.1.201
Enter passphrase for key '/home/martin/.ssh/id_dsa': 
martin@sauron:~$ xvncviewer localhost:5901

VNC Viewer Free Edition 4.1.1 for X - built Apr  9 2010 18:41:55
Copyright (C) 2002-2005 RealVNC Ltd.
See http://www.realvnc.com for information on VNC.

Er verschijnt een grafisch venster, dat dienst doet als console. De installatie gaat hiervandaan verder.

Weeggooien domU

Een domU verdwijnt met het commando:

root@sauron:~# virsh undefine <domU>

Installatie Debian domU

De installatie van een virtuele machine verloopt op de Debian manier via een netinstall. virt-install haalt alle code, inclusief de netboot van de debian repository.

 udell-kvm:~# virt-install --connect qemu:///system -n kvm02 -r 128 --vcpus=2 --disk path=/dev/dev-kvm/kvm-01 \
              -l http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386 os-type linux \
              --os-variant debianlenny --accelerate --network=bridge:br0 --hvm --vnc --force --debug

Installatie Ubuntu-server domU

De installatie van een virtuele Ubuntu-server domU verloopt middels een iso-image.

 root@sauron:~# virt-install --connect qemu:///system -n test01 -r 128 --vcpus=2 --disk path=/dev/dev-kvm/support \
                -c /var/lib/ubuntu-server-10.4.20100612.iso os-type linux --os-variant ubuntulucid --accelerate \
                --network=bridge:br0 --hvm --vnc --force --debug

Het nadeel van deze methode is dat het noodzakelijk is om onmiddelijk nadat de host is opgebracht een uprade uit te voeren.

root@sauron:~# apt-get update && apt-get upgrade

console virtuele machine

Een console vanaf de dom0 op een virtuele machine vereist op elke host configuratie instellingen en een eenmalig herstart of start van de geconfigureerde console.
Maak in de virtuele machine het bestand /etc/init/ttyS0.conf aan en voorzie het van de volgende inhoud:

# ttyS0 - getty
#
# This service maintains a getty on ttyS0 from the point the system is
# started until it is shut down again.

start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]

respawn
exec /sbin/getty -L 115200 ttyS0 xterm

Herstart de virtuele machine, of geef het volgende commando:

root@sauron:~# start ttyS0

Verbind daarna vanf de dom0 met:

root@sauron:~# virsh console <virtuele machine>

Geef nog een <enter> voor een login prompt als de virtuele console zonder login verschijnt.
Documentatie van Ubuntu: https://help.ubuntu.com/community/KVM/Access
Zie ook kvm test.

Cloneren domU

Het cloneren van een machine is op zich een eenvoudig proces, maar er is een voozorgsmaatregel noodzakelijk. Zet een hekje in het bestand /etc/udev/rules.d/70-persistent-net.rules voor de volgende regel:

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:16:36:5e:11:af", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

Let op, bij een reboot van de clone machine zet udev de regel er doorleuk weer achteraan. Start het cloneren met de opdracht:

root@sauron:~# virt-clone -o clone -n server-5 -m 52:54:00:54:1c:b4 --auto-clone -f /dev/dev-kvm/server-5 

Via vncviewer is het ip adres te achterhalen en is de login op dat adres mogelijk.

Praktische toepassing virt-clone

  • Maak voor LVM eerst het volume aan
  • Specificeer het volume bij het clone commando
  • Gebruik de --force optie bij herhaald genereren
  • Denk erom de gewraakte netwerk regel uit de udev configuratie te halen na elke boot van de cloneer machine

Terug naar: Webhuis bouwstenen