Ab heute gibt es Oracle WebLogic Server on JRockit Virtualization Edition als Download. Vor ein paar Wochen gab es bereits ein Meldung bei heise.de zu neuen Java-Virtualisierungswerkzeugen von Oracle - Oracle präsentiert Java-Virtualisierungswerkzeuge. Die technische Basis für dieses Produkt wurde Ende 2006 von der Firma BEA als Liquid VM angekündigt (theserverside.com - JRockit's Liquid VM could be the first real Java OS). Hinter der JRockit Virtualization Edition steckt der Ansatz eine Java VM direkt auf virtualisierter Hardware, ohne Betriebssystem-Schicht, laufen zu lassen. Einen ähnlichen Ansatz stellt das Projekt JNode.org (Java New Operating System Design Effort) dar.
Oracle liefert die JRockit Virtualization Edition zusammen mit Weblogic als 370 MB grosses Zip-File. Darin sind folgende Dateien enthalten:
# unzip -t wlsvePackage.zip Archive: wlsvePackage.zip testing: wlsve/ OK testing: wlsve/system.img OK testing: wlsve/vm.cfg OK testing: wlsveimagetool.jar OK testing: README.txt OK testing: wlsve_medrec_domain_with_odb.pdf OK testing: THIRDPARTYLICENSEREADME.txt OK
Hauptbestandteil ist das Disk-Image system.img
$ qemu-img info wlsve/system.img image: wlsve/system.img file format: raw virtual size: 1.0G (1073741824 bytes) disk size: 1.0G
Als Dateisystem wird in diesem Disk-Image ext2 verwendet, die Disk lässt sich daher unter Linux ohne Schwierigkeiten direkt mounten.
# mount -o loop wlsve/system.img /mnt # cd /mnt # ls -l total 20 drwx------ 8 root root 4096 2010-04-14 02:48 application drwx------ 3 root root 4096 2010-04-14 02:49 boot drwx------ 8 root root 4096 2010-04-14 02:49 jrockitve drwx------ 2 root root 4096 2010-04-14 02:48 lost+found -rw------- 1 root root 361 2010-04-14 02:49 VERSION
Für den Betrieb einer Virtuellen-Maschine mit JRockit VE wird eigentlich Oracle VM benötigt. In einem ersten Test ließ sich das Disk-Image aber auch in einer normalen Xen-Umgebung booten. Hierzu wurde die Konfigurations-Datei vm.cfg mit folgendem Inhalt versehen:
name="wlsve01" bootloader="/usr/bin/pygrub" memory=1024 disk=['tap:aio:/var/nfs/system.img,sda1,w'] vif=['bridge=xenbr0']
Der Start der Xen-Domain erfolgt dann wie gewohnt mit den entsprechenden Xen-Befehlen.
# xm create -c vm.cfg