Open Source im professionellen Einsatz

Nachteil: Modifizierte Gäste

Ein entscheidender Nachteil bei Xen ist jedoch, dass für die performante Paravirtualisierung das Betriebssystem in den Quellen verfügbar sein muss. Somit lassen sich als Gastsysteme lediglich Linux, Open Solaris und einige BSD-Varianten verwenden. Außerdem hat es der Xen-Hypervisor bisher nicht in den offiziellen Linux-Kernel geschafft, obwohl das wohl nur noch eine Frage der Zeit ist. Inzwischen haben die Xen-Entwickler ihren Code so angepasst, dass er auf das generische Virtualisierungs-API Paravirt Ops zurückgreifen kann, das der Linux-Kernel 2.6.20 eingeführt hat.

Auf diese Weise ist zurzeit auch der Betrieb von Xen-Gastmaschinen unter einem KVM-Hypervisor möglich. Dafür braucht man das Tool Xenner [4]. Das ist vor allem deshalb interessant, weil beispielsweise Fedora seit Version 9 keinen Xen-Dom-0-Kernel mehr bereitstellt. Der Zugriff auf das Paravirt Ops-API aus dem Dom-0-Kernel ist momentan aber nur für den Linux-Kernel 2.6.29 geplant. Gelangen die Patches rechtzeitig in den offiziellen Kernel von Andrew Morton, so wird Fedora 11 auch wieder einen Xen-Dom-0-Kernel anbieten.

Ein weiteres Problem von Xen ist, dass hier immer zwei privilegierte Systeme nebeneinander existieren - der Hypervisor selbst und der Dom-0-Host. Das ist für potenzielle Angreifer nicht uninteressant, weil der Admin so im Bereich Security doppelte Arbeit leisten muss.

KVM im Kommen

Aus diesen und anderen Gründen, findet in letzter Zeit eine andere Virtualisierungslösung mehr Beachtung. Im Februar 2007 hat Linus Torvalds KVM (Kernel-based Virtual Machine) in den offiziellen Linux-Kernel 2.6.20 aufgenommen. Bei KVM handelt es sich um ein Kernelmodul, das ebenfalls auf den Virtualisierungssupport der eingesetzten CPU angewiesen ist (Abbildung 3). Wie bei der Full Virtualisation mit Xen benötigt KVM eine Intel-VT- oder AMD-V-CPU. Um den erweiterten Befehlssatz des eingesetzten Prozessors nutzen zu können, braucht der KVM-Hypervisor jeweils ein eigenes Kernelmodul, »kvm-intel« beziehungsweise »kvm-amd«.

Abbildung 3: Bei KVM ist der Linux-Kernel selbst der Hypervisor, es gibt kein weiteres privilegiertes System.

Abbildung 3: Bei KVM ist der Linux-Kernel selbst der Hypervisor, es gibt kein weiteres privilegiertes System.

Anders als bei Xen ist der Hypervisor aber nicht unterhalb des Betriebssystems angesiedelt, sondern das Betriebssystem selbst, in Gestalt des KVM-Kernelmoduls, ist hier der Hypervisor. Die virtuellen Maschinen laufen als reguläre Userspace-Prozesse und lassen sich über die Gerätedatei »/dev/kvm« ansprechen. Als Emulator für I/O-Hardware kommt wieder ein modifiziertes Qemu zum Einsatz. Für den performanten Zugriff auf bestimmte Subsysteme existieren auch hier spezielle Treiber, die den Hypervisor direkt ansprechen. Unter KVM heißen sie Virtio-Treiber.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 7 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook