Téma: | KVM alapú virtualizáció kialakításának lépései Linux kiszolgálón |
---|---|
A munka célja: | Megismerkedni a KVM virtualizáció kialakításának lépéseivel, megtanulni a virt-manager használatát |
Elméleti ismeretek: | yum parancs, ntp, iptables, httpd, virt-manager, VLAN, bridge, munin |
Szükséges eszközök és programok: | Virtualizációs parancskészlettel rendelkező processzor, min. 8 G RAM, 2db HDD, telepített CentOS 6 Linux 64 bites operációs rendszer, Internet kapcsolat |
Név:
Dátum, idő:
Számítógép:
Indítsa el a szövegszerkesztő programot. Másolja a laboratóriumi munka teljes szövegét majd illessze be a dokumentumba.
Jelentkezzen be a kvme.kmf.lan gépre lab1 felhasználóként (gépének megf elelően lab2, lab3, … lab6) jelszó: Lab1.42 (Lab2.42, …) és kérjen root jogosultságot:
ssh lab1@192.168.5.41
kérjen root jogosultságot:
su -
root jelszó: Alad4r.42
Ellenőrizzük a gép főbb tulajdonságait.
Partíciók és szabad hely rajtuk:
[root@kvme ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/md2 70G 1.4G 65G 3% / tmpfs 7.8G 4.0K 7.8G 1% /dev/shm /dev/md0 477M 76M 376M 17% /boot /dev/md3 374G 143G 212G 41% /home
Mióta működik, hányan vannak bejelentkezve és milyen a terheltsége:
[root@kvme ~]# uptime 15:09:58 up 18 days, 23:28, 1 user, load average: 0.20, 0.17, 0.13
Ellenőrizzük hogy a processzor támogatja a virtuálzációt:
[root@kvme ~]# cat /proc/cpuinfo | grep vmx
(Az AMD által gyártott processzorokban a svm flag-et kell keresni)
Telepítsük az mc programot:
[root@kvme ~]# yum install mc
Kapcsoljuk ki a SELinux biztonsági alrendszert. Az /etc/selinux/config fájlban módosítsuk a SELINUX értéket: SELINUX=disabled
[root@kvme ~]# mcedit /etc/selinux/config
Indítsuk újra rendszert:
[root@kvme ~]# reboot
Frissítsük a rendszert, ha a kernel is frissült indítsuk újra a frissítés végeztével:
[root@kvme ~]# yum update
Telepítsük a pontos idő szolgáltatást:
[root@kvme ~]# yum install ntp
Szinkronizáljuk a rendszeridőt:
[root@kvme etc]# ntpdate 0.rhel.pool.ntp.org 30 Jan 16:22:10 ntpdate[2208]: step time server 194.54.162.152 offset 195.336392 sec
Elindítjuk a szolgáltatást és beállítjuk hogy a következő rendszerindításnál automatikusan elinduljon:
[root@kvme ~]# service ntpd start [root@kvme ~]# chkconfig ntpd on
Telepítünk néhány fontos programot: traceroute variáns, hardvware lista, zip kicsomagoló, internetes letöltőprogram, DNS segédproramok, PCI buszt használó eszközök listája. Majd az epel tárolót telepítjük.
[root@kvme ~]# yum install mtr lshw unzip wget bind-utils pciutils [root@kvme ~]# yum install epel-release
Telepítjük a kiszolgáló távoli monitorásához használt munin programot, a merevlemez állapotát lehetővé tevő smartmontools-t és a webszervert .
[root@kvme ~]# yum install munin munin-node smartmontools httpd
A tűzfalon megnyitjuk a 80-as portot a webszervernek. Az /etc/sysconfig/iptables sort bővítjük a következővel:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
Ehhez az mc szerkesztőjét használhatjuk. (a fájlban van egy ilyen sor, csak 22 porttal, ami az ssh-t engedélyezi. F3 és iránybillentyűvel ezt a sort jelölhetjük ki, F3 kijelölés vége, F5 beillesztés majd módosítás)
[root@kvme ~]# mcedit /etc/sysconfig/iptables
Újraindítjuk a tűzfalat:
[root@kvme ~]# service iptables restart
Beállítjuk, hogy a munin jelszó beírása nélkül is elérhető legyen. Ehhez az /etc/httpd/conf.d/munin.conf fájlban # jeleket írunk azok a sorok elé, amelyek ezt beállítják. Csak az alábbi sorok legyenek aktívak a fájlban:
[root@kvme ~]# cat /etc/httpd/conf.d/munin.conf | grep -v "#" <directory /var/www/html/munin> ExpiresActive On ExpiresDefault M310 </directory> ScriptAlias /munin-cgi/munin-cgi-graph /var/www/cgi-bin/munin-cgi-graph
Elindítjuk a webszervert és beállítjuk az automatikus indulását:
[root@kvme ~]# service httpd start [root@kvme ~]# chkconfig httpd on
Elindítjuk a munin programot és beállítjuk az automatikus indulását:
[root@kvme ~]# service munin-node start Starting Munin Node: [ OK ] [root@kvme ~]# chkconfig munin-node on
Telepítjük a KVM virtualizációt:
[root@kvme ~]# yum install kvm libvirt python-virtinst qemu-kvm tunctl
és a virtuális gépek állapotát mutató programot:
[root@kvme ~]# yum install virt-top
Létrehozzuk a könyvtárat ahol a virtuális gépeket tároljuk:
[root@kvme ~]# mkdir /home/ste
Indítjuk a virtualizációt és beállítjuk az automatikus indulását:
[root@kvme ~]# service libvirtd start [root@kvme ~]# chkonfig libvirtd on
Hálózat beállításához telepítjük az alábbi programot:
[root@kvme ~]# yum install bridge-utils
Lépjünk be a network-scripts könyvtárba és módosítsuk az eth0 interface konfigurációs állományát az alábbira:
[root@kvme ~]# cd /etc/sysconfig/network-scripts/ [root@kvme network-scripts]# cat ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet # UUID=3fc30a73-eca8-4bb4-96b5-4e8158d50d28 ONBOOT=yes NM_CONTROLLED=no # BOOTPROTO=none HWADDR=90:B1:1C:28:DF:94 # IPADDR=192.168.5.40 # PREFIX=24 # GATEWAY=192.168.5.1 # DNS1=192.168.5.5 # DOMAIN=kmf.lan DEFROUTE=yes IPV4_FAILURE_FATAL=yes NOZEROCONF=yes IPV6INIT=no NAME="System eth0" BRIDGE=br0
Másoljuk az ifcfg-eth0 állományt ifcfg-br0 néven:
[root@kvme network-scripts]# cp ifcfg-eth0 ifcfg-br0
Módosítsuk a következőre:
DEVICE=br0 TYPE=Bridge ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none IPADDR=192.168.5.41 PREFIX=24 GATEWAY=192.168.5.1 DNS1=192.168.5.5 DNS2=192.168.5.4 # DOMAIN=kmf.lan DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NOZEROCONF=yes NAME="System br0"
Ezzel létrehoztunk egy bridge-t (br0). Az ide kapcsolt virtuális gépek Ethernet csatolói, ahhoz a hálózathoz kapcsolódnak, ahová fizikailag is csatlakozik a kiszolgáló.
Hozzuk létre az alábbi két állományt. Ezek egy bridge-be kapcsolt 802.1Q VLAN csatolót hoznak létre 221-es VID-el. Így lehetővé válik, hogy az ide kapcsolt virtuális gépek csatolói a switch felé ilyen VID-el jelölt Ethernet csomagokat küldjenek.
[root@kvme network-scripts]# cat ifcfg-br_v221 DEVICE=br_v221 TYPE=Bridge BOOTPROTO=static STP=on ONBOOT=yes DELAY=0 [root@kvme network-scripts]# cat ifcfg-eth0.221 DEVICE=eth0.221 VLAN=yes ONBOOT=yes BRIDGE=br_v221
A fenti két fájlról készítsünk másolatokat a nevében módosítva a számot: 222, 223, 224 és 225. Értelemszerűen módosítva a tartalmat is. Indítsuk újra hálózatot:
[root@kvme network-scripts]# service network restart
Ellenőrizzük a hálózatot a kiszolgálón az ifconfig paranccsal
Az Ubuntu kliens gépen telepítse a virt-manager és a ssh-askpass-gnome programokat
sudo apt-get install virt-manager ssh-askpass-gnome
Indítsa el a Virtuális Gép vezérlőpultot. Hozzon létre új kapcsolatot távoli kiszolgálóhoz: 192.168.5.41
A megjelenő ablakban adja meg a kiszolgáló root jelszavát. Nyissa meg a Részletek ablakot. Figyelje meg az Áttekintés, Virtuális hálózatok, Tároló és Hálózati csatolók füleket. Készítsen képet az ablakról, hogy a Hálózati csatolók ablak tartalma is látható legyen. A képet illessze be a dokumentumba.
A kiszolgálón módosítsa az /etc/libvirt/storage/default.xml állomány taroló útvonalát meghatározó sorát:
<path>/home/ste</path>
Indítsa újra a KVM virtualizációt a kiszolgálón:
service libvirtd restart
Mentse a dokumentumot Lab7-MONOGRAM.odt néven.
Küldjön emailt a pferi@kmf.uz.ua címre. A levél tárgya legyen Saját Név LAB12 07 tartalma pedig a következő:
<Saját Név> jelen nyilatkozatom elküldésével kijelentem, hogy ezt a feladat önálló munkám, annak elkészítése során az önálló munka kitétel tekintetében a feladatot kiadó és az azt ellenőrző oktatót nem tévesztettem meg. Jelen nyilatkozat elküldésével tudomásul veszem, hogy amennyiben a feladatot nem magam készítettem, a tárgy oktatója befogadását és a félév aláírását megtagadja.
A levélhez csatolja a dokumentumot.