Neuerungen im Betriebssystem Solaris 10

Software-Partitionierungstechnologie Solaris Zones

Dieses Leistungsmerkmal wurde mit Software Express 2/04 eingeführt. Der neue Funktionsumfang für Zones wurde mit Software Express 7/04 eingeführt.

Solaris Zones, eine Komponente der Solaris Containers-Umgebung, ist eine Software-Partitionierungstechnologie mit der Betriebssystemdienste virtualisiert werden sowie eine isolierte und sichere Umgebung zum Ausführen von Anwendungen bereitgestellt wird. Eine Zone ist eine innerhalb einer einzelnen Instanz des Betriebssystems Solaris erzeugte virtualisierte Betriebssystemumgebung. Einfach ausgedrückt stellen Zonen die Solaris-Standardschnittstellen und -Anwendungsumgebung bereit. Da sie ohne eine neue ABI oder API auskommen, müssen die Anwendungen nicht portiert werden.

Jede Zone kann eine benutzerdefinierte Gruppe von Diensten zur Verfügung stellen. Zonen sind ideal für Umgebungen mit zahlreichen Anwendungen auf einem einzigen Server geeignet. Innerhalb einer Zone lässt sich die Nutzung der verfügbaren Systemressourcen durch die Anwendungen zusätzlich mit Ressourcenverwaltungsfunktionen steuern.

Sie können sich eine Zone wie eine Schachtel vorstellen. In einer solchen Schachtel können eine oder mehrere Anwendungen ausgeführt werden, ohne dass sich dies auf das restliche System auswirkt. Durch die Isolierung der Anwendungen wird verhindert, dass Prozesse, die in einer Zone laufen, Prozesse in anderen Zonen überwachen oder in sie eingreifen. Selbst ein in einer Zone laufender Prozess mit Superuser-Berechtigungsnachweisen kann die Aktivität in anderen Zonen weder verfolgen noch beeinflussen.

Die Instanz des Betriebssystems Solaris stellt die globale Zone dar. Die globale Zone gilt sowohl als Standardzone des Systems als auch als Zone für die systemweite Administrationssteuerung. Ein Administrator kann aus der globalen Zone heraus eine oder mehrere nicht-globale Zonen erstellenn. Die so erstellten nicht-globalen Zonen lassen sich von einzelnen Zonenadministratoren verwalten. Die Berechtigungen eines Zonenadministrators sind auf eine nicht-globale Zone begrenzt.

Mit nicht-globalen Zonen kann nahezu jede beliebige Isolationsstufe erreicht werden. Zonen benötigen keine eigens für sie zuständigen CPUs, realen Geräte oder Bereiche des realen Hauptspeichers. Diese Ressourcen lassen sich entweder durch Multiplexing über mehrere Zonen derselben Domain bzw. desselben Systems verteilen oder mithilfe der im Betriebssystem verfügbaren Ressourcenverwaltungsfunktionen den einzelnen Zonen gezielt zuweisen. Selbst ein kleines System mit nur einem Prozessor ist in der Lage, mehrere gleichzeitig ausgeführte Zonen zu unterstützen.

Die Prozessisolierung ist dadurch gegeben, dass ein Prozess nur die in derselben Zone laufenden Prozesse erkennen und nur ihnen Signale senden kann.

Für eine grundlegende Kommunikation zwischen den Zonen wird jeder Zone mindestens eine logische Netzwerkschnittstelle zur Verfügung gestellt. Über eine jeder Zone zugewiesene, eigene IP-Adresse oder mithilfe der Joker-Adresse können sich Anwendungen, die auf demselben System in unterschiedlichen Zonen ausgeführt werden, mit demselben Netzwerkport verbinden. Für eine Anwendung, die in einer Zone ausgeführt wird, ist der Netzwerkverkehr einer anderen Zone nicht sichtbar. Diese Isolierung ist gegeben, obwohl die jeweiligen Datenpaketströme über dieselbe physische Schnittstelle übertragen werden.

Jede Zone erhält einen Anteil der Dateisystemhierarchie. Da jede Zone auf ihren eigenen Teilstrang in der Dateisystemhierarchie begrenzt ist, kann ein Vorgang in einer bestimmten Zone nicht auf die Festplattendaten eines anderen Vorgangs in einer anderen Zone zugreifen.

Dateien, die von Namen-Services verwendet werden, befinden sich in der einer Zone eigenen Root-Dateisystemansicht. Daraus folgt, dass die Namen-Services in den verschiedenen Zonen voneinander isoliert sind und unterschiedlich konfiguriert werden können.

Informationen zum Konfigurieren und Einsatz von Zonen auf Ihrem System finden Sie im Systemverwaltungshandbuch: Solaris Container – Ressourcenverwaltung und Solaris Zones.