Under Construction

Registrieren eines neuen NIM-Clients auf dem NIM-Master

Ist der neue NIM-Client nicht verfügbar, z.B. weil er noch ausgeschaltet ist oder nicht installiert ist, dann kann der NIM-Client auch direkt auf dem NIM-Master angelegt werden. Dazu muss ein NIM-Objekt vom Typ standalone für den NIM-Client angelegt werden. Über die Kommandozeile geht dies mit dem Kommando „nim -o define“. Dabei muss der Typ des NIM-Objekts (standalone) und ein Name für das zu erzeugende NIM-Objekt angegeben werden:

aixnim # nim -o define -t standalone aix05
0042-001 nim: processing error encountered on "master":
   0042-021 m_mkmac: the "if" attribute is required for this
        operation

aixnim #

Allerdings fehlt noch die Angabe von mindestens einem Netzwerk-Interface (Attribut if). Die Informationen für ein Netzwerk-Interface besteht aus den 4 folgenden Werten, die durch Leerzeichen voneinander getrennt werden:

value1 value2 value3 [value4]

value1 – Der Name des zugehörigen NIM-Netzwerks. Alternativ kann „find_net“ angegeben werden, um mit Hilfe der IP-Adresse (Hostname) das zugehörige NIM-Netzwerk zu finden.
Value2 – Der Hostname des NIM-Clients (dieser muss auflösbar sein).
value3 – Die Hardware-Adresse (MAC-Adresse) des Interfaces auf dem Client. Wird bei einem Netzwerk-Boot kein Broadcast verwendet, dann kann anstelle einer Hardware-Adresse der Wert „0“ verwendet werden.
value4 – Optional: Der logische Gerätename des Interfaces auf dem Client.

Da ein NIM-Client mehr als ein Netzwerk-Interface haben kann, muss eine Folgenummer (1-1024) für das Interface angegeben werden.

aixnim # nim -o define -t standalone -a if1="find_net aix05 0" aix05
aixnim #

Der neue NIM-Client ist damit auf dem NIM-Master definiert:

aixnim # lsnim -l aix05
aix05:
   class          = machines
   type           = standalone
   connect        = nimsh
   platform       = chrp
   netboot_kernel = 64
  if1            = net_10_192_168_0 aix05 0
   cable_type1    = N/A
   Cstate         = ready for a NIM operation
   prev_state     = ready for a NIM operation
   Mstate         = currently running
aixnim #

Sobald der NIM-Client AIX gebootet hat, muss allerdings dort noch /etc/niminfo konfiguriert werden, und der NIM-Service-Handler (nimsh) gestartet werden. Die einfachste Möglichkeit dafür ist vermutlich das Kommando niminit mit Angabe des Namen des NIM-Clients (muss übereinstimmen mit dem Namen des NIM-Client Objekts auf dem NIM-Master) und dem Namen des NIM-Master zu starten:

aix05 # niminit -a name=aix05 -a master=aixnim
nimsh:2:wait:/usr/bin/startsrc -g nimclient >/dev/console 2>&1
0513-077 Subsystem has been changed.
0513-059 The nimsh Subsystem has been started. Subsystem PID is 7602636.
aix05 #

Der NIM-Client kontaktiert dabei den NIM-Master und erfragt die korrekte Client-Konfiguration, um diese dann in /etc/niminfo einzutragen. Anschließend wird automatisch NIMSH auf dem NIM-Client gestartet. Auf dem NIM-Master wird dabei das Attribut cpuid für das NIM-Client Objekt aktualisiert:

aixnim # lsnim -l aix05
aix05:
   class          = machines
   type           = standalone
   connect        = nimsh
   platform       = chrp
   netboot_kernel = 64
  if1            = net_10_192_168_0 aix05 0
   cable_type1    = N/A
   Cstate         = ready for a NIM operation
   prev_state     = ready for a NIM operation
   Mstate         = currently running
  cpuid          = 00DC1AD25C11
aixnim #

Es gibt eine ganze Reihe weiterer Attribute eines NIM-Client Objekts, auf die wir an späterer Stelle eingehen.