Das Rootserver-Experiment

Erlebnisse eines Rootserver (Beinahe-) Neulings

Verantwortlich für den Inhalt dieser Seite ist Mattias Schlenker, Inhaber Mattias Schlenker IT-Consulting Mattias Schlenker work Dietrich-Bonhoeffer-Str. 3, 40667 Meerbusch. Germany work Fon +49 341 39290767. Meine USt-ID (VATIN) lautet: DE240998538. http://www.mattiasschlenker.de

Diese Seite läuft unter Wordpress 2.x.x. News und Kommentare können als RSS-2.0-Feed abonniert werden.

Windows 7 oder Server 2008 als Xen domU (HVM)

Mit der besseren Integration von Xen in die aktuelle LTS Version von Ubuntu bietet es sich an, als Virtualisierungslösung auf den freien Xen zu setzen, wenn es darum geht, einen Windows TS (Terminal Services) oder RDS (Remote Desktop Services) Server im kleinen SOHO Netzwerk zu virtualisieren. Dieser Workshop setzt einen funktionierenden Xen-Host voraus, d.h. eine paravirtualisierte domU konnte bereits erfolgreich gestartet werden.

Voraussetzungen prüfen

Um Windows auf Xen laufen lassen zu können, muss die “Hardware Virtual Machine” ran. Die sollten moderne Prozessoren beherrschen, tun sie aber nicht immer. Ein guter Ansatz ist es. den Inhalt von /proc/cpuinfo nach vm zu durchsuchen. Taucht hier vme oder svm auf, schaut es gut aus. Wenn nicht: Zuerst ins BIOS schauen und dort Hardwarevirtualisierung aktivieren – ggf. einen Blick ins Xen-Wiki werfen: wiki.xensource.com/xenwiki/HVM_Compatible_Processors.

grep vm /proc/cpuinfo

Installations-ISO besorgen

Für die Installation benötigen wir ein Verzeichnis für die VM und das Installations-ISO. Legen wir das Verzeichnis und eine leere Festplatte als Sparse File an:

WIN2008DIR=/usr/local/xendomains/win2008
mkdir -p $WIN2008DIR
dd if=/dev/zero bs=1M count=1 of=$WIN2008DIR/xvda.img seek=39999

Das ISO des Windows besorge ich mir von technet.microsoft.com/en-us/evalcenter/dd459137.aspx und kopiere es nach $WIN2008DIR/win2008.iso.

Konfigurationsdatei für die Installation

Meine Konfigurationsdatei /usr/local/xendomains/win2008/xen.cfg für die Installation sieht folgendermaßen aus:

kernel = '/usr/lib/xen-default/boot/hvmloader'
builder='hvm'
memory = 1024
xen_platform_pci=1
# Should be at least 2KB per MB of domain memory, plus a few MB per vcpu.
shadow_memory = 16
name = "win2008"
vif = [ 'type=ioemu, bridge=xenbr0, mac=00:16:17:12:23:01, model=e1000' ]
acpi = 1
apic = 1
disk = [ 'file:/usr/local/xendomains/win2008/xvda.img,xvda,w', 
         'file:/usr/local/xendomains/win2008/win2008.iso,xvdc:cdrom,r' ]
device_model = '/usr/lib/xen-default/bin/qemu-dm'
# boot on floppy (a), hard disk (c) or CD-ROM (d) 
# default: hard disk, cd-rom, floppy
boot="dc"
sdl=0
vnc=1
vncconsole=1
vncpasswd=''
serial='pty'
usbdevice='tablet'

Der erste Start

Nun geht es an den ersten Start:

xm create /usr/local/xendomains/win2008/xen.cfg

Lautet die Ausgabe Error: Domain 'win2008' does not exist. ist ein Blick in die Logdatei /var/log/xen/qemu-dm-win2008.log angeraten. Steht dort etwas wie Could not read keymap file: '/usr/share/qemu/keymaps/en-us' hilft meist ein Softlink:

ln -sf /usr/share/qemu-linaro /usr/share/qemu

Lautet die Ausgabe: Started domain win2008 (id=4) können Sie lokal mit dem VNC Viewer mit der Domain verbinden:

vncviewer localhost

In meinem Fall handelte es sich um einem kopflosen Server. Da musste ich mir den SSH-Port zunächst per Port-Weiterleitung auf den lokalen Rechner holen. 10.76.23.55 ist der Server, auf dem Xen läuft und die DomU eingerichtet werden soll:

ssh -L 5900:localhost:5900 root@10.76.23.55

In einem anderen Terminal kann ich dann auf dem PC, der die SSH-Verbindung initiiert hat die VNC Konsole öffnen: vncviewer localhost. Und bitte keine Panik, wenn während der Installation die VNC-Verbindung mal abreisst. Bei Reboots oder Änderungen der Grafikauflösung ist das normal.

Installation der PV-Treiber

Eine deutlich bessere Performance von Netzwerk und virtuellen Festplatten erhalten Sie nach Installation der GPL PV-Treiber. Sie finden diese unter www.meadowcourt.org/downloads/ Laden Sie das aktuellste gplpv*-Paket für Ihr Windows und installieren Sie dieses. Ist die Installation abgeschlossen, fahren Sie das Windows herunter und ändern Sie die Konfigurationsdatei:

vif = [ 'type=ioemu, bridge=xenbr0, mac=00:16:17:12:23:02, type=paravirtualized' ]
# default: hard disk, cd-rom, floppy
boot="c"

Feintuning zum Schluss

Ist der Windows-Server fertig eingerichtet und das Login mittels rdesktop funktioniert, kann die lokale Serverkonsole per VNC deaktiviert werden:

vnc=0
vncconsole=0

Im Falle eines Falles (Server vergisst Netzwerkeinstellungen o.ä.) muss die betreffende Domain dann natürlich abgewürgt werden und die beiden Parameter müssen wieder auf 1 gesetzt werden. Aus Sicherheitsgründen ist es aber nicht ratsam, die VNC-Konsole dauerhaft zugreifbar zu haben.

Comments are closed.