| Slideshow ^ |< << Slide 2 of 4 >> >| |
Xen
Begriffe
- * Xen0 od. dom0
- der "master", das ist die eigentliche maschine
- * XenU od. domU
- ein virtueller client rechner
- * hypervisor
The hypervisor is the "core" for XEN itself
Installation
- die installation besteht aus mehreren debian packeten, inkl. kernel, hypervisor, tools usw.
$ apt-get install linux-image-2.6.18-4-xen-686 linux-modules-2.6.18-4-xen-686 \ xen-linux-system-2.6.18-4-xen-686 libc6-xen xen-tools xen-utils-3.0.3-1 \ xen-utils-common
- es werde durch diese packete eine reihe von anderen packeten installiert die zum betrieb nötig sind, zb. debootstrap
Konfiguration Xen0
- durch die sehr gut gewordenen xen packete ist nur noch ein minimaler konfigurationsaufwand notwendig
- das linux-image-xen setzt alle erforderlichen parameter in der menu.lst vom grub
$ cat /boot/grub/menu.lst [snip] title Xen 3.0.3-1-i386-pae / Debian GNU/Linux, kernel 2.6.18-4-xen-686 root (hd0,0) kernel /boot/xen-3.0.3-1-i386-pae.gz module /boot/vmlinuz-2.6.18-4-xen-686 root=/dev/cciss/c0d0p1 ro console=tty0 module /boot/initrd.img-2.6.18-4-xen-686 [snip]
- /etc/default/xendomains konfigurationsdatei für /etc/init.d/xendomains
- /etc/xen/xend-config.sxp ist die konfigdatei für xend
network-script, z.b. (network-script multiple-nic)
$ cat /etc/xen/scripts/multiple-nic #!/bin/sh # quick and dirty shell script by chassing :) # have a look at http://www.debian-administration.org/articles/470 dir=$(dirname "$0") "$dir/network-bridge" "$@" vifnum=0 netdev=eth0 bridge=xenbr0 "$dir/network-bridge" "$@" vifnum=1 netdev=eth1 bridge=xenbr1
- (dom0-min-mem 512)
- (dom0-cpus 1)
Konfiguration XenU
- via debootstrap neuen xenU anlegen
$ mkdir -p /home/xen $ cd /home/xen $ dd if=/dev/zero of=test bs=1k seek=1024k count=1 # ein file als container vorbereiten $ losetup -f test # loop setup für /dev/loop/0 $ mkfs.ext3 -m1 -L test /dev/loop/0 # filesystem drin erstellen $ mount /dev/loop/0 /mnt # und mounten $ debootstrap etch /mnt http://debian.uni-klu.ac.at/debian # xenU erstellen ... $ chroot /mnt # pakete nachinstallieren + netzwerk einstellungen machen usw. $ umount /mnt $ mkdir -p /home/xen-swap $ cd /home/xen-swap $ dd if=/dev/zero of=test bs=1k seek=1024k count=1 # ein file als swap space vorbereiten
- die xenU configfiles liegen unter /etc/xen
$ cat /etc/xen/test.cfg # das ist für para name = "test" kernel = "/boot/vmlinuz-2.6.18-4-xen-686" ramdisk = "/boot/initrd.img-2.6.18-4-xen-686" builder = 'linux' memory = 512 vcpus = 4 vif = [ 'mac=14:32:05:12:80:53,bridge=xenbr0' ] disk = [ 'file:/home/xen/test,sda1,w', 'file:/home/xen-swap/test,sda2,w' ] #disk = [ 'phy:/dev/hdb5,sda1,w', 'file:/home/xen-swap/ldu1,sda2,w' ] root = "/dev/sda1 ro"
- beispiel für hvm
kernel = "/usr/lib/xen-3.0.3-1/boot/hvmloader" builder= 'hvm' memory = 1024 shadow_memory = 8 name = "build32-dapper" vcpus=4 vif = [ 'mac=14:32:05:06:40:40,type=ioemu, bridge=xenbr0' ] #vif = [ 'bridge=xenbr0' ] disk = ['phy:/dev/disk/by-id/scsi-3600a0b800026c1620000047e45c71c6a,sda,w','file:/home/xen/ubuntu-6.06.1-server-i386.iso,hdc:cdrom,r'] #disk = ['file:/home/xen/build32-dapper.img,ioemu:hda,w','file:/home/xen/ubuntu-6.06.1-server-i386.iso,hdc:cdrom,r'] device_model = '/usr/lib/xen-3.0.3-1/bin/qemu-dm' boot='c' vnc=1 vncviewer=0 serial='pty' ne2000=0 audio=0
Los gehts
- xenU starten
$ xm create test.cfg Using config file "test.cfg". Started domain test
- console von xenU
$ xm console test # zum beenden ctrl+5 test login:
- xenU stoppen
$ xm shutdown test
xm help und man xm gibt weitere hilfestellung
