Navigationslinks überspringen | |
Druckansicht beenden | |
![]() |
SystemAdministrationshandbuch: Oracle Solaris Container - RessourcenAdministration und Solaris Zones Oracle Solaris 10 1/13 Information Library (Deutsch) |
1. Einführung in Solaris 10-RessourcenAdministration
2. Einführung in Projekte und Aufgaben
3. Verwalten von Projekten und Aufgaben (Vorgehen)
4. Einführung in das Extended Accounting
5. Verwalten des Extended Accounting (Vorgehen)
6. Einführung in die Resource Controls
7. Verwalten von Resource Controls (Vorgehen)
8. Einführung in den Fair Share Scheduler
9. Verwalten des Fair Share Scheduler (Vorgehen)
10. Einführung in die Steuerung des reellen Arbeitsspeichers mithilfe des Resource Capping Daemons
11. Verwalten des Resource Capping Daemons (Vorgehen)
12. Einführung in Resource Pools
13. Erstellen und Verwalten von Resource Pools (Vorgehen)
14. Beispiel für die Konfiguration der RessourcenAdministration
15. Resource Controls in der Solaris Management-Konsole
16. Einführung in Solaris Zones
17. Einführung in die Konfiguration einer nicht-globalen Zone
18. Planen und Konfigurieren von nicht-globalen Zonen (Vorgehen)
Planen und Konfigurieren einer nicht-globalen Zone (Übersicht der Schritte)
Bewerten des aktuellen System-Setups
Erforderlicher Festplattenspeicher
Festlegen des Zonen-Hostnamens und Beziehen der Netzwerkadresse
Netzwerkadresse in einer Shared IP-Zone
Netzwerkadresse einer IPv4-Zone
Netzwerkadresse einer IPv6-Zone
Netzwerkadresse in einer Exclusive IP-Zone
Konfigurieren, Prüfen und Festschreiben einer Zone
Skript zur Konfiguration mehrerer Zonen
So zeigen Sie die Konfiguration einer nicht-globalen Zone an
Verwenden des Befehls zonecfg zum Bearbeiten einer Zonenkonfiguration
So modifizieren Sie einen Ressourcentyp in einer Zonenkonfiguration
Solaris 10 8/07: Zurücksetzen eines Eigenschaftstyps in einer Zonenkonfiguration
Solaris 10 3/05 bis Solaris 10 11/06: So ändern Sie den Eigenschaftentyp in einer Zonenkonfiguration
Solaris 10 8/07: So benennen Sie eine Zone um
So fügen Sie einer Zone ein spezielles Gerät hinzu
So stellen Sie zone.cpu-shares in der globalen Zone ein
Verwenden des Befehls zonecfg zum Zurücksetzen oder Löschen einer Zonenkonfiguration
So setzen Sie eine Zonenkonfiguration zurück
So löschen Sie eine Zonenkonfiguration
19. Einführung in das Installieren, Anhalten, Klonen und Deinstallieren von nicht-globalen Zonen
20. Installieren, Booten, Anhalten, Deinstallieren und Klonen von nicht-globalen Zonen (Vorgehen)
21. Einführung in das Anmeldeverfahren bei einer nicht-globalen Zone
22. Anmelden bei nicht-globalen Zonen (Vorgehen)
23. Verschieben und Migrieren von nicht-globalen Zonen (Vorgehen)
24. Oracle Solaris 10 9/10: Migrieren eines reellen Oracle Solaris-Systems in eine Zone (Aufgaben)
27. Verwaltung der Oracle Solaris-Zonen (Überblick)
28. Verwaltung der Oracle Solaris-Zonen (Aufgaben)
29. Aktualisieren eines Oracle Solaris 10-Systems mit installierten nicht-globalen Zonen
30. Behebung von verschiedenen Problemen mit Oracle Solaris Zones
31. Allgemeine Informationen zu Branded Zones und der Linux Branded Zone
32. Einführung in die Planung der Konfiguration einer lx Branded Zone
33. Konfigurieren einer lx Branded Zone (Vorgehen)
34. Einführung in das Installieren, Booten, Anhalten, Klonen und Deinstallieren von lx Branded Zones
35. Installieren, Booten, Anhalten, Deinstallieren und Klonen von lx Branded Zones (Vorgehen)
36. Anmelden bei lx Branded Zones (Vorgehen)
37. Verschieben und Migrieren von lx Branded Zones (Vorgehen)
38. Verwalten und Ausführen von Anwendungen in lx Branded Zones (Vorgehen)
Mit dem in der Manpage zonecfg ausführlich beschriebenen Befehl zonecfg(1M) können Sie:
Die Zonenkonfiguration erstellen
Das Vorhandensein aller erforderlichen Informationen überprüfen
Festschreiben einer nicht globalen Zone
Weiterhin können mit dem Befehl zonecfg die Einstellungen der RessourcenAdministration für die globale Zone persistent angegeben werden.
Beim Konfigurieren einer Zone mit dem Serviceprogramm zonecfg können Sie den Unterbefehl revert verwenden, um die Einstellung einer Ressource rückgängig zu machen. Lesen Sie dazu So setzen Sie eine Zonenkonfiguration zurück.
Ein Skript zur Konfiguration mehrerer Zonen auf einem System finden Sie unter Skript zur Konfiguration mehrerer Zonen.
Eine Anleitung, wie Sie die Konfiguration einer nicht-globalen Zone anzeigen, finden Sie unter So zeigen Sie die Konfiguration einer nicht-globalen Zone an.
Bitte beachten Sie, dass zum Erstellen einer nativen nicht-globalen Zone nur die Eigenschaften zonename und zonepath erforderlich sind. Andere Ressourcen und Eigenschaften sind optional. Bei einigen optionalen Ressourcen sind auch verschiedene Alternativen möglich. So kann beispielsweise die Ressource dedicated-cpu oder die Ressource capped-cpu verwendet werden. Informationen zu verfügbaren Eigenschaften und Ressourcen des Befehls zonecfg finden Sie unter Konfigurationsdaten in einer Zone .
Für dieses Verfahren müssen Sie als globaler Administrator bei der globalen Zone angemeldet sein.
Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.
In diesem Beispielverfahren wird der Name my-zone verwendet.
global# zonecfg -z my-zone
Wenn Sie diese Zone das erste Mal konfigurieren, wird die folgende Systemmeldung angezeigt:
my-zone: No such zone configured Use 'create' to begin configuring a new zone.
Bei diesem Verfahren werden die Standardeinstellungen verwendet.
zonecfg:my-zone> create
zonecfg:my-zone> set zonepath=/export/home/my-zone
Platzieren Sie bei Releases vor Solaris&;10&;10/08 den zonepath nicht auf einem ZFS.
Wenn diese Eigenschaft auf true gesetzt ist, wird die Zone bei einem Neustart der globalen Zone automatisch gebootet. Beachten Sie, dass auch der Zonenservice svc:/system/zones:default aktiviert sein muss, damit Zonen automatisch gebootet werden können. Der Standardwert ist false.
zonecfg:my-zone> set autoboot=true
zonecfg:my-zone> set bootargs="-m verbose"
zonecfg:my-zone> add dedicated-cpu
zonecfg:my-zone:dedicated-cpu> set ncpus=1-2
zonecfg:my-zone:dedicated-cpu> set importance=10
Die Standardeinstellung ist 1.
zonecfg:my-zone:dedicated-cpu> end
zonecfg:my-zone> set limitpriv="default,sys_time"
Mit dieser Zeile wird die Fähigkeit hinzugefügt, die Systemuhr auf das Standard-Berechtigungsset zu setzen.
zonecfg:my-zone> set scheduling-class=FSS
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
zonecfg:my-zone> add fs
zonecfg:my-zone:fs> set dir=/usr/local
zonecfg:my-zone:fs> set special=/opt/zones/my-zone/local
In der nicht-globalen Zone besteht Schreib- und Lesezugriff für das Dateisystem /usr/local.
zonecfg:my-zone:fs> set type=lofs
Der Typ gibt an, wie der Kernel mit dem Dateisystem interagiert.
zonecfg:my-zone:fs> end
Dieser Schritt kann wiederholt ausgeführt werden, wenn mehrere Dateisysteme hinzuzufügen sind.
zonecfg:my-zone> set hostid=80f0c086
zonecfg:my-zone> add dataset
zonecfg:my-zone> set name=tank/sales
zonecfg:my-zone> end
Führen Sie diesen Schritt nicht aus, um eine Whole Root Zone zu erstellen, die nicht über gemeinsam genutzte Dateisysteme verfügt. Weitere Informationen finden Sie im Abschnitt über Whole Root Zones unter Erforderlicher Festplattenspeicher.
zonecfg:my-zone> add inherit-pkg-dir
zonecfg:my-zone:inherit-pkg-dir> set dir=/opt/sfw
Hinweis - Die Paketdatenbank der Zone wird aktualisiert, um die Pakete widerzuspiegeln. Nachdem die Zone mit zoneadm installiert wurde, können diese Ressourcen nicht mehr geändert oder entfernt werden.
zonecfg:my-zone:inherit-pkg-dir> end
Dieser Schritt kann wiederholt ausgeführt werden, wenn mehrere gemeinsam genutzte Dateisysteme hinzuzufügen sind.
Hinweis - Wenn Sie eine Whole Root Zone erstellen möchten, die standardmäßigen Ressourcen gemeinsam genutzter Dateisysteme aber mit inherit-pkg-dir hinzugefügt wurden, müssen Sie diese standardmäßigen inherit-pkg-dir-Ressourcen mit zonecfg entfernen, bevor Sie die Zone installieren:
zonecfg:my-zone> remove inherit-pkg-dir dir=/lib
zonecfg:my-zone> remove inherit-pkg-dir dir=/platform
zonecfg:my-zone> remove inherit-pkg-dir dir=/sbin
zonecfg:my-zone> remove inherit-pkg-dir dir=/usr
zonecfg:my-zone> set ip-type=exclusive
Hinweis - Im Schritt add net wird nur der Typ des reellen Geräts festgelegt.
zonecfg:my-zone> add net
zonecfg:my-zone:net> set address=192.168.0.1
zonecfg:my-zone:net> set physical=hme0
zonecfg:my-zone:net> set defrouter=10.0.0.1
zonecfg:my-zone:net> end
Dieser Schritt kann wiederholt ausgeführt werden, wenn mehrere Netzwerkschnittstellen hinzuzufügen sind.
zonecfg:my-zone> add device
zonecfg:my-zone:device> set match=/dev/sound/*
zonecfg:my-zone:device> end
Dieser Schritt kann wiederholt ausgeführt werden, wenn mehrere Geräte hinzuzufügen sind.
zonecfg:my-zone> set max-sem-ids=10485200
Dieser Schritt kann wiederholt ausgeführt werden, wenn mehrere Resource Controls hinzuzufügen sind.
zonecfg:my-zone> add attr
zonecfg:my-zone:attr> set name=comment
zonecfg:my-zone:attr> set type=string
zonecfg:my-zone:attr> set value="This is my work zone."
zonecfg:my-zone:attr> end
zonecfg:my-zone> verify
zonecfg:my-zone> commit
zonecfg:my-zone> exit
Wenn Sie nicht explizit commit an der Eingabeaufforderung eingeben, wird das commit automatisch versucht, wenn Sie exit eingeben oder ein EOF auftritt.
Tipp - Der Befehl zonecfg unterstützt mehrere in Anführungszeichen gestellte und durch Semikola voneinander getrennte Unterbefehle, die in der gleichen Shell aufgerufen werden.
global# zonecfg -z my-zone "create ; set zonepath=/export/home/my-zone"
Informationen zur Installation der festgeschriebenen Zonenkonfiguration finden Sie unter Installieren und Booten von Zonen.
Mit dem folgenden Skript können Sie mehrere Zonen auf einem System konfigurieren und booten. Dieses Skript enthält die folgenden Parameter:
Die Anzahl der zu erstellenden Zonen
Das Präfix zonename
Das als Basisverzeichnis zu verwendende Verzeichnis
Zum Ausführen dieses Skripts müssen Sie als globaler Administrator in der globalen Zone angemeldet sein. Der globale Administrator hat Superuser-Berechtigungen in der globalen Zone oder nimmt die Rolle des Primäradministrators an.
#!/bin/ksh # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # #ident "%Z%%M% %I% %E% SMI" if [[ -z "$1" || -z "$2" || -z "$3" ]]; then echo "usage: $0 <#-of-zones> <zonename-prefix> <basedir>" exit 2 fi if [[ ! -d $3 ]]; then echo "$3 is not a directory" exit 1 fi nprocs=`psrinfo | wc -l` nzones=$1 prefix=$2 dir=$3 ip_addrs_per_if=`ndd /dev/ip ip_addrs_per_if` if [ $ip_addrs_per_if -lt $nzones ]; then echo "ndd parameter ip_addrs_per_if is too low ($ip_addrs_per_if)" echo "set it higher with 'ndd -set /dev/ip ip_addrs_per_if <num>" exit 1 fi i=1 while [ $i -le $nzones ]; do zoneadm -z $prefix$i list > /dev/null 2>&1 if [ $? != 0 ]; then echo configuring $prefix$i F=$dir/$prefix$i.config rm -f $F echo "create" > $F echo "set zonepath=$dir/$prefix$i" >> $F zonecfg -z $prefix$i -f $dir/$prefix$i.config 2>&1 | \ sed 's/^/ /g' else echo "skipping $prefix$i, already configured" fi i=`expr $i + 1` done i=1 while [ $i -le $nzones ]; do j=1 while [ $j -le $nprocs ]; do if [ $i -le $nzones ]; then if [ `zoneadm -z $prefix$i list -p | \ cut -d':' -f 3` != "configured" ]; then echo "skipping $prefix$i, already installed" else echo installing $prefix$i mkdir -pm 0700 $dir/$prefix$i chmod 700 $dir/$prefix$i zoneadm -z $prefix$i install > /dev/null 2>&1 & sleep 1 # spread things out just a tad fi fi i=`expr $i + 1` j=`expr $j + 1` done wait done i=1 while [ $i -le $nzones ]; do echo setting up sysid for $prefix$i cfg=$dir/$prefix$i/root/etc/sysidcfg rm -f $cfg echo "network_interface=NONE {hostname=$prefix$i}" > $cfg echo "system_locale=C" >> $cfg echo "terminal=xterms" >> $cfg echo "security_policy=NONE" >> $cfg echo "name_service=NONE" >> $cfg echo "timezone=US/Pacific" >> $cfg echo "root_password=Qexr7Y/wzkSbc" >> $cfg # 'l1a' i=`expr $i + 1` done i=1 para=`expr $nprocs \* 2` while [ $i -le $nzones ]; do date j=1 while [ $j -le $para ]; do if [ $i -le $nzones ]; then echo booting $prefix$i zoneadm -z $prefix$i boot & fi j=`expr $j + 1` i=`expr $i + 1` done wait done
Für dieses Verfahren müssen Sie als globaler Administrator bei der globalen Zone angemeldet sein.
Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.
global# zonecfg -z zonename info