Für den Openvz-Test zerrt das Laborteam einen bereits in die Jahre gekommenen Intel-OEM-Server aus der Ecke hervor. Der 1-HE-Rechner arbeitet mit zwei 2,8-GHz-Xeon-CPUs (Netburst) und 2 GByte RAM. Als Laufwerk genügt für das System eine 160-GByte-P-ATA-Platte. Die Container bekommen später ein iSCSI-SAN-Laufwerk zugeordnet.
Der Server erhält zunächst die aktuelle Centos-Version 5.2. Einen besonderen Kernel braucht der Administrator nicht auszusuchen, dieser wird später ohnehin durch den Openvz-Kernel ersetzt. Nach der Grundinstallation spielt das Test-Team mit »yum update« zuerst einmal alle nötigen Updates ein.
Bei der Installation von Openvz hält sich das Laborteam weitestgehend an das sehr übersichtliche Howto-Dokument auf http://www.how
toforge.com/installing-and-using-openvz-on-
centos5.2. Von der Openvz-Site lädt der Systemverwalter die yum-Repository-Erweiterung und den GPG-Schlüssel:
cd /etc/yum.repos.d
wget http://download.openvz.org/openvz.repo
rpm --import http://download.openvz.org/
RPM-GPG-Key-OpenVZ
Der Paketmanager yum erhält dadurch Zugriff, auf die vom Openvz bereit gestellten Kernel. Eine Liste erhält der Anwender über: yum search ovzkernel
Für die simple x86-Labormaschine genügt der reguläre x86-Kernel, zusammen mit den vz-Tools:
yum install ovzkernel vzctl vzquota
Die Installation fügt den Openvz-Kernel an die erste Stelle im Menü des Boot-Loaders Grub. Vor dem Neustart sollte der Verwalter noch einige Änderungen in der /etc/sysctl.conf vornehmen, damit es keine Probleme mit den virtuellen Lan-Adaptern gibt (siehe Howto).
Nach einem Neustart ist die Systemvirtualisierung fast startklar. Noch fehlen die Vorlagen aus welchen sich VEs mit verschiedenen Distributionen erstellen lassen. Diese liegen auf http://download.openvz.org/temp
late/precreated/ und lassen sich über den Browser oder wget herunterladen und in /vz/template/cache sichern.
Mit ein paar wenigen Kommandos lädt das Labor-Team die Templates von Centos sowie Ubuntu 8.10 und erstellt zwei VEs.
vzctl create 1 --ostemplate centos-5-i386-default
vzctl create 2 --ostemplate ubuntu-8.10-x86
vzctl set 1 --hostname vz21.nwc.local --ipadd 10.11.8.21 --nameserver 10.11.2.1 --save
vzctl set 2 --hostname vz22.nwc.local --ipadd 10.11.8.22 --nameserver 10.11.2.1 --save
vzctl start 1
vzctl start 2
Das Root-Password lässt sich auf verschiedene Arten setzen:
vzctl exec 1 passwd
oder auch
vzctl enter 2
passwd
Anschließend kann sich der Verwalter an beiden VEs über SSH anmelden und in den VPS Dienste und Applikationen einrichten. Die installierten VEs listet das Tool:
vzlist –a
Neben dem reinen OS-Template kann der Verwalter bei der VE-Erstellung auch noch ein Ressource-Template angeben. Diese regeln unter anderem den »Fair Scheduler«. Unter normalen Umständen würden sich alle Tasks eines Systems die CPU-Zeit gleichmäßig teilen. Eine VE mit mehreren Tasks wäre dabei im Vorteil gegenüber VEs mit wenigen Tasks. Fair-Share kümmert sich darum, dass die VEs gleichberechtigte CPU-Zeiten erhalten.
Die komplette Konfiguration einer VE landet in /etc/vz/conf/<VE-id>.conf. Dort liegen auch die Ressource-Templates wie »basic« und »light«.
Über vzmigrate kann der Verwalter einzelne Container von einem physischen Openvz-Host auf einen anderen verschieben. Diese Migration kann auch bei laufender VE erfolgen. Ein entsprechender Mechanismus friert die VE bei der Übertragung für kurze Zeit ein.
Fazit: Openvz lässt sich mit relativ wenigen Handgriffen einrichten und verwenden. Die Bedienung der VEs über die Kommandozeilen-Tools gestaltet sich recht einfach. Wer an den vielen kleinen Rädchen zur Ressource-Kontrolle drehen möchte, muss dies aber über aufwändige Kommandozeilen oder direkt in der conf-Datei erledigen. Zudem gibt es freie Gui-Tools wie »WebVZ«, welche den Umgang mit den Containern erleichtern.
Im Test arbeiten die VEs zuverlässig und mit guter Performance. Die Ressource-Belastung beschränkt sich dabei auf die aktiven Tasks der VEs. Openvz ist eine gute Lösung für erfahrene Linux-Administratoren, welche viele Dienste in voneinander abgeschotteten Umgebungen betreiben wollen. Die Container eigenen sich für Web-, Datenbank- aber auch Mail- und Groupware-Server.