Xtelligent | 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


Inhalt

1 Einleitung
2 Network Installation Management
2.1 Netzwerk-Objekte
2.2 Maschinen-Objekte
2.3 Resourcen-Objekte
2.4 Konfiguration
2.4.1 Überblick über bestehende Netzwerk-Objekte
2.4.2 Überblick über bestehende Maschinen-Objekte
2.4.3 Überblick über bestehende Resource-Objekte
2.4.4 Definition der LPP Source AIX
2.4.5 Definition der Resource AIX 4.2.1 SPOT
2.4.6 Definition der Resource Backup CWS mksysb Image
2.4.7 Definition eines Maschinen Objektes
2.5 NIM Installation
2.5.1 NIM Resource Allocation
2.5.2 NIM Operationen (Aktionen)
2.5.3 Tests der Einstellungen
3 Recovery
3.1 Szenario
3.2 Voraussetzungen
3.3 Ablauf
3.4 Die Details
3.4.1 NIM Konfiguration
3.4.2 Netzwerkboot
3.4.3 Installation
3.4.4 Tests
3.4.4.1 Plattenkonfiguration
3.4.4.2 Volume Group spvg
3.4.4.3 Start des Clusters
3.4.4.4 Übernahme des Cluster auf Backup CWS
3.4.4.5 Übernahme des Cluster auf Primary CWS
4 Anhang
4.1 Skripte
4.1.1 ls_ssa
4.1.2 mk_ssa
4.1.3 rm_ssa
4.1.4 cfg_spvg
4.1.5 cl_adm
4.2 Weiterführende Informationen

1 Einleitung

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.

2 Network Installation Management

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.

2.1 Netzwerk-Objekte

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)

2.2 Maschinen-Objekte

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).

2.3 Resourcen-Objekte

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

2.4 Konfiguration

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.

2.4.1 Überblick über bestehehende Netzwerk-Objekte

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.

2.4.2 Überblick über bestehehende Maschinen-Objekte

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 --------------------------------------------------------------------------

2.4.3 Überblick über bestehehende Resource-Objekte

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

2.4.4 Definition der LPP Source "AIX"

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.

2.4.5 Definition der Resource "AIX 4.2.1 SPOT"

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.

2.4.6 Definition der Resource "mksysb" Image

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.

2.4.7 Definition eines Maschinen Objektes

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.

2.5 NIM Installation

Nachdem nun alle benötigten Resourcen definiert und generiert wurden, werden auf den entsprechenden Objekten Aktionen durchgeführt .

2.5.1 NIM Resource Allocation

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.

2.5.2 NIM Operationen

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.

2.5.3 Tests der Einstellungen

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.

3 Recovery

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.

3.1 Szenario

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

3.2 Voraussetzungen

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).
  • 3.3 Ablauf

    Folgendes Diagramm zeigt schematisch die einzelnen Schritte, die beim Recovery der Backup Control Workstation durchzuführen sind.

    Diagramm [16 kB]

    3.4 Die Details

    3.4.1 NIM Konfiguration

    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.

    3.4.2 Netzwerkboot

    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.

    3.4.3 Installation

    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).

    3.4.4 Tests

    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.

    4 Anhang

    4.1 Skripte

    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.

    4.1.1 ls_ssa

    #!/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 -----
    
    
    

    4.1.2 mk_ssa

    #!/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 -----
    
    
    
    
    

    4.1.3 rm_ssa

    #!/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--------
    
    

    4.1.4 cfg_spvg

    #!/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
    
    

    4.1.5 cl_adm

    
    #!/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
    
    

    4.2 Weiterführende Informationen

    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

    2kB

    xtelligent.de - Impressum und Datenschutzerklärung
    Die Rechte an Warenzeichen und Produktnamen liegen beim jeweiligen Eigentümer.
    © 2000 - all rights reserved - Xtelligent IT Consulting GmbH
    1kB