Systemverwaltungshandbuch: Oracle Solaris Container - Ressourcenverwaltung und Solaris Zones

Konfigurationsdaten in einer Branded Zone

Daten einer Zonenkonfiguration setzen sich aus zwei Arten von Einheiten zusammen: Ressourcen und Eigenschaften. Jede Ressource weist einen Typ auf, und jede Ressource verfügt über ein Set mit mindestens einer Eigenschaft. Die Eigenschaften haben Namen und Werte. Die Eigenschaftensets hängen vom Ressourcentyp ab.

Ressourcen- und Eigenschaftentypen

Ressourcen- und Eigenschaftentypen lassen sich wie folgt beschreiben:

Zonenname

Der Zonenname identifiziert die Zone gegenüber dem Konfigurationsdienstprogramm. Für Zonennamen gelten die folgenden Regeln:

  • Jede Zone muss über einen eindeutigen Namen verfügen.

  • Der Zonenname ist abhängig von der Groß-/Kleinschreibung.

  • Ein Zonenname muss mit einem alphanumerischen Zeichen beginnen.

    Der Name kann alphanumerische Zeichen, Unterstriche (_), Bindestriche (-) und Punkte (.) enthalten.

  • Der Name darf nicht mehr als 64 Zeichen umfassen.

  • Der Name global und alle Namen, die mit SUNW beginnen, sind reserviert und können nicht verwendet werden.

zonepath

Die Eigenschaft zonepath ist der Pfad zum Stammverzeichnis (Root) der Zone. Jede Zone verfügt über einen Root-Verzeichnispfad, der relativ zum Root-Verzeichnis der globalen Zone angegeben ist. Während der Installation muss die Sichtbarkeit des globalen Zonenverzeichnisses eingeschränkt sein. Der Eigentümer muss root mit dem Modus 700 sein.

Der Root-Verzeichnispfad der nicht-globalen Zone befindet sich eine Ebene niedriger. Das Root-Verzeichnis der Zone weist den gleichen Eigentümer und Berechtigungen wie das Root-Verzeichnis (/) der globalen Zone auf. Der Eigentümer des Zonen-Verzeichnisses muss root mit dem Modus 755 sein. Diese Verzeichnisse werden automatisch mit den richtigen Berechtigungen erstellt. Es ist keine Überprüfung durch den Zonenadministrator erforderlich. Diese Hierarchie stellt sicher, dass das Dateisystem einer nicht-globalen Zone nicht von nicht-berechtigten Benutzern in der globalen Zone durchlaufen werden kann.

Pfad 

Beschreibung 

/home/export/lx-zone

zonecfg zonepath

/home/export/lx-zone/root

Root der Zone 

/home/export/lx-zone/root/dev

Für die Zone erstellte Geräte 

Weitere Informationen zu diesem Thema finden Sie unter Durchlaufen von Dateisystemen.


Hinweis –

Sie können eine Zone an einen anderen Speicherort im gleichen System verschieben, indem Sie mit dem Unterbefehl move von zoneadm einen neuen, vollständigen zonepath angeben. Anweisungen hierzu finden Sie unter Solaris 10 11/06: Verschieben einer nicht-globalen Zone.


autoboot

Wenn diese Eigenschaft auf „true“ gesetzt ist, wird die Zone bei einem Neustart der globalen Zone automatisch gebootet. Beachten Sie, dass wenn der Zonenservice svc:/system/zones:default deaktiviert ist, in die Zone ungeachtet der Einstellung für diese Eigenschaft nicht automatisch gebootet wird. Sie können den Zonenservice mit dem in der Manpage svcadm(1M) beschriebenen Befehl svcadm aktivieren:


global# svcadm enable zones
bootargs

Mit dieser Eigenschaft wird ein Boot-Argument für die Zone eingerichtet. Das Boot-Argument wird angewendet, sofern es nicht durch die Befehle reboot, zoneadm boot oder zoneadm reboot außer Kraft gesetzt wird. Lesen Sie dazu Boot-Argumente in einer Branded Zone.

pool

Mit dieser Eigenschaft wird die Zone einem bestimmten Resource Pool auf dem System zugewiesen. Mehrere Zonen können die Ressourcen eines Pools nutzen. Lesen Sie auch Verwenden der Ressource dedicated-cpu.

limitpriv

Diese Eigenschaft dient zur Angabe einer anderen Berechtigungsmaske als der Standardmaske. Lesen Sie dazu Berechtigungen in einer nicht-globalen Zone.

Berechtigungen werden hinzugefügt, indem Sie den Berechtigungsnamen mit oder ohne einem einleitenden priv_ angeben. Berechtigungen werden ausgeschlossen, indem Sie einen Bindestrich (-) oder ein Ausrufezeichen (!) vor dem Namen eingeben. Die Werte der Berechtigung werden durch Kommata voneinander getrennt und stehen zwischen Anführungszeichen ().

Die speziellen Berechtigungssets none, allund basic erweitern die normalen Definitionen. Genauere Informationen hierzu finden Sie unter priv_str_to_set(3C) Da die Zonenkonfiguration in der globalen Zone stattfindet kann das spezielle Berechtigungsset zone nicht verwendet werden. Das standardmäßige Berechtigungsset wird häufig durch Hinzufügen oder Entfernen von Berechtigungen geändert. Mit dem Spezialset defaultkönnen Sie die standardmäßigen Berechtigungen wieder herstellen. Wenn default am Anfang der Eigenschaft limitpriv steht, wird sie zum Standardset erweitert.

Der folgende Eintrag fügt die Fähigkeit hinzu, die Systemuhr einzustellen und entfernt die Fähigkeit, Internet Control Message Protocol (ICMP)-Pakete im Ursprungszustand zu senden:


global# zonecfg -z userzone
zonecfg:userzone> set limitpriv="default,sys_time,!net_icmpaccess"

Enthält das Berechtigungsset einer Zone eine nicht zulässige Berichtigung, fehlt eine erforderliche Berechtigung oder umfasst es eine unbekannte Berechtigung, schlägt der Versuch, die Zone zu überprüfen, fertig zu stellen oder zu booten fehl und es wird eine Fehlermeldung angezeigt.

scheduling-class

Diese Eigenschaft legt die Scheduling-Klasse der Zone fest. Weitere Informationen und Tipps finden Sie unter Scheduling-Klasse in einer Zone.

dedicated-cpu

Diese Ressource reserviert während der Ausführung einen bestimmten Bereich der Systemprozessoren für die Zone. Die Ressource dedicated-cpu stellt Grenzwerte für ncpus und optional für importance bereit . Weitere Informationen finden Sie unter Verwenden der Ressource dedicated-cpu.

capped-memory

Diese Ressource gruppiert die verwendeten Eigenschaften, wenn das Memory Capping für die Zone eingesetzt wird. Die Ressource capped-memory bietet Grenzwerte für den reellen (physical), ausgelagerten (swap) und gesperrten (locked) Speicher. Mindestens eine dieser Eigenschaften muss angegeben werden.

fs

Jede Zone kann über verschiedene Dateisysteme verfügen, die eingehängt werden, wenn die Zone vom Status „installed“ in den Status „ready“ übergeht. Die Dateisystemressource gibt den Pfad zum Einhängepunkt des Dateisystems an. Weitere Informationen zur Verwendung von Dateisystemen in Zonen finden Sie unter Dateisysteme und nicht-globale Zonen.

net

Die Netzwerkschnittstellenressource ist der virtuelle Schnittstellenname. Jede Zone kann über mehrere Netzwerkschnittstellen verfügen, die dann eingerichtet sind, wenn die Zone vom Status „installed“ in den Status „ready“ übergeht.

In einer lx Branded Zone werden ausschließlich Shared IP-Netzwerkkonfigurationen unterstützt.

rctl

Die Ressource rctl wird für zonenweite Resource Controls verwendet. Die Resource Controls werden aktiviert, wenn die Zone vom Status „installed“ in den Status „ready“ übergeht.


Hinweis –

Wie zonenweite Resource Controls mit dem Unterbefehl set globaler_Eigenschaftenname von zonefig anstelle der Ressource rctl konfiguriert werden, können Sie unter So konfigurieren Sie eine lx Branded Zone nachlesen.


attr

Dieses generische Attribut kann für Benutzerkommentare oder von anderen Untersystemen verwendet werden. Die Eigenschaft Name eines attr muss mit einem alphanumerischen Zeichen beginnen. Die Eigenschaft name kann alphanumerische Zeichen, Bindestriche (-) und Punkte (.) enthalten. Attributnamen, die mit zone beginnen, sind für die Verwendung durch das System reserviert.

Ressourcentyp-Eigenschaften in der lx Branded Zone

Auch Ressourcen besitzen Eigenschaften, die konfiguriert werden können. Die folgenden Eigenschaften sind den aufgeführten Ressourcentypen zugeordnet.

dedicated-cpu

ncpus, importance

Geben Sie die Anzahl der CPUs und optional die relative Wichtigkeit des Pools an. Das folgende Beispiel gibt einen CPU-Bereich an, der von der Zone my-zone verwendet werden kann. importance wird ebenfalls gesetzt.


zonecfg:my-zone> add dedicated-cpu
zonecfg:my-zone:dedicated-cpu> set ncpus=1-3
zonecfg:my-zone:dedicated-cpu> set importance=2
zonecfg:my-zone:dedicated-cpu> end
capped-cpu

ncpus

Legt die Anzahl der CPUs fest. Im folgenden Beispiel wird für die Zone lx-zone ein CPU-Grenzwert von 3.5 CPUs festgelegt.


zonecfg:lx-zone> add capped-cpu
zonecfg:lx-zone:capped-cpu> set ncpus=3.5
zonecfg:lx-zone:capped-cpu> end
capped-memory

physical, swap, locked

Diese Ressource gruppiert die verwendeten Eigenschaften, wenn das Memory Capping für die Zone eingesetzt wird. Das folgende Beispiel gibt die Arbeitsspeicher-Grenzwerte für die Zone my-zone an. Jeder Grenzwert ist optional, es muss aber mindestens ein Grenzwert eingerichtet sein.


zonecfg:my-zone> add capped-memory
zonecfg:my-zone:capped-memory> set physical=50m
zonecfg:my-zone:capped-memory> set swap=100m
zonecfg:my-zone:capped-memory> set locked=30m
zonecfg:my-zone:capped-memory> end
fs

dir, special, raw, type, options

Die Zeilen im folgenden Beispiel fügen schreibgeschützten Zugriff auf CD- oder DVD-Medien in einer nicht-globalen Zone hinzu. Das Dateisystem wird als Loopback-Mount mit den Optionen ro,nodevices (schreibgeschützt und ohne Geräte) in der nicht-globalen Zone eingehängt.


zonecfg:lx-zone> add fs
zonecfg:lx-zone:fs> set dir=/cdrom
zonecfg:lx-zone:fs> set special=/cdrom
zonecfg:lx-zone:fs> set type=lofs
zonecfg:lx-zone:fs> add options [ro,nodevices]
zonecfg:lx-zone:fs> end

Beachten Sie, dass Section 1M Manpages für Einhängeoptionen zur Verfügung stehen, die nur für ein bestimmtes Dateisystem gelten. Die Namen dieser Manpages müssen die Syntax mount_Dateisystem aufweisen.

net

address, physical, defrouter,

Im folgenden Beispiel wird einer Zone die IP-Adresse 192.168.0.1 hinzugefügt. Als physikalische Schnittstelle wird eine bge0-Karte verwendet, und es wird der Standard-Router eingestellt.


zonecfg:lx-zone> add net
zonecfg:lx-zone:net> set address=192.168.0.1
zonecfg:lx-zone:net> set physical=bge0
zonecfg:lx-zone:net> set defrouter=10.0.0.1
zonecfg:lx-zone:net> end

Hinweis –

Um zu ermitteln, welche physikalische Schnittstelle verwendet werden muss, geben Sie ifconfig -a auf dem System ein. Jede Zeile der Ausgabe (mit Ausnahme der Loopback-Treiberzeilen) beginnt mit dem Namen der im System installierten Karte. Zeilen, die LOOPBACK in den Beschreibungen enthalten, gelten nicht für Karten.


rctl

name, value

Die verfügbaren zonenweiten Resource Controls sind unter Zonenweite Resource Controls in einer lx Branded Zone beschrieben.


zonecfg:lx-zone> add rctl
zonecfg:lx-zone:rctl> set name=zone.cpu-shares
zonecfg:lx-zone:rctl> add value (priv=privileged,limit=10,action=none)
zonecfg:lx-zone:rctl> end

zonecfg:lx-zone> add rctl
zonecfg:lx-zone:rctl> set name=zone.max-lwps
zonecfg:lx-zone:rctl> add value (priv=privileged,limit=100,action=deny)
zonecfg:lx-zone:rctl> end
attr

name, type, value

Im folgenden Beispiel wird ein Kommentar über eine Zone hinzugefügt.


zonecfg:lx-zone> add attr
zonecfg:lx-zone:attr> set name=comment
zonecfg:lx-zone:attr> set type=string
zonecfg:lx-zone:attr> set value="Production zone"
zonecfg:lx-zone:attr> end

Sie können den Unterbefehl export verwenden, um eine Zonenkonfiguration über das standardmäßige Ausgabegerät zu drucken. Die Konfiguration wird in einem Format gespeichert, das in einer Befehlsdatei verwendet werden kann.