Xen
A Hygywiki wikiből
Tartalomjegyzék |
Előszó
A telepítés Ubuntu Hardy Heron rendszeren történik, de szerintem kb. Debian-ra is nagyjából ezek a lépések működhetnek. Kezdésként le kell tölteni az ubuntu server install iso-t. Kírni cd-re. Majd feltelepíteni. Én egy teljesen alap rendszert tettem fel. Ami kellett csomag azokat apt-get installal telepítettem, pl: ssh. A telepítés közben lvm-et, és sw raid1-et állítottam be.
A dolgokat nagyrészt emlékezetből írom plusz pár jegyzetemből. Szóval ha kifelejtettem valamit bátran szóljatok.
Tervezett hálózati struktúra
A cél a következő hálózati struktúra létrehozása:
|
A XEN-t futtató gép egy saját barkácsolású mini itx gép, a következő paraméterekkel:
Külön beszerelésre került:
|
miniitx elöl |
hátulról |
Az eredeti elképzelésem az volt (mivel csak 1 PCI sin van az alaplapon), hogy mindent USB-vel csinálok meg. Beszereztem egy USB-s ethernet vezérlőt, egy USB-s Wifi vezérlőt. Közben azonban kiderült, hogy a xen az USB-vel hadi lábon áll. Próbálkoztam egy usb-ip nevű cuccal, hogy a dom0-ból az fw-be exportáljam az USB-s eszközt, el is indult, de jelenleg még nem tul stabil. Egy nap alatt 4x fagyasztotta csontra a fw-t. Valamint közben beszereztem egy fon routert is, ami most a wifi-t oldja meg. Így az USB-UP jelenleg elvetve, bár a nyomtatót még majd valahogy meg kell oldani.
dom0
A dom0-ás gépben lehetőleg semmit sem szeretnék futtatni, ahogy a leírások is javasolják.
fw - adsl router, tűzfal
A plusz berakott hálózati kártyát mint PCI eszközt be szerettem volna irányítani az fw domU gépbe. Így az fw gép adsl felől érkező csomagok nem jutnak be a dom0 gépbe, csak miután a tűzfalon keresztül jutottak.
fileserver
Az itthoni gépeket, valamit a saját szervereket szeretném ide menteni, valószínű ez Bacula-val lesz megoldva.
xwindows
Ez a minden más gép. Erre fel fogok rakni egy tightvnc nevű programot, hogy távolrol rá lehessen vnc-zni. Reményeim szerint innen tud szólni a zene az erősítőn, mehetnek a letöltések, rákötöm a nyomtatót, stb...
XEN install lépések
xen telepítése
# apt-get install ubuntu-xen-server # mv /lib/tls /lib/tls.disable
hálózat
vim /etc/network/interfaces
# The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 auto xenbr0 iface xenbr0 inet static bridge_ports eth0 address 192.168.1.250 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.254 bridge_st off bridge_fd 0
pci eszközök elrejtése
Ehhez először is meg kell nézni az eszköz PCI azonosítóját
# lspci | grep Ether 00:04.0 Ethernet controller: Silicon Integrated Systems [SiS] SiS900 PCI Fast Ethernet (rev 91) 00:06.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
aztán pedig a hangártyát is:
# lspci | grep Sound 00:02.7 Multimedia audio controller: Silicon Integrated Systems [SiS] AC'97 Sound Controller (rev a0)
A /boot/grub/menu.lst filehoz az aktuálisan bebootolt xen-es kernel sorához hozzá kell fűzni a következőt:
pciback.hide=(03:00.0)(02:00.0)
azaz a sor kb. így kell, hogy kinézzen:
module /boot/vmlinuz-2.6.22-14-xen root=UUID=a1472b3e-dbc8-4969-92a8-08129351fa02 ro console=tty0 pciback.permissive pciback.hide=(03:00.0)(02:00.0)
Ez a két sor kitiltja a dom0-bol az eszközt.
Az eszköz látszani fog a dom0 -ban kiadott lspci utasítás hatására is. Ettől első körben nem kell megrémülni. Ellenőrizni úgy lehet, hogy a dmesg kimenetében ilyesmi sort kell látni:
pciback 0000:00:04.0: seizing device
reboot
Ezután a rendszert újra kell bootolni. A xen-es kernelnek kell feljönnie.
# uname -r 2.6.24-19-xen
Az első virtuális gép létrehozása
xen configok finomhangolása
A /etc/xen/xend-config.sxp fileban a következőket kell tenni:
- (network-script...) kezdetű részt kikommentezni
- (vif-script vif-bridge) -et ellenőrizni, hogy ne legyen kikommentezve
A vim /etc/xen-tools/xen-tools.conf fileban meg kell változtatni a következőket:
- mirrors
- passwd
az első gép létrehozása
A virtualis gép létrehozására xen-tools-t használjuk mert egyrészt ez van másrészt kényelmes.
# xen-create-image --hostname=fw --lvm system --size=2G --swap=512Mb --ide --ip=192.168.1.253 --netmask=255.255.255.0 --gateway=192.168.1.254 --force --memory=64Mb --arch=i386 --dist=hardy
| --hostname fw | Ez lesz a rendszerunk host neve. |
| --lvm system | A system nevű volume grouppon belül hozzuk létre az fw-swap és fw-disk nevű kötetünket. |
| --size 2G | 2G meretű lesz az fw-disk |
| --swap 512 | 512M swap |
Egyenlőre beállítunk egy átjárót is, hogy tudjunk csomagokat telepítgetni, valamint az ip cimet is 192.168.1.253-ra állítjuk ezt később majd át kell állítani 254-re.
létrehozott config szerkesztése
A /etc/xen/fw.cfg file végére fűzzük hozzá a következő sort, hogy az fw-n belül látszódjon a hálókártya:
pci = ['03:00.0'] # ha több eszköz van azt igy kell: # pci=['00:1b.0','00:13.0']
Szintén ebben a fileban a vif kezdetű sort módosítsuk, adjuk hozzá a bridge=xenbr0 paramétert, az ipt én ki szoktam törölni. Valami ilyennek kell lennie végül:
vif = [ 'bridge=xenbr0,mac=00:16:3E:4F:74:AF' ]
a virtuális gép elindítása
Adjuk ki a következő utasítást aminek a hatására elindul a virtuális gépünk. A -c paraméter azt jelenti, hogy egyből konzolt is kapunk tehát látjuk a boot folyamatát.
# xm create -c /etc/xen/fw.cfg
Bootolás kozben panaszkodni fog, a tls miatt. Ezt én bootolás után szoktam orvosolni, de fel lehet csatolni az fw_disk-et boot előtt is és a tls-t átnevezni tls.disabledre.
Ha minden jól ment akkor elindult a virtuális gépünk tudunk belőle kifelé pingelni.
ifconfig -a -val ellenőrizzük, hogy látszik e a kivülről kapott hálókártyánk.
Ezután be kell állítani a tuzfalat, pppoe-t. Átállítani az ip-t újra bootolni, majd örülni magunknak, hogy kész a xen-es tűzfalunk. A többi virtuális gép létrehozása hasonlóan történik a fentiek alapján.
további xen parancsok
| xm console fw | konzolt nyit az fw nevű már futó virtuális gépre |
| xm top | a futó gépek listáját, proci terhelését, stb... mutatja |
| xm list | futó gépek listája |
Egyenlőre ennyi. :)

