Ressourcenverwaltung ist von vorrangiger Bedeutung für die Technologie der Betriebssystemvirtualisierung. Innerhalb eines Kernels gibt es eine begrenzte Menge an Ressourcen, die von zahlreichen virtuellen Umgebungen gemeinsam genutzt werden. All diese Ressourcen müssen so verwaltet werden, dass die vielen virtuellen Umgebungen auf einem System nebeneinander existieren können und sich nicht gegenseitig beeinträchtigen.

Das Subsystem zur Ressourcenverwaltung von OpenVZ besteht aus drei Komponenten:
- Zwei-Ebenen-Festplattenquota: Der Administrator eines OpenVZ-Servers kann Festplattenquotas für den Festplattenplatz und die Anzahl an Inodes für jede virtuelle Umgebung festlegen. Das ist die erste Ebene des Festplattenquotas. Auf der zweiten Ebene des Festplattenquotas kann der Administrator einer virtuellen Umgebung ("VE root") Standardwerkzeuge für ein Unix-Quota nutzen und Festplattenquotas pro Benutzer und pro Gruppe festlegen.
- CPU-Planer: Auch der CPU-Planer von OpenVZ besteht aus zwei Ebenen. Auf der ersten Ebene entscheidet er, welche virtuelle Umgebung den Zeittakt erhält und berücksichtigt dabei die CPU-Priorität und Limit-Einstellungen der virtuellen Umgebung. Auf der zweiten Ebene entscheidet der Standard-Linux-Planer welcher Prozess in der virtuellen Umgebung den Zeittakt erhält und nutzt dabei Standard-Prozessprioritäten.
- User Beancounters: Für jede virtuelle Umgebung gibt es eine Menge an Zählern, Begrenzungen und Garantien. Rund 20 Parameter wurden sorgfältig ausgewählt und decken alle Aspekte des Betriebs einer virtuellen Umgebung ab, so dass keine einzelne virtuelle Umgebung eine Ressource übermäßig beanspruchen kann, die für den ganzen Computer begrenzt ist und dadurch eine andere virtuelle Umgebung beeinträchtigt. Bei den aufgezeichneten und kontrollierten Ressourcen handelt es sich hauptsächlich um Speicher und In-Kernel-Objekte wie IPC-Share-Memory-Segmente und Netzwerk-Puffer.

Checkpointing erlaubt die "Live"-Migration einer virtuellen Umgebung auf einen anderen physikalischen Server. Die virtuelle Umgebung wird eingefroren, und ihr kompletter Status wird auf einer Festplattendatei gespeichert. Diese Datei kann dann auf eine andere Maschine transferiert werden, und die virtuelle Umgebung kann dort wiederhergestellt werden. Der gesamte Prozess benötigt nur wenige Sekunden. Aus der Perspektive des Kunden erscheint er wie eine Verzögerung in der Verarbeitung und nicht wie Ausfallzeit, denn die bestehenden Netzwerkverbindungen werden ebenfalls migriert.

OpenVZ-Werkzeuge

OpenVZ besitzt sowohl Kommandozeilen-Tools für die Verwaltung von virtuellen Umgebungen (vzctl) las auch Tools für die Verwaltung von Applikationen (vzpkg). Die Erstellung und das Starten einer neuen virtuellen Umgebung benötigt dann nur zwei Befehle: "vzctl create" und "vzctl start".
Für die Änderung zahlreicher Parameter von virtuellen Umgebungen wird der Befehl "vzctl set" benutzt. Alle Ressourcen, etwa die Größe des virtuellen Speichers einer virtuellen Umgebung, können während der Laufzeit geändert werden. Dies ist bei anderen Virtualisierungstechnologien wie Emulation oder Paravirtualisierung entweder schwierig zu implementieren oder völlig unmöglich.

PC-WELT Marktplatz

16766