| Home | Wissen |
X-Letter
NIM - Network Installation Management in einer HACWS-Umgebung
Autor
Uwe Auer, Xtelligent
Original
http://www.xtelligent.de/wissen/xlet_nimhacws.htm
(erstellt im Dezember 2000)
Abstract
Das Network Installation Management unter AIX in einer SP-Umgebung ist ein zentrales Element der
des Systems Managements. Die während der Grundinstallation eines SP-Systems erzeugte
NIM Konfiguration kann in einer HACWS Umgebung auch für das Recovery einer Backup Control
Workstation Verwendung finden. Einige wenige zusätzliche Konfigurationen erlauben für
den Fall der Fälle ein schnelles Recovery der Backup Control Workstation.
Vorbemerkung
Der folgende Text ist eine Zusammenfassung technischer Daten und Informationen. Wir haben
ihn nach bestem Wissen und Gewissen erstellt. Bitte haben Sie Verständnis dafür,
dass wir dennoch keine Haftung für Irrtümer und Fehler übernehmen können.
Der Text ist insbesondere kein Ratschlag und keine Handlungsanweisung. Für
Übernahme und Ausführung darin enthaltener Ideen und Konzepte
können wir daher keinerlei Gewähr übernehmen.
Bitte beachten Sie außerdem, dass im Text gegebenenfalls Warenzeichen und Produktnamen
Dritter verwendet werden - wir erkennen die entsprechenden Rechte an, bitte tun Sie dies auch.
Die Urheberrechte am Text in dieser Form liegen bei Xtelligent IT Consulting GmbH. Wenn Sie
diesen Text oder Teile davon verwenden oder vervielfältigen möchten, benötigen
Sie dafür unsere Erlaubnis. Bitte kontaktieren Sie uns in diesem Falle.
Für weitere Beratung zu den im Text angesprochenen Themen stehen wir gern zur Verfügung.
Wir wünschen eine interessante Lektüre!
Das Team von Xtelligent
In die Sicherung unternehmenskritischer Daten wird zum Teil ein nicht unerheblicher finanzieller und
personeller Aufwand gesteckt. Weit weniger Aufwand entfällt jedoch auf die Entwicklung
und Implementierung von Konzepten zur Wiederherstellung von ganzen Systemen. Hier bietet
AIX mit der Möglichkeit ein Systemabbild zu erstellen, und dieses in
Zusammenarbeit mit dem Network Installation Management (NIM) wieder zu
installieren, ein herausragendes Feature, das leider zu wenig genutzt wird.
In einer High Availability Control Workstation (HACWS)-Umgebung wird diese Funktion
besonders wertvoll, da hier eine Recovery-Strategie "from the scratch" wegen der
notwendigen Synchronizität der beiden Control Workstations auf vielen Ebenen einen
nicht unerheblichen Aufwand bedeuten würde. Einfacher und insbesondere schneller
ist daher im Falle eines echten Crashs das Recovery mittels eines Abbildes des
"gecrashten" Servers.
In diesem Dokument wird beschrieben, welche Schritte im Einzelnen erforderlich sind,
um die für das Recovery einer Backup Control Workstation nötigen NIM
Konfigurationen (Objekte) zu erstellen. Dieses Dokument soll jedoch nicht eine
Dokumentation über das Network Installation Management (NIM) darstellen,
sondern lediglich die für den erwähnten Spezialfall benötigten
Informationen bereitstellen.
Die Philosophie des Network Installation Managements unter AIX basiert im
Wesentlichen auf dem Begriff des Objektes. Die grundlegenden Komponenten eines
Netzwerkprozesses werden als Objekte betrachtet. Diese Objekte werden definiert,
administriert und Operation werden auf ihnen durchgeführt. Man unterscheidet
drei Kategorien von Objekten, die in den nächsten Abschnitten kurz
dargestellt werden.
Dieser Typ von NIM-Objekten beschreibt die Netzwerke (IP-Netze) auf denen die
Netzwerkoperation durchgeführt werden. Die Netzwerk-Objekte werden in
folgende Typenklassen eingeteilt.
tok | (Token-Ring Netzwerk ) |
ent | (Ethernet Netzwerk ) |
fddi | (FDDI Netzwerk ) |
generic | (gen.Netzwerk ohne Netzwerkboot Support) |
atm | (ATM Netzwerk) |
Die Maschinen-Objekte beschreiben die einzelnen Server bzw. im SP-Umfeld die
Knoten, auf denen über die Netzwerk-Objekte die Netzwerkoperationen
durchgeführt werden sollen. Hier ist insbesondere der Plattform-Typ von
Bedeutung (Uni-Prozessor, SMP Server, PowerPC).
Die Resourcen - Objekte beinhalten im wesentlichen die Beschreibung der im
Netzwerk verwendeten Software. Die folgende Aufzählung zeigt die bekannten
bzw. definierbaren Resource Objekte.
spot = Shared Product Object Tree - equivalent to /usr file
root = parent directory for client / (root) directories
paging = parent directory for client paging files
dump = parent directory for client dump files
home = parent directory for client /home directories
shared_home = /home directory shared by clients
tmp = parent directory for client /tmp directories
exclude_files = files to be excluded when creating a mksysb image
lpp_source = source device for optional product images
installp_bundle = an installp bundle file
fix_bundle = fix (keyword) input file for the cust or fix_query
bosinst_data = config file used during base system installation
image_data = config file used during base system installation
mksysb = an AIX mksysb image
script = an executable file which is executed on a client
resolv_conf = configuration file for name-server information
Die Grundkonfiguration des NIM-Masters (auf der Control Workstation) wird
bereits bei der Erstinstallation des SP-Systems automatisch durch das
setup_server
Skript durchgeführt und somit sind
die wesentlichen Netzwerk-Objekte auf dem internen Ethernet sowie dem externen
Netzwerk eingerichtet. Ebenso werden dabei die wesentlichen
Resource-Objekte definiert.
Einen Überblick über die nach der SP-Installation
bestehenden bzw. definierten Netzwerkobjekte erhält man
über
smit nim
Manage Network Objects
List All Network Objects
Der Netzwerktyp kann mit Taste F4 ausgewählt werden. Das
folgende Bild zeigt den SMIT-Screen, der nach dem Drücken
der Taste erscheint.
List All Networks
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
Network Type [] +
--------------------------------------------------------------------------
| Network Type |
| |
| Move cursor to desired item and press Enter. |
| |
| tok |
| ent |
| fddi |
| generic |
| atm |
| |
| F1=Help F2=Refresh F3=Cancel |
F1| F8=Image F10=Exit Enter=Do |
Es| /=Find n=Find Next |
F9 --------------------------------------------------------------------------
|
Das folgende Kommando liefert das gleiche Ergebnis (sofern lediglich ein
Netzwerktyp auf der Control Workstation vorhanden ist) auf der Kommandozeile.
lsnim -c networks
Beispiel-Output in der konkreten Situation:
sp_en0 networks ent
sp_en1 networks ent
An der Ausgabe ersieht man, dass die Installationsroutine insgesamt zwei
NIM Netzwerkobjekte angelegt hat, die beide vom Typ "Ethernet" sind.
Durch folgende SMIT-Pfade erhält man eine Übersicht über die definierten Maschinen-Objekte
des NIM-Servers auf der Control Workstation.
smit nim
Perform NIM Administration Tasks
Manage Machine Objects
List All Machine Objects
Wie oben werden die verfügbaren Maschinen-Typen mit der F4-Taste
ausgewählt.
List All Machines
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
Machine Type [] +
--------------------------------------------------------------------------
| Machine Type |
| |
| Move cursor to desired item and press Enter. |
| |
| diskless |
| dataless |
| standalone |
| master |
| |
| F1=Help F2=Refresh F3=Cancel |
F1| F8=Image F10=Exit Enter=Do |
Es| /=Find n=Find Next |
F9 --------------------------------------------------------------------------
|
Einen Überblick über die bestehenden bzw. definierten Resource-Objekte eines bestimmten
Typs erhält man über die folgenden SMIT-Pfade.
smit nim
Perform NIM Administration Tasks
Manage Resource Objects
List All Network Install Resource Objects
Der Resource-Objekt Typ kann mit F4 ausgewählt werden.
List All Network Install Resources
Ty --------------------------------------------------------------------------
Pr| Resource Type |
| |
| Move cursor to desired item and press Enter. |
| |+
| [TOP] |
| boot |
| nim_script |
| spot |
| root |
| paging |
| dump |
| home |
| shared_home |
| tmp |
| exclude_files |
| [MORE...8] |
| |
| F1=Help F2=Refresh F3=Cancel |
F1| F8=Image F10=Exit Enter=Do |
Es| /=Find n=Find Next |
F9 --------------------------------------------------------------------------
|
Das Kommando
lsnim -c resources
gibt dagegen eine vollständige Liste aller Resource-Objekte des NIM-Servers
aus.
Die folgende Liste gibt ein Beispiel dafür, wie die Ausgabe des obigen
Kommandos aussehen könnte.
boot resources boot
nim_script resources nim_script
psspscript resources script
prompt resources bosinst_data
noprompt resources bosinst_data
mksysb_1 resources mksysb
mksysb_2 resources mksysb
systembackup resources mksysb
node01_noprompt resources bosinst_data
node01_migrate resources bosinst_data
node02_noprompt resources bosinst_data
node02_migrate resources bosinst_data
lppsource_aix421 resources lpp_source
lppsource_aix432 resources lpp_source
spot_aix432 resources spot
Da die Installation eines AIX Systems - auch wenn diese über ein Image (mksysb)
installiert wird - grundsätzlich auf doch sehr unterschiedlicher Hardware erfolgen kann,
werden die AIX LPPs als Resource benötigt. Im Falle einer mksysb Reinstallation
des ursprünglichen System wird auf die LPP Resource nur dann zugegriffen,
wenn das AIX Zielsystem nach der NIM Installation NIM Client bleiben soll und das
entsprechende NIM Client Fileset auf dem Ursprungssystem nicht installiert war.
Um die LPP Source AIX 4.2.1 anzulegen wird wie folgt vorgegangen:
smit nim
Perform NIM Administration Tasks
Manage Resources
Define a Resource
Es erscheint im SMIT folgende Auswahlliste:
| spot = Shared Product Object Tree - equivalent to /usr file |
| root = parent directory for client / (root) directories |
| paging = parent directory for client paging files |
| dump = parent directory for client dump files |
| home = parent directory for client /home directories |
| shared_home = /home directory shared by clients |
| tmp = parent directory for client /tmp directories |
| exclude_files = files to be excluded when creating a mksysb image |
| lpp_source = source device for optional product images |
| installp_bundle = an installp bundle file |
| fix_bundle = fix (keyword) input file for the cust or fix_query |
| bosinst_data = config file used during base system installation |
| image_data = config file used during base system installation |
| mksysb = an AIX mksysb image |
| script = an executable file which is executed on a client |
| resolv_conf = configuration file for name-server information |
|
Hier ist der Resource-Typ lpp_source zu selektieren.
Im Menü, das nach obiger Selektion erscheint,
Define a Resource
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Resource Name [aix421]
* Resource Type lpp_source
* Server of Resource [master] +
* Location of Resource [/spdata/sys1/install/aix421/lppsource] /
Source of Install Images [/dev/cd0] +/
Names of Option Packages []
Comments []
F1=Help F2=Refresh F3=Cancel F4=List
Esc+5=Reset F6=Command F7=Edit F8=Image
F9=Shell F10=Exit Enter=Do
|
die fett unterlegten Werte eintragen, die AIX CD Volume 1 in das CDROM
Laufwerk einlegen und ENTER drücken.
Die Resource vom Typ spot wird benötigt, damit die Backup CWS die zur Installation
des Systembackups notwendigen Kommandos zur Verfügung hat. Der SPOT (Shared Product Object Tree)
entspricht dem /usr Filesystem einer normalen AIX Installation. Dieser SPOT wird vom
Kernel entsprechend den Angaben in der Datei /tftpboot/hostname.info via NFS
nach der Bootphase in das Dateisystem eingehängt (mount).
Aus der Auswahlliste
| spot = Shared Product Object Tree - equivalent to /usr file |
| root = parent directory for client / (root) directories |
| paging = parent directory for client paging files |
| dump = parent directory for client dump files |
| home = parent directory for client /home directories |
| shared_home = /home directory shared by clients |
| tmp = parent directory for client /tmp directories |
| exclude_files = files to be excluded when creating a mksysb image |
| lpp_source = source device for optional product images |
| installp_bundle = an installp bundle file |
| fix_bundle = fix (keyword) input file for the cust or fix_query |
| bosinst_data = config file used during base system installation |
| image_data = config file used during base system installation |
| mksysb = an AIX mksysb image |
| script = an executable file which is executed on a client |
| resolv_conf = configuration file for name-server information |
|
den Resource-Typ spot selektieren.
Define a Resource
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Resource Name [aix421_spot]
* Resource Type spot
* Server of Resource [master] +
* Source of Install Images [aix421] +
* Location of Resource [/spdata/sys1/install/aix421]
Expand file systems if space needed? yes +
Comments []
installp Flags
COMMIT software updates? no +
SAVE replaced files? yes +
AUTOMATICALLY install requisite software? yes +
OVERWRITE same or newer versions? no +
VERIFY install and check file sizes? no +
F1=Help F2=Refresh F3=Cancel F4=List
Esc+5=Reset F6=Command F7=Edit F8=Image
F9=Shell F10=Exit Enter=Do
|
Nachdem hier mit ENTER die Eingaben bestätigt wurden, beginnt ein AIX Installationsprozess,
der AIX von der lppsource aix421 in den SPOT installiert. Der größte Anteil der Software,
der in diesem Schritt installiert wird, wird durch den Device-Support den der SPOT
sicherstellen soll, bestimmt.
smit nim
Perform NIM Administration Tasks
Manage Resources
Define a Resource
In folgender Auswahlliste
| spot = Shared Product Object Tree - equivalent to /usr file |
| root = parent directory for client / (root) directories |
| paging = parent directory for client paging files |
| dump = parent directory for client dump files |
| home = parent directory for client /home directories |
| shared_home = /home directory shared by clients |
| tmp = parent directory for client /tmp directories |
| exclude_files = files to be excluded when creating a mksysb image |
| lpp_source = source device for optional product images |
| installp_bundle = an installp bundle file |
| fix_bundle = fix (keyword) input file for the cust or fix_query |
| bosinst_data = config file used during base system installation |
| image_data = config file used during base system installation |
| mksysb = an AIX mksysb image |
| script = an executable file which is executed on a client |
| resolv_conf = configuration file for name-server information |
|
den Resource-Typ mksysb selektieren und
anschließend im Menü
Define a Resource
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Resource Name [systembackup]
* Resource Type mksysb
* Server of Resource [master] +
* Location of Resource [spdata/sys1/install/images/systembackup]/
Source of Install Images [] +/
Names of Option Packages []
Comments []
F1=Help F2=Refresh F3=Cancel F4=List
Esc+5=Reset F6=Command F7=Edit F8=Image
F9=Shell F10=Exit Enter=Do
|
die fett unterlegten Werte eintragen und ENTER drücken.
Bevor ein Maschinen Objekt definiert werden kann, muß die zu installierende Maschine
(RS/6000 System) im Namensservice eingetragen sein. Wie die Namensauflösung im
Detail erfolgt, ist ohne Belang. Ob über die Datei /etc/hosts, DNS, NIS
ist gleichgültig; es muß lediglich
sichergestellt sein, dass der im folgenden einzugebende Name in eine IP Adresse
aufgelöst werden kann. Zusätzlich wird die MAC Adresse des Zielsystems benötigt.
Diese kann man über verschiedene Wege erhalten.
a) laufendes System
Das Systemkommando lscfg -v -l ent0 liefert folgende Ausgabe:
DEVICE LOCATION DESCRIPTION
ent0 00-01 Ethernet High-Performance LAN
Adapter (8ef5)
Network Address.............2608CF54C42
ROS Level and ID............0015
Displayable Message.........802.3/ETHERNET
Part Number.................000G3369
EC Level....................C73859
Device Driver Level.........01
Diagnostic Level............01
FRU Number..................000G3368
Serial Number...............00288415
Manufacturer................204491
|
b) abgeschaltetes System mit SMS (z.B. F40/F50, PCI - Modelle)
Server starten und nach der Initialisierung des Keyboards die Taste 1/F1
(ASCII Display oder Grafik Display) drücken. Anschließend kann
die MAC-Adresse unter Configuration ausgelesen werden.
c) abgeschaltetes System ohne SMS (ältere MCA Modelle)
Netzwerkboot des Servers aktivieren und aus dem Netzwerkbootmenü die
MAC Adresse auslesen. Hierfür wird je nach Modell unter Umständen eine
IPLROM-Emulation Diskette benötigt.
Um nun ein neues Maschinen-Objekt für die Backup Control Workstation
zu erstellen, werden im SMIT die folgenden Menüs der Reihe nach
durchlaufen.
smit nim
Perform NIM Administration Tasks
Manage Machines
Define Machine Objects
Es erscheint folgendes Menü (hier sind bereits einige Angaben gemacht,
daher kann dies unter Umständen etwas anders aussehen):
Define a Machine Object
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Machine Object Name [backup]
Hardware Platform Type rs6k
Machine Object Type standalone
Primary Network Install Interface
Network Object Name sp_ent0
* Host Name [hostname]
Network Adapter Hardware Address [2608CF54C42]
Network Adaptor Logical Device Name [ent0]
* Cable Type bnc +
IPL ROM Emulation Device [] /
CPU Id []
Comments []
|
Die fett gezeichneten Parameter werden eingetragen. Durch Drücken der
Taste ENTER wird das Maschinen-Objekt in der NIM Datenbank definiert.
Nachdem nun alle benötigten Resourcen definiert und generiert wurden,
werden auf den entsprechenden Objekten Aktionen durchgeführt
.
Bevor ein RS/6000 System mit den oben beschriebenen Resourcen
installiert werden kann, müssen die Resourcen mit dem zugehörigen
Maschinenobjekt logisch verknüpft werden. Dieser Vorgang wird in der
NIM Systematik als »Resource Allocation« bezeichnet. Diese Verknüpfung wird
wie folgt durchgeführt:
smit nim
Perform NIM Administration Tasks
Manage Machines
Manage Network Install Resource Allocation
Allocate Network Install Resources
Aus der folgenden Auswahlliste wird das Maschinen Objekt selektiert,
das installiert werden soll und dem daher die notwendigen Resource zugewiesen
werden sollen.
Manage Network Install Resource Allocation
Move cursor to desired item and press Enter.
--------------------------------------------------------------------------
| Target Name |
| |
| Move cursor to desired item and press Enter. |
| |
| master machines master |
| node01 machines standalone |
| node02 machines standalone |
| node03 machines standalone |
| node04 machines standalone |
| node05 machines standalone |
| node06 machines standalone |
| node07 machines standalone |
| node08 machines standalone |
| node09 machines standalone |
| backup machines standalone |
| |
| F1=Help F2=Refresh F3=Cancel |
| F8=Image F10=Exit Enter=Do |
F1| /=Find n=Find Next |
F9 --------------------------------------------------------------------------
|
Nach der Festlegung der Backup Control Workstation als zu
installierende Maschine erscheint die folgende Resourcen-Auswahlliste,
aus der die fett unterlegten Resourcen mit
F7 selektiert und damit zugewiesen werden müssen.
Manage Network Install Resource Allocation
Mo --------------------------------------------------------------------------
| Available Network Install Resources |
| |
| Move cursor to desired item and press F7. |
| ONE OR MORE items can be selected. |
| Press Enter AFTER making all selections. |
| |
| [MORE...17] |
| mksysb_a mksysb |
| mksysb_b mksysb |
| mksysb_c mksysb |
| lppsource_aix421 lpp_source AIX Version 4.2.1 |
| spot_aix421 spot |
| systembackup mksysb Systembackup von backup |
| lppsource_aix432 lpp_source |
| spot_aix432 spot AIX Version 4.3.2 |
| [BOTTOM] |
| |
| F1=Help F2=Refresh F3=Cancel |
| F7=Select F8=Image F10=Exit |
F1| Enter=Do /=Find n=Find Next |
F9 --------------------------------------------------------------------------
|
Nach der Eingabe von ENTER werden die Resourcen zugewiesen.
Bemerkung:
Eine häufig auftretende Meldung innerhalb der NIM Umgebung besagt,
daß die Aktion nicht durchgeführt werden könne, weil dies der Status
des NIM Objekts gegenwärtig nicht erlaube. In der Regel kann/muss
dann das entsprechende NIM Objekt (Maschinen-Objekt) über die Aktion
reset mit der forced
Option zurückgesetzt werden.
Der letzte Schritt in der Vorbereitung des NIM Servers auf die Installation
eines RS/6000 Systems ist die Festlegung der Aktion, die mit dem
Maschinen-Objekt und den zuvor zugewiesenen Resourcen durchgeführt werden soll.
Da für das Recovery der Backup Control Workstation ein bestehendes mksysb Image
installiert werden muss, lautet die entsprechende NIM Operation
bos_inst mit der Option
mksysb.
smit nim
Perform NIM Administration Tasks
Manage Machines
Perform Operations on Machines
In dem unten gezeigten Menü wird das Maschinen-Objekt, auf dem die Aktion
durchgeführt werden soll, selektiert
.
Manage Machines
Move cursor to desired item and press Enter.
--------------------------------------------------------------------------
| Target Name |
| |
| Move cursor to desired item and press Enter. |
| |
| master machines master |
| node01 machines standalone |
| node02 machines standalone |
| node03 machines standalone |
| node04 machines standalone |
| node05 machines standalone |
| node06 machines standalone |
| node07 machines standalone |
| node08 machines standalone |
| node09 machines standalone |
| backup machines standalone |
| |
| F1=Help F2=Refresh F3=Cancel |
| F8=Image F10=Exit Enter=Do |
F1| /=Find n=Find Next |
F9 --------------------------------------------------------------------------
|
Nachdem das Maschinen-Objekt selektiert ist, wird im darauffolgenden Menü die
durchzuführende Aktion (hier: bos_inst ) festgelegt.
Im Anschluss an die Selektion erscheint das weiter unten abgebildete Menü.
Hier ist unbedingt darauf zu achten,
dass im Feld Source for BOS Runtime Files
über die Taste F4 mksysb selektiert wird.
Manage Machines
Mo --------------------------------------------------------------------------
| Operation to Perform |
| |
| Move cursor to desired item and press Enter. |
| |
| [TOP] |
| diag = enable a machine to boot a diagnostic image |
| cust = perform software customization |
| bos_inst = perform a BOS installation |
| maint = perform software maintenance |
| reset = reset an object's NIM state |
| fix_query = perform queries on installed fixes |
| check = check the status of a NIM object |
| reboot = reboot specified machines |
| maint_boot = enable a machine to boot in maintenance mode |
| showlog = display a log in the NIM environment |
| [MORE...3] |
| |
| F1=Help F2=Refresh F3=Cancel |
| F8=Image F10=Exit Enter=Do |
F1| /=Find n=Find Next |
F9 --------------------------------------------------------------------------
|
Perform a Network Install
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
Target Name backup
Source for BOS Runtime Files rte +
installp Flags [-agX]
Fileset Names []
Remain NIM client after install? yes +
-------------------------------------------------------------------------- +
| Source for BOS Runtime Files |+
| |+
| Move cursor to desired item and press Enter. |
| |
| rte |
| spot |
| mksysb |
| |
| F1=Help F2=Refresh F3=Cancel |
F1| F8=Image F10=Exit Enter=Do |
Es| /=Find n=Find Next |
F9 --------------------------------------------------------------------------
|
Perform a Network Install
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
Target Name backup
Source for BOS Runtime Files mksysb +
installp Flags [-agX]
Fileset Names []
Remain NIM client after install? no +
Initiate Boot Operation on Client? no +
Set Boot List if Boot not Initiated on Client? no +
Force Unattended Installation Enablement? no +
F1=Help F2=Refresh F3=Cancel F4=List
Esc+5=Reset F6=Command F7=Edit F8=Image
F9=Shell F10=Exit Enter=Do
|
Die beiden fett unterlegten Felder müssen auf »no« gesetzt werden,
da die Backup Control Workstation selbst NIM Master ist und daher zum
einen die Datei /etc/niminfo, die sowohl Client
und Master bestimmt,
durch die NIM Customization nach der Reinstallation des Systembackups
überschrieben würde und zum anderen die Backup Control
Workstation kein Client ist und daher auch keine Boot Operation initiiert werden kann.
Nachdem die Aktion definiert ist, werden alle nötigen Informationen
in der Datei /etc/bootptab bzw. im Verzeichnis
/tftpboot abgelegt.
Bevor mit dem Recovery der Backup Control Workstation begonnen wird, sollten einige
Einstellungen überprüft werden. In der Regel empfehlen sich mindestens
folgenden 3 Tests.
a) Eintrag in /etc/bootptab
Da der NIM-Client zum Booten über das Netzwerk Wissen über
seine künftige Netzwerk-Konfiguration sowie seine grundlegenden
Resourcen (Wo finde ich meinen Kernel ?) via BOOTP erlangt, muss in der
Datei /etc/bootptab ein Eintrag existieren,
der diese Information zur Verfügung stellt. Der Eintrag sieht in etwa
folgendermaßen aus:
cat /etc/bootptab
backup.xtelligent.de:bf=/tftpboot/backup.xtelligent.de:ip=192.168.0.2:
ht=ethernet:ha=02608c2cdebb:sa=192.168.0.1:sm=255.255.255.0:
b) Kernel-Link
Da das zu installierende System über keinen Kernel verfügt, muss
dieser über das Netzwerk geladen werden. Hierzu wird nachdem die
weiter oben beschriebenen Konfigurationen erstellt wurden, im Verzeichnis
/etc/tftpboot ein Link auf einen
geeigneten Kernel erstellt. Existiert dieser Link nicht, so kann der
Server nicht booten. Der Link muss folgendes Aussehen haben:
ls -l
lrwxrwxrwx 1 root system 29 Dec 07 21:29 backup.xtelligent.de ->
/tftpboot/spot432.rs6k.up.ent
Auf welchen Kernel der Link verweist hängt vom Plattform-Typ der
zu installierenden Maschine ab. Im hier gezeigten Fall handelt es sich
um ein RS/6000 System vom Typ rs6k und
einem Uni-Prozessor System (up). Weitere
Typen sind rspc und
chrp, die beide als up-
und mp- (Multi-Prozessor) Systeme
erscheinen können.
c) Existenz von hostname.info
Datei in /etc/tftpboot
Diese Datei wird während der Installation vom NIM-Client benötigt, da in dieser
Datei alle relevanten Netzwerkinformation hinterlegt sind, die dem Client einen
Zugriff auf die ihm zugewiesenen Resourcen erlauben. Eine typische
hostname.info hat etwa folgendes Aussehen
(Die Details hängen selbstverständlich von der jeweiligen Konfiguration ab).
#------------------ Network Install Manager ---------------
# warning - this file contains NIM configuration information
# and should only be updated by NIM
export NIM_NAME=backup
export NIM_HOSTNAME=backup.xtelligent.de
export NIM_CONFIGURATION=standalone
export NIM_MASTER_HOSTNAME=nim.xtelligent.de
export NIM_MASTER_PORT=1058
export NIM_REGISTRATION_PORT=1059
export RC_CONFIG=rc.bos_inst
export NIM_BOSINST_ENV="/../SPOT/usr/lpp/bos.sysmgt/nim/methods/c_bosinst_env"
export NIM_BOSINST_RECOVER="/../SPOT/usr/lpp/bos.sysmgt/nim/methods/c_bosinst_env
-a hostname=backup.xtelligent.de"
export NIM_BOSINST_DATA=/NIM_BOSINST_DATA
export SPOT=nim.xtelligent.de:/export/spot/spot432/spot432/usr
export NIM_CUSTOM="/../SPOT/usr/lpp/bos.sysmgt/nim/methods/c_script
-a location=nim.xtelligent.de:/export/nim/scripts/backup.script"
export NIM_BOS_IMAGE=/SPOT
export NIM_BOS_FORMAT=spot
export NIM_HOSTS=" 192.168.0.2:backup.xtelligent.de
192.168.0.1:nim.xtelligent.de "
export NIM_MOUNTS=" nim.xtelligent.de:/export/lpp_source/aix432:/SPOT/usr/sys/inst.images:dir
nim.xtelligent.de:/export/lpp_source/bosinst/noprompt:/NIM_BOSINST_DATA:file "
Der NIM-Client lädt diese Datei via tftp vom NIM-Master.
Bemerkung:
Die Einstellungen, die hier überprüft werden, sind nicht ! von Hand zu
erstellen. Sie sollten von der NIM-Aktion bos_inst
erstellt worden sein. Daher hilft es in der Regel nichts, falls einer der genannten
Tests negativ verläuft, die Einstellungen per Hand nachzutragen.
In diesem Abschnitt wird beschrieben, welche Schritte im Einzelnen erforderlich sind,
um eine Backup Control Workstation aus einer vorhandenen Systemsicherung auf der
Control Workstation bzw. dem Filesystem /spdata der Volume Group spvg zu
restaurieren.
Ein mögliches Szenario könnte etwa folgendermaßen aussehen:
Das System der Backup Control Workstation (rootvg) wird z.B. durch einen Defekt
auf dem SCSI-Adapter während eines System-Upgrades zerstört, da der Upgrade
nicht vollständig durchgeführt werden kann. Der Zustand der
rootvg kann entweder
undefiniert sein, oder aber die Backup Control Workstation kann schlimmstenfalls nicht
mehr gebootet werden. Daher ist die Wiederherstellung des Systems im Zustand vor dem
Beginn des Upgrades notwendig.
Die Daten der CWS liegen auf einem externen SSA Plattensubsystem, auf das beide
Control Workstations über redundante Loops zugreifen können
Um die hier beschriebenen Schritte durchzuführen, müssen folgende Voraussetzungen erfüllt sein:
Es existiert ein Systemimage der Backup Control Workstation am NIM Master (CWS)
Die Primary CWS ist die aktive CWS und damit aktiver NIM Master
Es ist eine NIM Ressource vom Typ lpp_source am NIM Master definiert,
die die AIX Installationsimages derjenigen AIX Version enthält, die
der AIX Version des Systemimages der Backup CWS entspricht.
Es ist eine NIM Ressource vom Typ spot am NIM Master definiert,
die der AIX Version des Systemimages der Backup CWS entspricht (üblicherweise ist
diese Ressource aus der entsprechenden Ressource vom Typ
lpp_source generiert).
Es existiert eine Netzwerkressource, die einem der beiden auf der Backup CWS
konfigurierten Netzwerke entspricht (Dies ist immer der Fall, da es sich um
Control Workstations eines SP - Systems handelt, und das SP Skript
setup_server dieser Ressourcen automatisch anlegt).
Folgendes Diagramm zeigt schematisch die einzelnen Schritte, die beim
Recovery der Backup Control Workstation durchzuführen sind.
Hierzu sind die oben beschriebenen Schritte durchzuführen.
Dort finden sich alle Details um die NIM-Konfiguration zu erstellen. An dieser Stelle
sei aber darauf hingewiesen, daß die NIM Konfiguration insbesondere bzgl. des definierten
Maschinen-Objekts für die Backup Control Workstation in fast allen Fällen
neu generiert werden muß, da das Skript setup_server,
das auch für die gesamte NIM Konfiguration in einer SP-Umgebung verantwortlich ist, Objekte die nicht
in der SDR definiert sind, was bei einer Backup Control Workstation stets der Fall ist,
aus der NIM Konfiguration entfernt. Das Skript setup_server
wird unter anderem bei jedem Cluster Event,das eine Übernahme der CWS-Funktion bewirkt,
vom HACWS-Applicationserver ausgeführt. Konkret bedeutet dies, dass der
Systemadministrator sich für den Notfall ein entsprechendes Skript
bereitlegt, um die Definitionen schnell anlegen zu können.
Die einfachste und auch skriptbare Möglichkeit die Backup Control Workstation
via Netzwerk zu booten, ist das folgende Kommando
bootlist -m normal ent0 cd0 hdisk0
Anschließend wird ein reboot-Kommando ausgeführt. Die Backup Control Workstation bootet
daraufhin via Netzwerk (BOOTP-Request). Der während der NIM Konfiguration
in der Datei /etc/bootptab auf dem NIM Master
generierte Eintrag, sorgt für den Transfer des Boot-Kernels auf die Backup Control
Workstation und die korrekte Netzwerkkonfiguration der Backup Control Workstation.
Sollte der Netzwerkboot über das oben genannte Kommando aus irgendwelchen Gründen
nicht funktionieren, so kann das RS/6000 System über die sogenannten
System Management Services (SMS) gebootet werden (nicht alle Modelle). Diese werden
erreicht in dem während einer normalen Bootphase unmittelbar nach der Initialisierung des Keyboard
(Schriftzug "Keyboard" am ASCII-Display oder Keyboard-Symbol am Grafikterminal) die
Taste 1 (ASCII-DISPLAY) bzw. die Taste "F1" (Grafik Display) drückt.
Innerhalb der SMS läßt sich ebenfalls ein Netzwerkboot initiieren.
Die dritte Möglichkeit, eine Installation über das Netzwerk anzustoßen
besteht darin, das RS/6000 System via CD zu booten (bootlist -m normal cd0 hdisk0)
und anschließend eine Netzwerkinstallation zu beginnen. Hierbei muß aber das Netzwerk
per Hand an der Backup Control Workstation konfiguriert werden, da der
BOOTP-Request entfällt (keine Übermittlung der Netzwerkkonfiguration über den
bootpd-Daemon des NIM Master).
Insbesondere ist aber in diesem Falle darauf zu achten,
daß die AIX Version von der gebootet wird, mit derjenigen übereinstimmt, die
im zu installierenden mksysb enthalten ist. Im Falle einer AIX 4.3.2 Backup
Control Workstation muß auch von einer AIX 4.3.2 CD gebootet werden,
wenn anschließend ein AIX 4.3.2 Systembackup der Backup Control Workstation
reinstalliert werden soll.
Die dem Netzwerkboot der Backup Control Workstation folgende Installation geht
im Prinzip wie jede Installation von CD-ROM vor sich.
Da in der Regel kein Resource-Objekt vom Typ bosinst_data,
mit dem eine non-prompted Installation realisiert werden könnte,
allokiert wird, erscheint nach dem Netzwerkboot das übliche AIX Installationsmenü.
Hier empfiehlt sich insbesondere zu überprüfen, auf welche
hdisk das System installiert werden soll
(Ein mksysb-Image kann prinzipiell auch auf eine andere bootfähige Platte,
als diejenige von der es ursprünglich stammte, installiert werden).
Nach Bestätigung der Einstellungen und Beginn der Installation mit
Option 0, läuft der Prozess ohne weiteren Eingriff des Benutzers ab.
Nach Beendigung der Installation initiiert der Installationsprozess automatisch
ein Reboot des Systems. Nach dem erneuten Hochfahren des Systems und der Anmeldung
als root erscheint der Installationsassistent
(spezielles SMIT-Interface), der eine Änderung der Einstellungen am System erlaubt.
Dieser kann ohne weitere Eingabe über den entsprechenden Menüpunkt beendet werden
(Nicht mit F3 oder F10 beenden, da dieses Menü sonst nach jedem Reboot und erneuter
Anmeldung wieder erscheint).
Nach der Reinstallation sollten folgende Prüfungen auf der Backup
Control Workstation durchgeführt werden.
3.4.4.1 Plattenkonfiguration
Mit dem Skript ls_ssa
wird die Konfiguration der SSA-Festplatten überprüft.
Die Ausführung des Skriptes sollte folgenden Output ergeben:
SSA-Adapter: ssa0
SSA-Adapter Lokation: 03-02
----------------------------------------------------
Disk Adapter A1 A2 B1 B2
----------------------------------------------------
pdisk0 ssa0 4 0 - -
pdisk1 ssa0 3 1 - -
pdisk2 ssa0 1 3 - -
pdisk3 ssa0 2 2 - -
.....
---------------------------------------------------------
Nr. Disk Log. Disk Serialnumber Adapter
---------------------------------------------------------
1__ pdisk0____ hdisk1____ 000xxxxxxxxxxxx ssa0
2__ pdisk1____ hdisk2____ 000xxxxxxxxxxxx ssa0
3__ pdisk2____ hdisk3____ 000xxxxxxxxxxxx ssa0
4__ pdisk3____ hdisk4____ 000xxxxxxxxxxxx ssa0
.....
Da der cfgmgr die SSA-Platten nach deren Seriennummer
in das AIX-System integriert, kann hier eine Vertauschung der Platten
erfolgt sein. Dann ist mit den Skripten rm_ssa und
mk_ssa die Reihenfolge der Platten wieder in die korrekte Reihenfolge
zu bringen. Hierzu ist in der Datei /tmp/ssa.config in der letzten Spalte
die Numerierung der Platten anzupassen und anschließend das Skript
mk_ssa auszuführen. Hier beginnt der beschriebene
Überprüfungsprozess von Neuem.
3.4.4.2 spvg - Volume Group
Die Existenz der Informationen über die Volume Group spvg wird mit dem Kommando
lspv
überprüft. Das Kommando ergibt an einer Backup Control Workstation folgende Ausgabe:
hdisk1 0000xxxxxxxxxxxx spvg
hdisk2 0020xxxxxxxxxxxx spvg
hdisk3 0020xxxxxxxxxxxx spvg
hdisk4 0020xxxxxxxxxxxx spvg
.....
Ist die Ausgabe von der Form
hdisk1 0000xxxxxxxxxxxx None
hdisk2 0020xxxxxxxxxxxx None
hdisk3 0020xxxxxxxxxxxx None
hdisk4 0020xxxxxxxxxxxx None
.....
oder gar
hdisk1 none None
hdisk2 none None
hdisk3 none None
hdisk4 none None
.....
so sind Teile der oder sämtliche ODM Informationen über die Volume Group
spvg verlorengegangen.
Ist dies der Fall, so muss der Cluster auf der Primary Control Workstation gestoppt werden
und die Information via dem Skript cfg_spvg wieder an der
Control Workstation importiert werden.
Nach dem Import wird die Volume Group mit dem erwähnten Skript inaktiviert und der Cluster
auf der Primary Control Workstation wieder gestartet.
3.4.4.3 Start des Clusters
Der Cluster wird auf der Backup Control Workstation mit dem Skript
cl_adm start
gestartet. Anschließend wird seine Funktion mit
clinfo
überprüft. Läuft der Cluster Manager auf der Backup so erfolgt die
3.4.4.4 Übernahme des Clusters auf Backup CWS
Mit dem Kommando
/tmp/install/cl_adm takeover,
auf der Primary Control Workstation ausgeführt, wird die Cluster Funktion an die
Backup Control Workstation übergeben. Nach der erfolgreichen Übernahme kann die
Clusterfunktion wieder an die Primary Control Workstation übergeben werden.
3.4.4.5 Übernahme des Clusters auf Primary CWS
Hierzu wird das Kommando
cl_adm start,
auf der Primary Control Workstation sowie die Kommandos
cl_adm takeover
cl_adm start
auf der Backup Control Workstation ausgeführt.
Für die Skripte übernehmen wir keinerlei Gewähr. Wir empfehlen
dringend die Skripte gründlich zu studieren, da sie mit Sicherheit an die
Umgebung in der sie eingesetzt werden sollen, angepasst werden müssen.
#!/bin/ksh
#(@)# ls_ssa 2.00 22/01/01 uwau Xtelligent '01
#------------------------------------------------------------------------------
#< Dieses Skript listet für alle in einem RS/6000 System eingebauten Adapter
# Länge der SSA-Pfade ("Hops"), bis eine physikalische Platte ("pdisk")
# erreicht wird.
# Als zusätzliche Information wird fuer jede physikalische Disk die
# Connection-Adresse (Serialnumber) sowie die zugehoerige logische Disk
# ausgegeben. Diese Information wird zusaetzlich in eine Datei geschrieben,
# die als Input fuer eine automatische Neukonfiguration des SSA-Systems dienen
# kann.
#
# Die wesentlichen Kommandos in diesem Skript sind:
#
# 1) Liste der Verbindungspfade zu einer bestimmten SSA-Platte (pdisk)
# ssaconn -l <pdiskname> -a <adapter>
# Beispiel: ssaconn -l pdisk0 -a ssa0
#
# 2) Ermitteln der Seriennummer (SSA - Connection Address )
# lsattr -E -l <pdiskname> -a connwhere_shad
# Beispiel: lsattr -E -l pdisk0 -a connwhere_shad
# Bemerkung: Die in diesem Skript verwendete Option -Fvalue bewirkt die
# Ausgabe nur des Wertes der "connection address"
#
# 3) Ermitteln der logischein Disk zu einer gegebenen physikalischen Disk
# ssaxlate -l <pdiskname>
# Beispiel: ssaxlate -l pdisk0
#
# Assoz. Skripte: rm_ssa
# mk_ssa
#>
#------------------------------------------------------------------------------
# Aenderungen: 27/09/98 von Version 1.00 nach Version 1.01
# uwau Grund: Konfigurationsfile (CONFIGFILE) wird vor Ausfuehrung
# des Skriptes - falls es bereits vorhanden ist - ge-
# sichert und dann neu erzeugt.
# Aenderungen: 22/10/98 von Version 1.01 nach Version 1.02
# uwau Grund: Einfügen einer Option (-n), so dass das Skript nur
# die Connetion-Pfade, nicht aber die Connection-
# Adressen liefert.
# Aenderungen: 22/01/01 von Version 1.02 nach Version 2.00
# uwau Grund: Rewrite
#------------------------------------------------------------------------------
main()
{
VERSION=2.00
VDATE="22/01/01"
COMPANY=Xtelligent
AUTHOR=uwau
CONFIGDIR=/tmp
CONFIGFILE=ssa.config
[[ -f $CONFIGDIR/$CONFIGFILE ]] && mv $CONFIGDIR/$CONFIGFILE \
$CONFIGDIR/${CONFIGFILE}.$$
in_fo -c
[[ $1 = "-h" ]] && in_fo -h | more && exit
CONYES="yes"
[[ $1 = "-n" ]] && CONYES="no"
AD_LST=`lsdev -Cc adapter -t ssa160 | awk '{print $1}' | xargs`
PDISK_LST=`lsdev -Cc pdisk | awk '{print $1}' | xargs`
# Generiere fuer jeden Adapter eine Liste, ueber welche
# Connection eine bestimmte Platte erreicht wird.
#
for AD in $AD_LST; do
echo
echo SSA-Adapter: $AD
echo SSA-Adapter Lokation: `lscfg -l $AD | awk '/SSA/{print $2}`
echo
echo "--------------------------------------------------------------"
echo "Disk Adapter A1 A2 B1 B2"
echo "--------------------------------------------------------------"
for PDISK in $PDISK_LST; do
ssaconn -l $PDISK -a $AD
done
done
[[ $CONYES = "no" ]] && exit
# Generiere Liste der "Connection-Addresses" (= Seriennummer )
# der SSA-Platten
echo "-----------------------------------------------------------"
echo "Nr. Disk Log. Disk Serialnumber Adapter"
echo "-----------------------------------------------------------"
NR=1
for PDISK in $PDISK_LST; do
AD=`ssaadap -l $PDISK`
SERIAL=`lsattr -Fvalue -l $PDISK -a connwhere_shad`
ASSHDISK=`ssaxlate -l $PDISK| xargs`
FPDISK=`echo $PDISK"___________" | cut -c1-10`
FASSHDISK=`echo $ASSHDISK"___________"| cut -c1-10`
FNR=`echo $NR"___" | cut -c1-3`
echo "$FNR $FPDISK $FASSHDISK $SERIAL $AD"
echo "${PDISK}:${ASSHDISK}:${SERIAL}:${AD}:${NR}" >>$CONFIGDIR/$CONFIGFILE
#
((NR = NR + 1))
done
}
#------------------------------------------------------------------------------
in_fo()
{
case $1 in
-c) cat <<EOF
----------------------------------------------------------------
`basename $0` $VERSION $VDATE $AUTHOR $COMPANY
----------------------------------------------------------------
EOF
;;
-h) cat <<EOF
usage: `basename $0`
-n (nur Connections)
-h (Hilfe)
EOF
awk -F"^#" '!/awk/&&/^#</,/^#>/{print $2}' `basename $0`
;;
esac
}
#------------------------------------------------------------------------------
main $*
#------------------------------------------------------------------- Ende -----
#!/bin/ksh
#(@)# mk_ssa 2.00 22/01/01 uwau Xtelligent
#------------------------------------------------------------------------------
#< Dieses Skript legt anhand einer vorgegebenen Liste (z.B erzeugt aus ls_ssa)
# die physikalischen Disks und ihre jeweils zugehoerige logische Disk an.
# Die Platten werden in der Reihenfolge angelegt, wie sie in der Konfigura-
# tionsdatei enthalten sind. Wird die Nummerierung in der letzten Spalte
# der Konfigurationsdatei (CONFIGFILE) geaendert, so sortiert das Skript
# die Liste entsprechend der Nummerierung.
#
# Bemerkung: Vor dem Lauf dieses Skriptes duerfen keine(!) physikalischen
# Disks ("pdisk<x>" existieren. Ebenso duerfen keine SSA-logische
# Disks mehr existieren, da sonst ein zusaetzlicher Shift in die
# Nummerierung der Platten geraet.
#
# Assoz. Skripte: rm_ssa
# ls_ssa
#>
#------------------------------------------------------------------------------
# Aenderungen: DD/MM/YY von Version 2.00 nach Version 2.01
# Grund:
#------------------------------------------------------------------------------
main ()
{
VERSION=2.00
VDATE="22/01/01"
COMPANY=Xtelligent
AUTHOR=uwau
CONFIGDIR=/tmp
CONFIGFILE=ssa.config
in_fo -c
[[ ! -f $CONFIGDIR/$CONFIGFILE ]] && err_ex 1
NO_PDISKS=`lsdev -Cc pdisk`
[[ -n $NO_PDISKS ]] && err_ex 2
NO_LDISKS=`lsdev -Cc disk | awk '/SSA/{print $1}'`
[[ -n $NO_LDISKS ]] && err_ex 3
mk_sort_configfile
get_pdisk_type
AD_LST=`lsdev -Cc adapter -t ssa | awk '{print $1}' | xargs`
PDISK_LST=`cat $CONFIGDIR/$CONFIGFILE | awk -F":" '{print $1}'`
for PDISK in $PDISK_LST; do
SERIAL=`awk -F":" '$1 ~ /'$PDISK'$/{print $3}' $CONFIGDIR/$CONFIGFILE`
mkdev -c 'pdisk' -s 'ssar' -t $PTYP -p 'ssar' -w $SERIAL
wait
mkdev -c 'disk' -s 'ssar' -t 'hdisk' -p 'ssar' -w $SERIAL
wait
done
}
#-------------------------------------------------------------------------------
mk_sort_configfile()
{
sort -t: +4 -n $CONFIGDIR/$CONFIGFILE >$CONFIGDIR/${CONFIGFILE}.sort
cp $CONFIGDIR/${CONFIGFILE}.sort $CONFIGDIR/$CONFIGFILE
[[ $? -eq 0 ]] && rm $CONFIGDIR/${CONFIGFILE}.sort
}
#-------------------------------------------------------------------------------
get_pdisk_type()
{
ANT="n"
while [[ $ANT != "j" ]]; do
P_TYPE_LST=`lsdev -P -c pdisk -s ssar -F "type subclass description" | awk '{print $1}'`
NR=1
for P_TYPE in $P_TYPE_LST; do
echo "$NR) $P_TYPE \c"
((MOD = NR % 2 ))
[[ $MOD -eq 0 ]] && echo
(( NR = NR + 1 ))
done
set -- $P_TYPE_LST
echo
echo "Bitte Nummer des SSA - Plattentyps eingeben : \c" ; read TYP_NR
(( SHIFT = TYP_NR - 1))
shift $SHIFT
PTYP=$1
echo "Sie haben folgenden Typ selektiert : $PTYP"
echo "Ist das richtig (j/n)? : \c" ; read ANT
done
}
#-------------------------------------------------------------------------------
err_ex ()
{
case $1 in
1) cat <<EOF
Die angegebene SSA - Konfigurationsdatei $CONFIGFILE existiert nicht im
Verzeichnis $CONFIGFILE.
Das Skript wird abgebrochen.
EOF
exit 1 ;;
2) cat <<EOF
Es existieren noch physikalische Disks ("pdisk<x>") in diesem System. Bitte
sicherstellen, dass keine derartigen SSA - Platten existieren und erneut
starten.
Das Skript rm_ssa sollte alle Platten loeschen !
Das Skript wird abgebrochen.
EOF
exit 2 ;;
3) cat <<EOF
Es existieren noch logische SSA Disks ("hdisk<x>") in diesem System. Bitte
sicherstellen, dass keine derartigen SSA - Platten existieren und erneut
starten.
Das Skript rm_ssa sollte alle Platten loeschen !
Das Skript wird abgebrochen.
EOF
exit 3 ;;
esac
}
#------------------------------------------------------------------------------
in_fo()
{
case $1 in
-c) cat <<EOF
----------------------------------------------------------------
`basename $0` $VERSION $VDATE $AUTHOR $COMPANY '98
----------------------------------------------------------------
EOF
;;
-h) cat <<EOF
usage: `basename $0`
EOF
;;
esac
}
#-------------------------------------------------------------------------------
main $*
#------------------------------------------------------------------- Ende -----
#!/bin/ksh
#(@)# rm_ssa 2.00 22/01/01 uwau (C) Xtelligent
#------------------------------------------------------------------------------
# Dieses Skript loescht alle physikalischen Disks ("pdisk") und ihre jeweils
# zugehoerigen logische Disk ("hdisk").
# Aenderungen: 25/09/98 von Version 1.00 nach Version 1.01
# uwau Grund: Version 1.00 loeschte nur Platten, die alle Available
# waren. Mit dieser Version werden alle SSA - Platten
# unabhaengig vom Zustand (Defined - Available)
# geloescht.
# Aenderungen: 22/01/01 von Version 1.00 nach Version 2.00
# uwau Grund: Rewrite
#------------------------------------------------------------------------------
main()
{
VERSION=2.00
VDATE="22/01/01"
COMPANY=Xtelligent
AUTHOR=uwau
in_fo -c
[[ $# -eq 0 ]] && in_fo -h && exit 1
OPTION=$1; shift 1
P_AVAIL_LST=`lsdev -Cc pdisk | awk '/SSA/&&/Available/{print $1}' | xargs`
H_AVAIL_LST=`lsdev -Cc disk | awk '/SSA/&&/Available/{print $1}' | xargs `
P_DEFIN_LST=`lsdev -Cc pdisk | awk '/SSA/&&/Defined/{print $1}' | xargs`
H_DEFIN_LST=`lsdev -Cc disk | awk '/SSA/&&/Defined/{print $1}' | xargs`
case $OPTION in
-h) in_fo -h
;;
*) ssa_delete_disks $OPTION
;;
esac
}
#------------------------------------------------------------------------------
ssa_delete_disks ()
{
CASE=$1
ODM_DEL=""
case $CASE in
-s) DISK_LST="$H_AVAIL_LST"
MSG="Loesche die Disk : "
ODM_DEL="-d"
;;
-p) DISK_LST="$P_AVAIL_LST"
MSG="Setze in Status 'defined': "
;;
-l) DISK_LST="$H_AVAIL_LST"
MSG="Setze in Status 'defined': "
;;
-c) DISK_LST="$P_AVAIL_LST $H_AVAIL_LST"
MSG="Setze in Status 'defined': "
;;
-d) DISK_LST="$P_AVAIL_LST $H_AVAIL_LST $P_DEFIN_LST $H_DEFIN_LST"
MSG="Loesche die Disk : "
ODM_DEL="-d"
;;
esac
# Schreibe eine Liste zur Information
mk_list 4 $DISK_LST
echo "\nSind Sie sicher die Platten zu loeschen (j/n) ? : \\c"; read ANT
case $ANT in
j|J)
for DISK in $DISK_LST; do
echo "\c$MSG \c"
rmdev -l $DISK $ODM_DEL
done
;;
*) echo "Sie wollen die Platten doch nicht loeschen !"; exit 1
;;
esac
}
#------------------------------------------------------------------------------
mk_list()
{
set -- $*
COLUMNS=$1;shift 1
COUNTER=1
while [[ $1 != "" ]]; do
T_COUNTER=$COUNTER
[[ $COUNTER -le 9 ]] && T_COUNTER=0$COUNTER
echo " [ $T_COUNTER ] $1 \\c" && shift 1
((MOD=COUNTER%COLUMNS))
[[ $MOD -eq 0 ]] && echo
(( COUNTER = COUNTER + 1 ))
done
}
#------------------------------------------------------------------------------
in_fo()
{
case $1 in
-c) cat <<EOF
----------------------------------------------------------------
`basename $0` $VERSION $VDATE $AUTHOR $COMPANY
----------------------------------------------------------------
EOF
;;
-h) cat <<EOF
usage: `basename $0`
-s) Loesche alle SSA-Logical Disks (hdiskx) auch aus
der ODM. Diese Option ist für die Preparation eines
SSA-Raids hilfreich
-d) Loesche alle Disks aus der ODM - Datenbank
-p) Loesche SSA-Physical Disks (wenn "Available")
-l) Loesche SSA-Logical Disks (wenn "Available")
-c) Setze alle SSA-Disks in "Defined" - Status
Alle Optionen schliessen sich gegenseitig aus. Es kann also nur
jeweils eine Option uebergeben werden.
EOF
;;
esac
}
#------------------------------------------------------------------------------
main $*
#------------------------------------------------------------------Ende--------
#!/bin/ksh
#(@)#cfg_spvg 2.00 22/01/01 kawe Xtelligent
#------------------------------------------------------------------------------
#< Dieses Skript hilft beim Hantieren mit einer Volume-Group. Ist insbesondere
# hilfreich bei einer HACMP-Installation, wenn die Volume Group immer wieder
# auf den Knoten bekannt gemacht werden muss
#
#
#>
#------------------------------------------------------------------------------
# Aenderungen: DD/MM/YY von Version 2.00 nach Version 2.01
# Grund:
#------------------------------------------------------------------------------
if [[ $# -lt 1 ]]; then
echo "usage: \\n-i = import; \\n-e = export ; \\n-d = dormant;
\\n-c = change mount-option; \\n-m = mount fs;
\\n-u = umount fs;" && exit 1
fi
if [ "$1" = "-i" ]; then
echo "importing spvg"
importvg -V 100 -y spvg hdisk1
wait
varyonvg spvg
wait
chvg -a'n' -Q'n' -x'n' spvg
LVLST=`lsvg -l spvg | awk '/jfs/&&!/jfslog/{print $7}'`
# mount filesystems
for LV in $LVLST; do
mount $LV
done
# list for check:
df
fi
if [ "$1" = "-e" ]; then
echo "exporting spvg"
LVLST=`lsvg -l spvg | awk '/jfs/&&!/jfslog/{print $7}'`
# umount filesystems
for LV in $LVLST; do
umount $LV
done
wait
LVLST=`lsvg -l spvg | awk '/jfs/&&!/jfslog/{print $7}'`
if [[ -z $LVLST ]]; then
echo "Not all filesystems unmounted."
exit 2
fi
varyoffvg spvg
wait
exportvg spvg
df
fi
if [ "$1" = "-d" ]; then
echo "make spvg dormant"
chvg -a'n' -Q'n' -x'n' spvg
LVLST=`lsvg -l spvg | awk '/jfs/&&!/jfslog/{print $7}'`
# umount filesystems
for LV in $LVLST; do
umount $LV
done
wait
LVLST=`lsvg -l spvg | awk '/jfs/&&!/jfslog/{print $7}'`
if [[ -z $LVLST ]]; then
echo "Not all filesystems unmounted."
exit 2
fi
varyoffvg spvg
wait
df
fi
if [ "$1" = "-c" ]; then
echo "set filesystems to mount=no"
LVLST=`lsvg -l spvg | awk '/jfs/&&!/jfslog/{print $7}'`
for LV in $LVLST; do
chfs -A no $LV
done
fi
if [ "$1" = "-u" ]; then
echo "umounting spvg filesystems"
LVLST=`lsvg -l spvg | awk '/jfs/&&!/jfslog/{print $7}'`
# umount filesystems
for LV in $LVLST; do
umount $LV
done
wait
df
fi
if [ "$1" = "-m" ]; then
echo "mounting spvg filesystems"
LVLST=`lsvg -l spvg | awk '/jfs/&&!/jfslog/{print $7}'`
# mount filesystems
for LV in $LVLST; do
mount $LV
done
wait
df
fi
#!/bin/ksh
#(@)#cl_adm 2.00 22/01/01 uwau Xtelligent
#------------------------------------------------------------------------------
#< Dieses Skript hilft beim Hantieren mit einem HACMP-Cluster. Ist insbesondere
# hilfreich bei einer HACMP-Installation, wenn der Cluster immer wieder
# übernommen werden muss und man sich die Optionen nicht merken kann oder
# will.
#>
#------------------------------------------------------------------------------
# Aenderungen: DD/MM/YY von Version 2.00 nach Version 2.01
# Grund:
#------------------------------------------------------------------------------
VERSION=2.00
VDATE="22/01/01"
COMPANY=Xtelligent
AUTHOR=uwau
cat <<EOF
-----------------------------------------------------------------
`basename $0` $VERSION $VDATE $AUTHOR $COMPANY
-----------------------------------------------------------------
EOF
case $1 in
start) /usr/sbin/cluster/etc/rc.cluster -boot '-N' '-i'
;;
stop) /usr/sbin/cluster/utilities/clstop -y '-N' '-g'
;;
takeover) /usr/sbin/cluster/utilities/clstop -y '-N' '-gr'
;;
*) cat <<-EOF
usage: cl_adm {start | stop | takeover}
EOF
;;
esac
Hier gibt es weitere Informationen zu den Themen dieses X-Letters.
NIM: From A to Z in AIX 4.3, SG24-5524-00
Additional AIX Security Tools on IBM e(logo)server pSeries, IBM RS/6000, and SP/Cluster
, SG24-5971-00 2001-01-19
RS/6000 SP System Performance Tuning Update
, SG24-5340-01 2001-01-19
IBM Certification Study Guide AIX Communications
, SG24-6186-00 2000-12-22
IBM Certification Study Guide AIX Problem Determination Tools and Techniques
, SG24-6185-00 2000-12-22
IBM Certification Study Guide AIX Performance and System Tuning
, SG24-6184-00 2000-12-22
IBM Certification Study Guide AIX Installation and System Recovery
, SG24-6183-00 2000-12-22
Exploiting RS/6000 SP Security: Keeping It Safe
, SG24-5521-00 2000-11-30
PSSP 3.2: RS/6000 SP Software Enhancements
, SG24-5673-00 2000-10-17
IBM RS/6000 Clustered Enterprise Servers Systems Handbook
, SG24-5978-00 2000-08-21
PSSP Version 3 Survival Guide
, SG24-5344-00 2000-01-07
Oracle8i Parallel Server on IBM SP Systems: Implementation Guide
, SG24-5591-00 1999-12-23
RS/6000 SP System Management: Power Recipes for PSSP 3.1
, SG24-5628-00 1999-09-14
RS/6000 SP Software Maintenance
, SG24-5160-00 1999-07-29
The RS/6000 SP Inside Out
, SG24-5374-00 1999-05-26
HACMP Enhanced Scalability Handbook
, SG24-5328-00 1999-01-27
SP Perspectives: A New View of Your SP System
, SG24-5180-00 1999-01-11
HACMP Enhanced Scalability: User-Defined Events
, SG24-5327-00 1998-11-24
PSSP 3.1 Announcement
, SG24-5332-00 1998-11-18
PSSP 2.4 Technical Presentation
, SG24-5173-00 1998-06-29
Technical Presentation for PSSP 2.3
, SG24-2080-00 1997-12-16
HACMP Enhanced Scalability
, SG24-2081-00 1997-11-06
Integrating TME 10 on the RS/6000 SP
, SG24-2071-00 1997-09-11
RS/6000 SP: PSSP 2.2 Survival Guide
, SG24-4928-00 1997-08-15
RS/6000 SP Monitoring: Keeping it Alive
, SG24-4873-00 1997-05-01
|
|