Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1...

64
Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBG-Seminar Xen - die Kunst der Virtualisierung Dr. Carsten Gnörlich [email protected] 26.06.2007

Transcript of Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1...

Page 1: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 1

Universität Bielefeld RBG­Seminar

Xen­ die Kunst der Virtualisierung

Dr. Carsten Gnö[email protected]­bielefeld.de

26.06.2007

Page 2: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 2

Universität Bielefeld RBG­Seminar

Aufbau des Vortrags

1. Ein bißchen Theorie (ca. 30min)

2. Xen­Live­Demo (ca. ?? ­ Murphy ;­)

3.  Zusammenfassung (ca. 10 min)

Page 3: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 3

Universität Bielefeld RBG­Seminar

Das große Bild, Teil 1Hardware­Virtualisierung:

● “Wirt” und “Gast” sind jeweils komplette Betriebssysteme

mehrere Gäste (Betriebsysteme) auf einer Hardware

Gäste gegeneinander abschotten

Applikations­Virtualisierung (hier nicht behandelt):

●  auf Programm/Thread–Ebene; Beispiel: Java­VM 

Page 4: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 4

Universität Bielefeld RBG­Seminar

Stufen der Virtualisierung (1)

keine

DOS  

Page 5: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 5

Universität Bielefeld RBG­Seminar

Stufen der Virtualisierung (2)

keine CPU­Zeit ­  SchedulerSpeicher ­  virtueller Speicher

DOS Unix  

Page 6: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 6

Universität Bielefeld RBG­Seminar

Stufen der Virtualisierung (3)

keine CPU­Zeit Dateiraum Trennung durch Kernel­Features   Speicher Prozeßraum   

Wirt und alle Gäste laufenunter dem gleichen Kernel

DOS Unix chroot     vserver   zones

Page 7: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 7

Universität Bielefeld RBG­Seminar

Stufen der Virtualisierung (4)

keine CPU­Zeit Dateiraum Hardware­Virtualisierung   Speicher Prozeßraum   

Paravirtualisierung (Software)  

DOS Unix chroot     Xen­Kernelvserver   zones  ­ gleiche Arch., aber unterschiedl.

    Kernel für Wirt/Gast ­ modifizierter Gast­Kernel

Page 8: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 8

Universität Bielefeld RBG­Seminar

Stufen der Virtualisierung (5)

keine CPU­Zeit Dateiraum Hardware­Virtualisierung   Speicher Prozeßraum   

Paravirt./SW   HW­basiert

DOS Unix chroot     Xen­Kernel Xen­HVM    vserver   zones  ­ unmodifizierter Gastkernel

 ­ braucht HW­Unterstützung in CPU

Page 9: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 9

Universität Bielefeld RBG­Seminar

Stufen der Virtualisierung (6)

keine CPU­Zeit Dateiraum Hardware­Virtualis.   Hardware­Speicher Prozeßraum   Emulation

Paravirt./SW  HW­bas.

DOS Unix chroot     Xen­Kernel Xen­HVM   Mac­on­Linux vserver   zones ­ unterschiedliche Architektur

  für Wirt und Gast­ Bsp: PPC­Mac auf x86­Linux

Page 10: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 10

Universität Bielefeld RBG­Seminar

Stufen der Virtualisierung (7)

keine CPU­Zeit Dateiraum Hardware­Virtualis.   Hardware­Speicher Prozeßraum   Emulation

Paravirt./SW   HW­bas.

DOS Unix chroot     Xen­Kernel Xen­HVM   Mac­on­Linuxvserver   zones vmware

Page 11: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 11

Universität Bielefeld RBG­Seminar

Stufen der Virtualisierung (8)zunehmende Performanz (per Thread)

keine CPU­Zeit Dateiraum Hardware­Virtualis.   Hardware­Speicher Prozeßraum   Emulation

Paravirt./SW   HW­bas.

DOS Unix chroot     Xen­Kernel Xen­HVM   Mac­on­Linux vserver   zones vmware

zunehmende Abschottung der Gäste

Page 12: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 12

Universität Bielefeld RBG­Seminar

“Sweet spot”zunehmende Performanz (per Thread)

keine CPU­Zeit Dateiraum Hardware­Virtualis.   Hardware­Speicher Prozeßraum   Emulation

Paravirt./SW   HW­bas.

DOS Unix chroot     Xen­Kernel Xen­HVM   Mac­on­Linuxvserver   zones

zunehmende Abschottung der Gäste

Page 13: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 13

Universität Bielefeld RBG­Seminar

Virtualisierung und Paravirtualisierung

Page 14: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 14

Universität Bielefeld RBG­Seminar

Das große Bild, Teil 2

Event Channel Virtual MMUVirtual CPU Control IF

Hardware (SMP, MMU, physical memory, Ethernet, SCSI/IDE)

NativeDeviceDriver

GuestOS(XenLinux)

Device Manager & Control s/w

VM0/Dom0

NativeDeviceDriver

GuestOS(XenLinux)

UnmodifiedUser

Software

VM1/DomU

Front­EndDevice Drivers

GuestOS(XenLinux)

UnmodifiedUser

Software

VM2/DomU

Front­EndDevice Drivers

UnmodifiedGuestOS(WinXP))

UnmodifiedUser

Software

VM3/DomU

Safe HW IF

Xen Virtual Machine Monitor

Back­End Back­End

VT-x

32/64bit

AGPACPIPCI

SMP

Quelle: Ian Pratt, http://www.cl.cam.ac.uk/netos/papers/2005­xen­may.ppt

Page 15: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 15

Universität Bielefeld RBG­Seminar

Das große Bild, Teil 2

Event Channel Virtual MMUVirtual CPU Control IF

Hardware (SMP, MMU, physical memory, Ethernet, SCSI/IDE)

NativeDeviceDriver

GuestOS(XenLinux)

Device Manager & Control s/w

VM0/Dom0

NativeDeviceDriver

GuestOS(XenLinux)

UnmodifiedUser

Software

VM1/DomU

Front­EndDevice Drivers

GuestOS(XenLinux)

UnmodifiedUser

Software

VM2/DomU

Front­EndDevice Drivers

UnmodifiedGuestOS(WinXP))

UnmodifiedUser

Software

VM3/DomU

Safe HW IF

Xen Virtual Machine Monitor

Back­End Back­End

VT-x

32/64bit

AGPACPIPCI

SMP

Quelle: Ian Pratt, http://www.cl.cam.ac.uk/netos/papers/2005­xen­may.ppt

Page 16: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 16

Universität Bielefeld RBG­Seminar

Isolation der virtuellen Maschinen untereinander

● klassischer “Unix”­Zugriffsschutz

Prozeß­ / Filespaces, ...

● keine ggs. Performance­Beeineinträchtigung der DomUs

Forkbombe in einer DomU, 

I/O Trashing, ...

● Heterogene Betriebssysteme / eigene Kernel in den DomUs

Page 17: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 17

Universität Bielefeld RBG­Seminar

Zugriff auf HW Ressourcen

Anwendung

                      C­Library         mmap()

SMP   MMU   RAM   HDD ... Hardware

Unsicher – so gehts nicht!

Page 18: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 18

Universität Bielefeld RBG­Seminar

Zugriff über Kernel­Funktion

Anwendung

                      C­Library         mmap()

SMP   MMU   RAM   HDD ...

Kernel­Funktion

Kernel kontrolliert HW­Zugriff

Page 19: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 19

Universität Bielefeld RBG­Seminar

Direkte Manipulation verhindern

Anwendung

                      C­Library         mmap()

SMP   MMU   RAM   HDD ...

Kernel­Funktion

Kernel mode /Supervisor mode

Privilegierte Befehle

nur unprivilegierte Befehle

User mode

CPU­Hardwaretrennt Privilegien

Page 20: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 20

Universität Bielefeld RBG­Seminar

geordnete Eskalation User mode / Kernel mode

Anwendung

                      C­Library         mmap()

SMP   MMU   RAM   HDD ...

Kernel­Funktion

trap n

Tabelle...n 0x3ef020n+10x3ef840...

Kernel mode /Supervisor mode

User mode

Page 21: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 21

Universität Bielefeld RBG­Seminar

Verallgemeinerung auf mehrere BSVM­Kernel im Kernel­Mode betreiben funktioniert nicht!

Anwendung

Kernel

Anwendung

Kernel

 . . .

Kernel mode

User mode

SMP  MMU  RAM  HDD ...

Page 22: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 22

Universität Bielefeld RBG­Seminar

Besonderheit x86­Architektur

Ring 0 = Kernel­Mode

Ring 1mit Ausnahme von OS/2 ungenutzt

Ring 2

Ring 3 =  User­Mode

Page 23: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 23

Universität Bielefeld RBG­Seminar

Hardwarezugriff über Hypervisor

Anwendung

Kernel

Anwendung

Kernel

 . . .

Ring 1

Ring 3

SMP  MMU  RAM  HDD ...

Hypervisor Ring 0

Page 24: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 24

Universität Bielefeld RBG­Seminar

Leistung der Virtualisierungjedem Gast­Kernel alleinige Kontrolle über HW vorgaukeln

HW geeignet partitionieren und/oder simulieren

(ehemals) privilegierte Befehle der Gast­Kernel

umlenken auf Hypervisor­Calls

Page 25: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 25

Universität Bielefeld RBG­Seminar

Volle Virtualisierung● sämtliche HW virtualisieren● privilegierte Befehle im Gast per Trap auf Hypervisor umleiten

Problem bei x86: einige privilegierte Befehle erzeugen in Ring >0keinen Fehler

Gast­Kode dynamisch auswerten und umschreiben    (vgl. Dtrace)kostet viel Performance, erlaubt aber unmodifizierte Gast­Kernel

● Beispiel: vmware, Xen HVM

Page 26: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 26

Universität Bielefeld RBG­Seminar

Paravirtualisierung (1)

keine vollständige Virtualisierung,Beispiel: Page tables (PT)

● eigene PT direkt lesen● Schreiben per Hypervisor Anwendung

Gast­Kernel

 

Ring 1

Ring 3

SMP  MMU  RAM  HDD ...

Hypervisor Ring 0lesenschreiben

Page 27: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 27

Universität Bielefeld RBG­Seminar

Paravirtualisierung (2)

Kernel­Teile umschreiben,die privilegierte Befehlen enthalten

● wenn möglich innerhalb Ring 1  z.B. viele Exceptions, SW traps Anwendung

Gast­Kernel

 

Ring 1

Ring 3

SMP  MMU  RAM  HDD ...

Hypervisor Ring 0

Page 28: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 28

Universität Bielefeld RBG­Seminar

Paravirtualisierung (3)

Kernel­Teile umschreiben,die privilegierte Befehlen enthalten

● privilegierten Befehl durch  hardcoded Hypercall ersetzen Anwendung

Gast­Kernel

 

Ring 1

Ring 3

SMP  MMU  RAM  HDD ...

Hypervisor Ring 0

Page 29: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 29

Universität Bielefeld RBG­Seminar

MMU­Microbenchmarks

Linux (L), Xen (X), VMWare Workstation (V), User mode Linux (U)Quelle: Ian Pratt, http://www.cl.cam.ac.uk/netos/papers/2005­xen­may.ppt

Page 30: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 30

Universität Bielefeld RBG­Seminar

Was wird wo virtualisiert?Hypervisor virtualisiert selbst:● Speicherverwaltung● Scheduling

Hypervisor liefert Framework für● Interrupts virtuelle Events● I/O­Hardware nur abstrakte I/O­Schicht

 asynchroner Ringpuffer

Dom0:● liefert die tatsächlichen I/O­Gerätetreiber

Page 31: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 31

Universität Bielefeld RBG­Seminar

I/O­Ringe

Quelle: http://www.cl.cam.ac.uk/netos/papers/2003­xensosp.pdf

Page 32: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 32

Universität Bielefeld RBG­Seminar

Praktischer Teil

Praktischer Teil

mit Xen 3.1.0

Hinweis: Hypervisor + Xen­Userland nicht kompatibel mit Xen 3.0.xXen 3.0.x­Kernel laufen aber unter Xen 3.1.0

Page 33: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 33

Universität Bielefeld RBG­Seminar

Xen­Dom0 installieren (1)Xen­Dom0 ist● eine ganz “normale” Linux­Installation● plus Xen­Tools und Xen­Kernel­Image

Distributionsunabhängige Tarbälle:http://www.xensource.com/download/index_oss.html

Debian­Pakete:xen­linux­system­2.6.18­4­xen­amd64 xen­tools      optional, machen das Leben leichter!

Page 34: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 34

Universität Bielefeld RBG­Seminar

Xen­Dom0 installieren (2)1. Bestehende Linux­Installation nehmen oder eine erzeugen

2. Xen­Userland und ­Kernel installieren

­ Tarball: auspacken, cd $(where)/dist, ./install.sh

­ Debian: apt­get ...

3. Hypervisor und Xen­Kernel in /boot/grub/menu.list eintragen

4. Rebooten

5. xm top zur Kontrolle (als root)

Page 35: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 35

Universität Bielefeld RBG­Seminar

Grub­Konfiguration

 

Dom0 booten:

title           Xen Dom0 Debian GNU/Linux ...root           (hd0,0)kernel        /xen­3.0.3­1­amd64.gzmodule      /vmlinuz­2.6.18­4­xen­amd64 

    root=/dev/sda1 romodule      /initrd.img­2.6.18­4­xen­amd64

Normalen Kernel booten:

title       Debian GNU/Linux ...root       (hd0,0)kernel    /vmlinuz­2.6.18­4­amd64              root=/dev/sda1 roinitrd     /initrd.img­2.6.18­4­amd64

Page 36: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 36

Universität Bielefeld RBG­Seminar

Xen­Userlandxm Xen monitor, Kommandozeilen­Schnittstelle

xend verwaltet die virtuellen Domains

xenstore verwaltet Änderungen in der “Live”­Konfiguration

xenbus Kommunikation zwischen den virtuellen Domains

/etc/xen/* Konfigurationsdateien

Page 37: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 37

Universität Bielefeld RBG­Seminar

Xen­ToolsGrundkonfiguration in /etc/xen­tools/xen­tools.confbekommen alle neu angelegten DomUslvm = single # Volume group “single”; man will LVM benutzen!image  = full # Specify sparse vs. full disk images. LVM implies “full”size   = 2Gb       # Disk image size.memory = 512Mb # Memory sizeswap   = 512Mb     # Swap sizekernel = /boot/vmlinuz­2.6.18­4­xen­vserver­amd64initrd = /boot/initrd.img­2.6.18­4­xen­vserver­amd64arch=amd64 # We want to install a 64bit distrodebootstrap = 1 # Bootstrap for our distro (Debian in our case)dist   = etch      # Default distribution to install (we want Debian Etch)dhcp = 1 # DomU is going to boot using DHCPpasswd = 1 # Change root password during setup

Page 38: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 38

Universität Bielefeld RBG­Seminar

Grundeinstellung für Netzwerk prüfenin /etc/xen/xend­config.sxp:

(network­script network­bridge)#(network­script network­dummy)

alle DomU erhalten Bridge auf erstes Interface der Dom0

Auch komplexere Topologien konfigurierbar:● verschiedene DomUs auf verschiedene Interfaces bridgen● Dom0 kann zwischen DomU und Außenwelt routen● DomU werden über NAT angebunden

Page 39: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 39

Universität Bielefeld RBG­Seminar

Xen­Tools: Neue DomU erzeugen

xen­create­image ­­hostname grag [­­ip 129.70.142.241]

tail ­f /var/log/xen­tools/grag.log

führt Debian­bootstrap über Netz durch,erzeugt initiale Konfiguration

Page 40: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 40

Universität Bielefeld RBG­Seminar

Xen­Tools: Übersichtxen­create­image : Neues Abbild erzeugen

xen­delete­image : Abbild wieder löschen

xen­list­images: : Abbilder anzeigen

Page 41: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 41

Universität Bielefeld RBG­Seminar

bootfähige Konfiguration liegt in /etc/xenvi /etc/xen/grag.cfg

für DHCP­Boot brauchen wir eine Mac­Adresse:

vif  = [ '' ]          “Default­Bein”

vif  = [ 'mac=00:16:3E:2C:F0:01, bridge=xenbr0' ]

Weitere Interfaces zur Verfügung stellen:/etc/xen/scripts/network­bridge start vifnum=1 bridge=xenbr1 netdev=eth1

Page 42: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 42

Universität Bielefeld RBG­Seminar

DomU bootenErster Boot am besten mit Konsole (­g später weglassen):

xm create ­c grag.cfg

Konsole abgeben:  Ctrl­5

Konsole holen: xm console grag

Page 43: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 43

Universität Bielefeld RBG­Seminar

Kontrolle und erste Hilfexm top    # laufende Domains anschauenxm list [­l]    # mehr Infos zu laufenden Domains

xm shutdown grag   # eine DomU anhalten (= shutdown ­h)xm destroy grag # eine DomU abbrechen (= Stecker ziehen)

Page 44: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 44

Universität Bielefeld RBG­Seminar

Statische SpeicherverwaltungGrundeinstellung:

● dom0 hat allen freien Speicher

● domU erhält daraus festes Kontingent beim Erzeugen

dynamische Relokation über balloon­Treiber möglich

Page 45: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 45

Universität Bielefeld RBG­Seminar

Dynamische Speicherverwaltung (1)1. Speicher der dom0 begrenzen:

/boot/grub/menu.lst:

...kernel          /boot/xen­3.0.3­1­amd64.gz dom0_mem=192M...

Page 46: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 46

Universität Bielefeld RBG­Seminar

Dynamische Speicherverwaltung (2)2. größere Seitentabellen für DomU­Kernel:

/etc/xen/grag.cfg:...memory   = '512'maxmem = '2048'extra    = 'mem=2048M'  (ab Xen 3.1.0 entbehrlich)

DomU startet nach wie vor mit 512M,kann aber auf bis zu 2G vergrößert werden

Page 47: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 47

Universität Bielefeld RBG­Seminar

Dynamische Speicherverwaltung (3)Speichermenge einer domU verändern:

root@dom0# xm mem­set grag 376

Speichermenge aus der domU heraus verändern:

root@grag# echo $((700*1024*1024)) >/proc/xen/balloon

Page 48: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 48

Universität Bielefeld RBG­Seminar

Dynamische Speicherverwaltung ­ Ausblick● momentan nur manuelle Relokation

● in Zukunft paravirtualisierter out­of­memory­Treiber

Allerdings: grundsätzlich kein Überbuchen möglich!

Page 49: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 49

Universität Bielefeld RBG­Seminar

domU anhaltenxm pause curtis

xm unpause curtis

Page 50: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 50

Universität Bielefeld RBG­Seminar

domU speichern und startencd /home/xen/domains/curtisxm save curtis curtis.xen

... Maschine rebooten oder was auch immer ...

xm restore curtis

Achtung: TCP timeout bei ssh, X11

 screen oder VNC verwenden

Page 51: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 51

Universität Bielefeld RBG­Seminar

domU migrieren (1)

xm migrate curtis dom0.dotsero.techfak.uni­bielefeld.de

Stolperfalle: vom “flipping” eth­Driver auf “copying” eth­Driver umschalten

/etc/xen/curtis.cfg:...extra   = 'xennet.rx_copy'...

Page 52: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 52

Universität Bielefeld RBG­Seminar

domU migrieren (2)Momentan: lokaler Storage wird (noch) nicht übertragen

Empfohlen: Root­Filesystem per NFS, SAN, iSCSI,...

Workaround: Dateibasierte Abbilder verwenden

dom0­alt> xm save curtisdom0­alt> # per scp Abbild(er) auf neue dom0 übertragendom0­neu> xm restore curtis

Vorsicht: TCP timeout

Page 53: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 53

Universität Bielefeld RBG­Seminar

HVM ­ Hardware­VirtualisierungBenötigt:

● Vanderpool (Intel, vmx) oder Pacifica (AMD, svm):

    xm dmesg | grep HVM

● LVM­Volume für HD­Emulation

● Iso­Abbild des Installations­Datenträgers

● SDL oder VNC für graphische Konsole des Gastes

Page 54: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 54

Universität Bielefeld RBG­Seminar

HVM ­ Konfiguration● /etc/xen/xmexample.hvm  entsprechend anpassen, u.a.:

kernel = "/usr/lib/xen/boot/hvmloader"builder='hvm'disk=[ 'phy:/dev/stripe/joan­disk,ioemu:hda,w',   'file:/home/xen/domains/joan/winxp.iso,hdc:cdrom,r']boot="d"  # Nach Installation auf “c”setzensdl=0vnc=1

● vncpasswd + Paßwort in /etc/xen/xend­config.sxp eintragen

Page 55: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 55

Universität Bielefeld RBG­Seminar

HVM­Gast bootenBooten/Verwalten wie gewohnt:

xm create joan

● Umstellen auf boot='c' nach Installation nicht vergessen!

● Unterstützte OS:    Windows XP, ... (Stille, tödliches Schweigen ;­) ... 

Page 56: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 56

Universität Bielefeld RBG­Seminar

Zusammenarbeit mit Intrusion DetectionIntrusion Detection­Systeme:● erstellen Datenbank mit Prüfsummen aller Dateien/Directories● daran werden Einbrüche in das System erkannt

Prinzipbedingte Schwachstelle:● IDS­Binary und ­Datenbank im überwachten System sichtbar   und im schlimmsten Fall manipulierbar

Page 57: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 57

Universität Bielefeld RBG­Seminar

IDS mit XenIdee: 

● IDS aus der Dom0 über die DomU­Gäste laufen lassen

kompromittierte DomU können IDS nicht erkennen/manipulieren

Zugriff auf Dateisystem der DomU ­ falscher Ansatz:

dom0> mount /dev/stripe/grag­disk /mnt

Dateisystem ist unter zwei Kerneln gleichzeitg gemountet

Page 58: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 58

Universität Bielefeld RBG­Seminar

Zugriff auf DomU über LVM­Snapshots

dom0> lvcreate ­­snapshot ­L 1G ­n snap stripe/grag­diskdom0> mount /dev/stripe/snap /mnt ... Backup, Intrusion Detection auf /mnt laufen lassen ...

dom0> umount /mntdom0> lvremove stripe/snap 

Page 59: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 59

Universität Bielefeld RBG­Seminar

Xen in der RBG (1)4 von 5 Linux­Servern (X4100/X4200) haben Xen

1. Mailserver● mailin (4 Kerne)● smarthost  (1 Kern dynamisch, idle)

2./3. Netboot­Server ● NFS/Netboot (1 Kern pinned)● Compute (3 Kerne pinned)● mailin/smarthost cold­spare

Page 60: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 60

Universität Bielefeld RBG­Seminar

Xen in der RBG (2)4. Projektserver

● Projekt­DomU­ vserver: TAK­ vserver: Fachschaft­ vserver: ...●Test­DomU

5. Demnächst: SunRay­Server ● 32bit­DomU unter 64bit­Dom0 geht jetzt

Page 61: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 61

Universität Bielefeld RBG­Seminar

Zusammenfassung● Administrative Vorteile: dom0 als Serviceprozessor

● Save/Resume und Live­Migration

● Große Maschinen besser auslasten

● Weniger Hitze/Kosten (Eine große Maschine ersetzt viele kleine)

● Verschiedene Betriebssysteme auf einer Maschine

Page 62: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 62

Universität Bielefeld RBG­Seminar

AusblickWas noch kommen wird bzw. wünschenswert ist:

● dynamischere Speicherverwaltung

   (momentaner Workaround: vserver innerhalb einer DomU)

● Migration von lokalem Storage

● besseres HVM

Page 63: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 63

Universität Bielefeld RBG­Seminar

Danke fürs Zuhören!

Page 64: Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich ... · Dr. Carsten Gnörlich Xen / 1 Universität Bielefeld RBGSeminar Xen die Kunst der Virtualisierung Dr. Carsten Gnörlich

Dr. Carsten Gnörlich Xen / 64

Universität Bielefeld RBG­Seminar

LiteraturLösungen für spezielle Probleme (Cut&­Paste­Suche nach der Fehlermeldung):● http://lists.xensource.com/archives/html/; insbesondere

● http://lists.xensource.com/archives/html/xen­users/  und● http://lists.xensource.com/archives/html/xen­devel/

Allgemeiner Überblick, Installation:● http://www.pug.org/index.php/Xen­InstallationWeiterführende Literatur:● http://wiki.xensource.com/xenwiki/XenDocs●  http://www.cl.cam.ac.uk/netos/papers/2003­xensosp.pdf●  http://www.cl.cam.ac.uk/netos/papers/2005­xen­may.ppt● Henning Sprang et al: Xen Virtualisierung unter Linux,

Open Source Press, 2007