KVM

From ICO wiki
Jump to navigationJump to search
Alvar Teearu AK31 valmib järgmise nädala jooksul
Arvustab Margus Nairis AK31

Virtualiseerimine ja KVM

Virtualiseerimine

Virtualiseerimine on märksõna, mida kuuleb viimasel aja järjest rohkem, mis iganes tänapäevase serverpargi uuendamisel ei saada mööda kaalutlemata võimalust virtualiseerida. Virtualiseerine annab meile võimaluse kasutada samaaegselt töötavaid operatsiooni süsteeme, mis jooksevad ühe raudvara peal, sellega saavutame riistvaralise kokkuhoiu, parema süsteemide hallatavuse ja lihtsama testkeskonna tekitamise võimaluse.
Virtualiseerimise loogika on, et riistavaralise kihi ja operatsioonisüsteemi kihi vahele tekitatakse kiht, mis võimaldab jagada sama riistvara erinevatele operatsioonisüsteemidele. Peamised lahendused on:

  • Emuleerimine- vahekiht tõlgib virtuaalse riistvara korraldused füüsilisele. Näiteks WINE, Bochs
  • OS tasemele virtualiseerimine- OS kernelis töötavad isoleeritult erinevatel user-space instantsidel. Näiteks OpenVZ
  • Bare-metal virtualiseerimine- Tekitatakse õhuke vahekiht riistvara ja külalisOS-de vahele. Näiteks VMware ESX, XEN, MS Hyper V
  • Hostitud virtualiseerimine- Üks host OS võimaldab enda kõrval töötada mitmel külalis OS-l, tekitab enda kõrvale vahekihi, kuhu peale siis paigutuvad virtuaalsed operatsiooni süsteemid. Näiteks SUN VirtualBox, MS Virtual PC/Server ja ka KVM.>

Virtualiseerimisega saavutame lihtsamalt olukorra, kus kasutame kogu riistavaralist võimsust.

KVM

KVM(Kernel-based virtual machine)on vabavaraline virtualiseerimise lahendus Linuxile x86 riistvarale ja sisaldab endas ka virutaliseerimise laiendusi Intel VT ja AMD-V. Lisaks leiab sealt ka laetavad kernel moodulid(kvm.ko), mis tagab virtualiseerimise infrastruktuuri lahendid ja moodulid erinevatele protsessori tüüpidele(kvm-intel.ko ja kvm-amd.ko).
Kasutades KVM saab samal füüsilsel masinal jooksutada muutmata kujul nii Linuxi kui ka Windowsi masinaid. Igale virtuaalmasinale on eraldatud virtuaalne riistvara, kõvaketas, võrgukaart, graafikakaart jne.
Alates Linuxi versioonist 2.6.20 on KVM lisatud from-the-box.

KVM seadistamine Ubuntu OS-le

Antud KVM installatsiooni juhend toimib kindlasti Ubuntu versioonidele Lucid (10.04)- Natty (11.04), võimalik, et uuematele versioonide puhul tuleb sisse viia muutusi. Enne installatsiooniga alustamist tuleks veenduda, et kasutatava arvuti protsessor võimaldab virtualiseerimist, selleks on sobilik käsk:

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

0- protsessor ei toeta virtualiseerimist
1- protsessor toetab, võimalik et tuleb ka BIOS virtualiseerimine lubada

Võimalusel tuleks kasutada host masina peal 64bit operatsiooni süsteemi, 64bit versioon võimaldab guest masinatel kasutada rohkem kui 2GB RAMi ja jooksutab enda peal nii 32bit kui 64bit guest masinaid.

Installatsioon

Installatsiooni tuleks alustada vajalike pakettide instaleerimisega:

  • libvirt-bin: tagab libvirtd, mis lubab administreerida qemu ja kvm-i kasutades libvirt-i
  • qemu-kvm
  • ubuntu-vm-builder: käsurea tööriist ehitamaks virtuaalmasinaid.
  • bridge-utils: vaja kui kasutada võrgu seadetes bridge lahendust.
sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils 

Külalisoperatsiooni süsteemi loomine

Külalisoperatsiooni süsteemi manageerimine

Kokkuvõte

Viited