Sisällysluettelo |
KVM - Virtuaalikone Ubuntulle
KVM on virtuaalikone, joka asennetaan Linux-ytimen moduulina. KVM on varsin uutta teknologiaa; se on kuitenkin valittu Ubuntun ensisijaiseksi virtuaalikoneeksi Ubuntun pitkän tuen versiossa (Ubuntu LTS 8.04). Muutamia tärkeimpiä ohjeita ja dokumentteja, joita on käytetty tämän ohjeen teossa, ovat seuraavat.
KVM Ubuntu Server -versiossa - http://doc.ubuntu.com/ubuntu/serverguide/C/virtualization.html
KVM Bridge - https://wiki.edubuntu.org/KvmWithBridge
Muutama artikkeli KVM-virtuaalikoneesta.
KVM-virtuaalikoneessa on tuki läpinäkyvälle isäntäkoneen verkkokortin käytölle. Esimerkiksi tyhmä pääte (Thin Client, PXE) voidaan käynnistää virtuaalipalvelimelta. KVM-virtuaalikonetta voidaan hallita sekä komentoriviltä että graafisella edusohjelmalla. Tässä ohjeessa käytetyssä isäntäkoneessa on sekä laadukas äänikortti että DVB-C -digitv-kortti. Näitä ei voi käyttää asentamalla Ubuntu Studio tai Mythbuntu virtuaalikoneeksi, virtuaalikone ei käytä isäntäkoneen laitteita suoraan.
Muutama ruutukaappaus Ubuntu Server Edition JeOS -version käynnistymisestä KVM-virtuaalikoneessa.
KVM - Asennus
Tässä asennuksessa isäntäkoneen ja verkon asetukset ovat seuraavat.
Internet |
ADSL-modeemi |
Reititin 192.168.1.1 |
Ubuntu 192.168.1.101 |
Asus Eee/Ubuntu Eee 192.168.1.105 |
|
|
|
Jeos 192.168.1.110 |
|
|
|
|
Hardy LTSP5 192.168.1.120 |
Pääte, Asus Eee |
|
|
|
Ubuntu Minimal Server 192.168.1.130 |
KVM-ohjelmien asennus tehdään pääkäyttäjänä, mutta virtuaalikoneet voidaan asentaa tavallisena käyttäjänä.
Tässä ohjeessa on luotu hakemisto /media/vm, johon kaikilla käyttäjillä ovat kaikki oikeudet (chmod 777). Näin tunnuksella "asmok" voidaan luoda virtuaalikoneita kyseiseen hakemiston.
KVM:n käyttö vaatii isäntäkoneelta riittävästi muistia sekä prosessorin, joka tukee virtuaalikoneita. Tässä ohjeessa on käytetty Intel-prosessoria.
dmesg | grep CPU0 [--] CPU0: Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz stepping 02 CPU1: Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz stepping 02
Prosessorin voi testata seuraavalla tavalla; jos mitään ei tulostu, prosessori ei tue virtuaalikoneita.
egrep '(vmx|svm)' /proc/cpuinfo
Isäntäkoneeseen asennetaan virtuaalikoneiden käyttöä ja hallintaa varten seuraavat ohjelmat.
sudo apt-get install kvm libvirt-bin virt-viewer python-virtinst virt-manager ubuntu-vm-builder python-libvirt
Tämän jälkeen oma käyttäjätunnus lisätään ryhmään "libvirtd".
root@ubuntu:~# sudo adduser asmok libvirtd Lisätään käyttäjä `asmok' ryhmään `libvirtd' ... Lisätään käyttäjä asmok ryhmään libvirtd Valmis. root@ubuntu:~#
KVM - isäntäkoneen verkkokortin läpinäkyvä siltakäyttö
Poista kokonaan tai ainakin käytöstä isäntäkoneen dhcpd- ja dhcdbd-palvelut.
Jotta virtuaalikoneeseen ja sen palveluihin saadaan yhteys verkon muista koneista, isäntäkoneen verkkokorttia pitää muokata. Isäntäkoneen interfaces-tiedoston asetukset ovat tässä ohjeessa näin.
auto lo iface lo inet loopback auto br0 iface br0 inet static address 192.168.1.101 network 192.168.1.0 netmask 255.255.255.0 broadcast 192.168.1.255 gateway 192.168.1.1 bridge_ports eth0 bridge_fd 9 bridge_hello 2 bridge_maxage 12 bridge_stp off
Lisäksi tiedostoa /usr/share/ubuntu-vm-builder/templates/libvirt.tmpl muokataan näiden kahden rivin kohdalta:
<interface type='bridge'> |
<source network='br0'/> |
<domain type='%VM%'> <name>%LIBVIRTNAME%</name> <memory>%MEM%</memory> <vcpu>1</vcpu> <os> <type>hvm</type> <boot dev='hd'/> </os> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/bin/%VM%</emulator> <interface type='bridge'> <mac address='%MAC%'/> <source network='br0'/> </interface> <input type='mouse' bus='ps2'/> <graphics type='vnc' port='-1' listen='127.0.0.1'/> %loop% <disk type='file' device='disk'> <source file='%DESTINATION%/%img%.qcow2'/> <target dev='hd%curdisk%'/> </disk> %/loop% </devices> </domain>
Uudelleenkäynnistä isäntäkone tässä vaiheessa ja tarkista, että verkko toimii automaattisesti uusilla asetuksilla. Verkkoliitännät ovat tällaiset.
asmok@ubuntu:~$ ifconfig br0 Link encap:Ethernet HWaddr 00:19:d1:e1:38:2a inet addr:192.168.1.101 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::219:d1ff:fee1:382a/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2295 errors:0 dropped:0 overruns:0 frame:0 TX packets:1301 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2629047 (2.5 MB) TX bytes:187122 (182.7 KB) eth0 Link encap:Ethernet HWaddr 00:19:d1:e1:38:2a inet6 addr: fe80::219:d1ff:fee1:382a/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2297 errors:0 dropped:0 overruns:0 frame:0 TX packets:1304 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:2666375 (2.5 MB) TX bytes:198958 (194.2 KB) Base address:0x30c0 Memory:90300000-90320000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:6 errors:0 dropped:0 overruns:0 frame:0 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:300 (300.0 B) TX bytes:300 (300.0 B) vnet0 Link encap:Ethernet HWaddr 52:4b:51:9a:d3:5b inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0 inet6 addr: fe80::504b:51ff:fe9a:d35b/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:41 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:5482 (5.3 KB) asmok@ubuntu:~$
Isäntäkoneen yksityiskohtia.
KVM - Virtuaalikoneen asennus
KVM - Ubuntu Server Edition Jeos
Ensimmäisessä esimerkissä asennetaan ISO-levykuvasta "Ubuntu Server Edition Jeos".
virt-install -n jeos -r 512 -f jeos.img -s 12 -c /home/asmok/Bin/ISO/hardy-alternate-i386.iso --network bridge:br0 --accelerate --connect=qemu:///system --vnc --noautoconsole
Virt-install on asennusohjelma, jolla luodaan tiedosto, jossa virtuaalikone sijaitsee. Katso ohjelman man-sivulta tarkemmin eri vaihtoehdoista.
- -n jeos - Virtuaalikoneen nimi -r 512 - Virtuaalikoneelle varatun muistin määrä -f jeos.img - Virtuaalikoneen tiedoston nimi -s 12 - Virtuaalikoneen tiedoston koko, varsinaisen asennuksen yhteydessä tämä on samalla kovalevyn koko -c /home/asmok/Bin/ISO/hardy-alternate-i386.iso - Virtuaalikoneen asennusrompun sijainti --network bridge:br0 - Virtuaalikone käyttää läpinäkyvästi isäntäkoneen verkkokorttia --accelerate - Katso manuaalisivulta --connect=qemu:///system - Virtuaalikoneen tyyppi (qemu) --vnc - Katso manuaalisivulta --noautoconsole - Katso manuaalisivulta
Kun virtuaalikoneen levykuva on luotu, asennusta jatketaan kunkin Linuxin omalla asennusohjelmalla. Tästä enemmän seuraavassa esimerkissä.
KVM - Ubuntu Server Minimal
Toisessa esimerkissä asennettaan Ubuntu Server -versiosta minimaalinen asennus, ei valita yhtään palvelua asennuksen yhteydessä. Tämä vastaa täysin Jeos -versiota. Jeos onkin jäämässä kokonaan pois.
- No longer available as a CD-ROM ISO for download, but only as an option either: While installing from the Server Edition ISO (pressing F4 on the first screen will allow you to pick "Minimal installation", which is the package selection equivalent to JeOS).
http://doc.ubuntu.com/ubuntu/serverguide/C/jeos-and-vmbuilder.html
KVM - Ubuntu Server Minimal - Virtual Machine Manager
Käynnistä Virtual machine Manager (virt-manager) ja valitse uusi virtuaalikone.
Siirry tekemään valintoja siitä, millaisen virtuaalikoneen haluat.
KVM - Ubuntu Server Minimal - Linuxin oma asennusohjelma
Tämän jälkeen siirrytään käyttämään Ubuntu Server -version omaa asennusohjelmaa.
Kun käytetään isäntäkoneen verkkokorttia läpinäkyvästi (br0), niin jokaiselle virtuaalikoneelle voidaan antaa oma IP-osoitteensa samassa verkossa, missä isäntäkonekin on. Tässä esimerkissä siis 192.168.1.130.
Tässä esimerkissä luotiin tiedosto, jonka koko 12 Gb. Tätä tiedostoa käytetään virtuaalikoneen kovalevynä.
[
Asennuksen etenemistä voidaan seurata tarkemmin konsolista Alt-F4.
Ubuntu Server -versiosta ei valita mitään, siitä tehdään minimaalinen asennus. Siihen voidaan myöhemmin asentaa se, mitä tarvitaan.
Virtuaalikone käynnistyy ensimmäistä kertaa, siihen kirjaudutaan sisään, tarkistetaan sen toimivuus ping-testillä ja asennetaan OpenSSH-palvelin myöhempiä yhteydenottoja varten.
[
Virtuaalikoneen ominaisuuksia voidaan tarkastella omassa näkymässään.
KVM - Ubuntu 8.04.1 Alternate/LTSP5
KVM soveltuu myös LTSP5-päätejärjestelmälle. Asennus itsessään on tehty kuten edellä on kuvattu. Muutama ruutukaappaus toimivasta virtuaalikoneesta.