"Virtualisierung von und mit Oracle?"
Auf diese Frage erhält man - je nachdem wen man fragt - eine Reihe von unterschiedlichen Antworten, vor allem:
"Oracle VM"
"VirtualBox"
"Zonen" bzw. "Container"
Alles richtig - aber ist "Oracle VM" inzwischen nicht ein Oberbegriff? Und wo liegen eigentlich die Unterschiede, und welche Lösung ist für welchen Einsatzzweck sinnvoll?
Im folgenden möchte ich daher - zumindest für den Bereich Server und Betriebssysteme - kurz die verfügbaren Möglichkeiten von Oracle aufzählen und einige interessante Fakten dazu nennen.
Oracle VM (x86) ist bekanntermassen eine Lösung für Servervirtualisierung: Ein auf dem "bare metal" laufender Hypervisor ermöglicht das Betreiben mehrerer komplett eigenständiger Virtueller Maschinen auf der gleichen physischen Hardware. Weniger bekannt ist vielen jedoch, dass es neben dem "Standalone-Betrieb" zur Virtualisierung von z.B. Datenbankservern auch noch weitere Szenarien gibt in denen Oracle VM zum Einsatz kommt:
- So ist Oracle VM (x86) z.B. die Basis für Virtualisierung in einigen "Engineered Systems":
Sowohl auf den Oracle Exalogic als auch auf den Oracle Exalytics Maschinen kann optional Oracle VM eingesetzt werden, um eine größere Flexibilität bei der Aufteilung von Ressourcen zu gewährleisten.
Seit relativ kurzer Zeit ist es außerdem möglich, Oracle VM auch auf der Oracle Database Appliance (ODA) einzusetzen. Dadurch wird es möglich, die ODA nicht nur als reine "Datenbankmaschine" zu betreiben, sondern auf der gleichen Hardware auch noch (z.B.) VMs mit Application Servern laufen zu lassen, um so alle Teile einer Gesamtanwendung in einer Appliance zu betreiben. Dies ist besonders für Oracle-Partner mit eigenen Lösungen sehr interessant. - OVM (x86) ist außerdem die Basis für die "Infrastructure as a Service" (IaaS)-Features im Enterprise Manager Cloud Control.
Neben Oracle VM (x86) gibt es auch noch das "Schwesterprodukt" Oracle
VM (SPARC), welches vielen Nutzern von Sun Hardware noch als "Logical
Domains" (LDoms) in Erinnerung sein dürfte. (Wer sich näher mit OVM (SPARC) befassen möchte, sollte übrigens mal auf dem Blog meines Kollegen Stefan Hinker vorbeischauen. Dort finden sich häufig Tipps und Artikel zu diesem Thema - größtenteils auch in deutscher Sprache.)
Oracle VM VirtualBox hingegen ist nicht nur "Virtualisierung auf dem Desktop" - also die Möglichkeit VMs "auf" einem bereits installierten Windows/Linux/Mac-System laufen zu lassen - sondern wird auch bei "Virtualisierung VON Desktops" eingesetzt. Das Stichwort dazu lautet VDI (Virtual Desktop Infrastructure.) Wie dies im einzelnen funktioniert und welche Produkte von Oracle hierfür zur Verfügung stehen, wird in Kürze Bestandteil eines Gastartikels auf diesem Blog sein.
Bei "Containern" (manchmal auch Zonen genannt) reden wir hingegen nicht über Virtualisierung von Servern, sondern über Virtualisierung innerhalb eines Betriebssystems: Verschiedene Programme "sehen" jeweils ein "eigenes" OS, obwohl sie in Wirklichkeit alle innerhalb des gleichen Betriebssystems laufen.
Diese Fähigkeit ist schon lange eine beliebte Möglichkeit, in Oracle Solaris verschiedene voneinander unabhängige Umgebungen mit sehr geringem Overhead auf einer einzigen physischen Maschine zu betreiben, und deren Ressourcen-Nutzung zentral zu steuern.
Weniger bekannt ist, dass es inzwischen mit den "Linux Containern" (LXC) auch für Linux eine Möglichkeit gibt, vergleichbares zu erreichen. Auch zu LXC wird es demnächst einen Artikel auf diesem Blog geben.