KVM kasutamine Debian Lenniga
Sisukord
Sissejuhatus
KVM (Kernel-based Virual Machine, ingl. k. tuumapõhine virtuaalmasin) on Linuxi kernelis asuv virtualiseerimise tugi, mis toetab nn native virtualization'it st töötab AMD-V ja Intel-VT protsessoritega.
KVM tekitab /dev/kvm seadme, mida kasutab modifitseeritud kasutajaprogramm (ingl. k. user-space program) QEMU selleks, et korraldada virtuaalsetele arvutitele aadressruumi, I/O, video jms ressursside kasutamist.
Seda operatsioonisüsteemi eksemplari, kus asub /dev/kvm seade nimetatakse host'iks (ingl. k. majutaja) ja virtuaalseid arvuteid nimetakase guest'ideks (ingl. k. külaline).
KVMi iseloomustavad sellised asjaolud
- nn kernel.org tuumas on KVM tugi
- praktiliselt saab seda tehnoloogiat 2008 aasta suvel kasutada ainult AMD-V ja Intel-VT protsessoritega arvutites
- guest operatsioonisüsteemina saab kasutada suurt hulka erinevaid operatsioonisüsteemi, muu hulgas Linux, OpenBSD, Windows
KVM arendamist korraldab Avi Kivity.
KVM hostis ei tööta seoses guestide pidamisega mingit deemonit. Guesti kõvakettale vastab tavaliselt üks fail hosti failisüsteemis ja guesti käivitamiseks tuleb käivitada sobivate argumentidega programm kvm.
KVM hosti ettevalmistamine
Kuigi hostiks kasutatav riistvara võib iseenesest sisaldada Intel-VT või AMD-V tehnoloogia tuge peab veenduma, et see on ka kasutuse (nt sisselülitatud arvuti BIOS'est). Kui käsk väljastab midagi, ju siis on
# egrep '^flags.*(vmx|svm)' /proc/cpuinfo
Debiani paketihaldusest tuleb paigaldada kvm pakett öeldes
# apt-get install kvm
Lisaks on abiks sellised utiliidid bridge-utils ja kpartx, nende paigaldamiseks tuleb öelda
# apt-get install bridge-utils kpartx
KVM guesti ettevalmistamine ja käivitamine
KVM guesti ettevalmistamiseks kõige tavalisemal juhtumil tuleb esmalt tekitada guesti kõvakettale vastav fail, mis asub host'i failisüsteemis, öeldes
# mkdir /data/kvm-guests # cd /data/kvm-guests # qemu-img create -f qcow test-arvuti.img 1G
Seejärel tuleb esimesel käivitamisel virtuaalne arvuti bootida mingi operatsioonisüsteemi paigaldusmeedialt, nt Debini puhul öelda
# kvm -hda test-arvuti.img -cdrom /home/debian-40r4a-i386-CD-1.iso -boot d -m 512
kus
- -hda argumendiks olev tõmmis moodustab guesti poolt vaadates nn hda ketta
- -cdrom argumendiks olev tõmmis moodustab guesti poolt vaadates cd seadme
- -boot d tähedab, et tuleb bootida cd seadmelt
- -m argument näitab guesti mälu hulka
Tulemusena avaneb värviline qemu laadne aken hostist ning sealt saab üsna tavapärasel moel guesti operatsioonisüsteemi ära paigaldada.
Edasistel guesti käivitamistel võib -cdro ja -boot d võtmed ära jätta
# kvm -hda test-arvuti.img -cdrom /home/debian-40r4a-i386-CD-1.iso -boot d -m 512
KVM guesti võrk
KVM guesti bootimine partitsioonil või LVM voluumil asuva juurfailisüsteemiga
Tavaliselt vastab guesti failisüsteemile üks fail, mis algab partitsioonitabeliga ja milles sisalduvad failisüsteemid ning swap erinevatel partitsioonidel, tõtt-öelda nii nagu vihjab ka -hda võti sellisele asjakorraldusele.
Kui guesti hostile kättesaadaval seadmel, näiteks
- plokkseadme partitsioon - /dev/sdb2
- LVM voluum - /dev/system/test_juurikas
- RAID seade - /dev/md4
asub mõne operatsioonisüsteemi eksemplari juurfailisüsteem, siis selle saab kvm abil üles bootida öeldes
#