Hetzner - DokuWiki

OpenSolaris Xen einrichten

Inhaltsverzeichnis

Installation

OpenSolaris kann als Xen dom0 betrieben werden. Installieren Sie hierzu zunächst die folgenden notwendigen Pakete:

$ pfexec pkg install SUNWvirt-manager SUNWxvm SUNWvdisk SUNWvncviewer

Passen Sie anschließend Ihre GRUB-Konfiguration an:

/rpool/boot/grub/menu.lst (vorher)

splashimage /boot/grub/splash.xpm.gz
background 215ECA
timeout 5
default 0
#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
#---------------------END BOOTADM--------------------
title opensolaris
findroot (pool_rpool,0,a)
bootfs rpool/ROOT/opensolaris
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS,console=text
module$ /platform/i86pc/$ISADIR/boot_archive
#============ End of LIBBE entry =============

/rpool/boot/grub/menu.lst (nachher)

background 215ECA
timeout 5
default 0
#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
#---------------------END BOOTADM--------------------
title opensolaris
findroot (pool_rpool,0,a)
bootfs rpool/ROOT/opensolaris
kernel$ /boot/$ISADIR/xen.gz
module$ /platform/i86xpv/kernel/$ISADIR/unix /platform/i86xpv/kernel/$ISADIR/unix -B $ZFS-BOOTFS,console=text
module$ /platform/i86pc/$ISADIR/boot_archive
#============ End of LIBBE entry =============

Starten Sie danach OpenSolaris neu:

$ pfexec reboot

Anschließend müssen Sie noch einige Dienste für Xen aktivieren:

$ pfexec svcadm enable -r xvm/virtd
$ pfexec svcadm enable -r xvm/domains

Folgende Fehlermeldung können Sie hierbei ignorieren:

svcadm: svc:/system/filesystem/local depends on svc:/network/physical, which has multiple instances.

Weitere Informationen zu Xen unter OpenSolaris finden Sie hier.

Netzwerkkonfiguration

Für die Netzwerkkonfiguration bieten sich drei Möglichkeiten an:

  • Bridging: separate MAC-Adresse pro domU notwendig (Flexipack erforderlich)
  • Routing: In der domU wird die IP-Adresse der dom0 als Gateway konfiguriert (Point-to-Point)
  • 1-zu-1 NAT: domUs erhalten RFC 1918-IP-Adressen, die in der dom0 auf die öffentlichen IP-Adressen "gemappt" werden (Erleichtertes Setup bei Windows-domUs; domUs können sich untereinander jedoch nur über die privaten IP-Adressen erreichen)

Im Folgenden soll auf die letzten beiden Möglichkeiten genauer eingegangen werden. Das gezeigte Setup basiert darauf, dass Sie bereits eine manuelle Netzwerkkonfiguration gemäß diesem Artikel eingerichtet haben.

Erstellen Sie zunächst den virtuellen Switch, mit dem dann anschließend die domUs verbunden werden:

$ pfexec dladm create-etherstub xenbr0

(Etherstubs und VNICs sind standardmäßig persistent und werden daher auch nach einem Reboot automatisch wieder eingerichtet.)

Achten Sie beim Anlegen der domUs später darauf, dass diese mit dem Switch verbunden werden. Hierzu kann z.B. bei "virt-install" der Parameter "--bridge=xenbr0" verwendet werden.

Weiterhin benötigen Sie einen Adapter, über dessen IP-Adresse die domUs Ihre Pakete routen:

$ pfexec dladm create-vnic -l xenbr0 xen0

Vergeben Sie für den xen0-Adapter eine IP-Adresse:

/etc/hostname.xen0

192.168.10.1/24

Laden Sie mit folgendem Befehl Ihre Netzwerkkonfiguration neu:

$ pfexec svcadm restart physical:default

Point-to-Point Routing

In den domUs können Sie nun - sofern diese für Ethernet-Adapter Point-to-Point-Gateways unterstützen (wie z.B. unter Linux der Fall) 192.168.10.1 als Gateway verwenden.

NAT

Bei bestimmten Betriebssystemen ist die Konfiguration von Point-to-Point-Links nicht möglich. In diesem Fall können Sie alternativ NAT verwenden. Der gleichzeitigen Verwendung von P-t-P-Routing und NAT auf demselben Xen-Server spricht nichts entgegen.

Aktivieren Sie zunächst IPv4-Forwarding und den "ipfilter"-Dienst, der zur Verwaltung der NAT-Regeln notwendig ist:

$ pfexec routeadm -u -e ipv4-forwarding
$ pfexec svcadm enable ipfilter

Richten Sie anschließend für Ihre domUs entsprechende NAT-Regeln ein:

/etc/ipf/ipnat.conf (neu anlegen)

# vm: vm-1
bimap rge0 192.168.10.5 -> 188.40.x.y/32

# vm: vm-2
bimap rge0 192.168.10.10 -> 188.40.z.a/32

# fallback
map rge0 192.168.10.0/24 -> 0/32

(rge0 ist hierbei der Name Ihres Netzwerk-Interfaces. Den genauen Namen können Sie mit "ifconfig -a" herausfinden.)

Ihre ipnat-Regeln können Sie mit folgendem Befehl neu-laden:

$ pfexec ipnat -C -f /etc/ipf/ipnat.conf


© 2012. Hetzner Online AG. Alle Rechte vorbehalten.