Network Installation Management

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Network Installation Management (NIM) ist ein Client-Server-basiertes Framework zur Softwareverwaltung bzw. -provisionierung für das IBM-Betriebssystem AIX.

Funktion[Bearbeiten]

Das System besteht aus einem zentralen NIM-Server, der eine Reihe installierbarer Softwarepakete und zu deren Installation notwendige Einrichtungen vorhält. Sämtliche Ressourcen (Clients, Netze, Pakete, ...) werden in einer eigenen Datenbank[1] verwaltet. Von diesem Server aus werden andere Systeme, NIM-Clients genannt, über Netzwerk-Verbindungen bedient.

Mit NIM können folgende Operationen durchgeführt werden:

Die letzten drei Punkte setzen auf NFS als Mittel zur Datenverteilung auf.

NIM ist kompatibel mit Techniken wie alt_disk_install bzw. alt_disk_migration und auch deren Nachfolger Multibos. Auch Knoten in HACMP- bzw. PowerHA-Clustern können mittels NIM provisioniert werden. Das System gestattet die parallele Durchführung der jeweiligen Operation auf einer ganzen Gruppe von Clients, was das Ausrollen von Software auf ganze Umgebungen erlaubt.

Architektur[Bearbeiten]

Der NIM-Server verwaltet in einer Datenbank im ODM-Format[1] alle zu seiner Funktion notwendigen Daten. Dies sind insbesondere:

  • installierbare Software (siehe unten)
  • vom jeweiligen Server abhängige Client-Systeme und deren Eigenschaften
  • Netzwerke, über die die Clients angesprochen werden können

Clients[Bearbeiten]

Das System kann dazu verwendet werden, Systeme wie X-Terms zu versorgen, aber die übliche Verwendung ist die Provisionierung von in der NIM-Nomenklatur standalone genannten Systemen: gewöhnlichen Maschinen (LPARs oder physische Maschinen), die sich lediglich durch ihre Beziehung zum NIM-Server auszeichnen. Um seine Arbeit verrichten zu können, muss der NIM-Server in der Lage sein, entweder per Remote Shell oder über ein NIM-eigenes Äquivalent, nimsh, auf dem Client Kommandos (als root) auszuführen.

Software-Ressourcen[Bearbeiten]

Die drei für den Administrator wichtigsten Arten von Software-Ressourcen sind: LPP-Source, SPOT und mksysb. Daneben gibt es noch einige weitere Arten (z.B. die Boot-ROMs für verschiedene Maschinentypen, um Systeme extern booten zu können), um die sich das System im Großen und Ganzen selbst kümmert.

LPP-Source[Bearbeiten]

Ist eine Sammlung von installierbaren Paketen (bff-Format oder rpm) mit einem Namen, um die Sammlung als Entität handhaben zu können. Von einer solchen Sammlung weg können Softwarepakete installiert oder auch durch Updates auf einen anderen Versionsstand gebracht werden. Es ist mit NIM-Mitteln möglich, in ein LPP-Source wie in ein virtuelles System zu "installieren", sodass die Ressource selbst auch mit den Mitteln der Softwarepflege bearbeitet werden kann.

SPOT[Bearbeiten]

SPOT steht für shared product object tree und ist genaugenommen die Entsprechung eines - geshareten - /usr-Verzeichnisses. Es wird zB. bei XTerms NFS-gemountet anstelle einer lokalen Platte. Bei Standalone-Systemen dient es bei der initialen Installation zur Erzeugung eines Ursystems, ähnlich dem initramfs bei der Linux-Installation. Auch der SPOT kann - mit einem LPP-Source als Quelle - installiert und upgedatet werden.

mksysb[Bearbeiten]

Das mksysb ist ein bootfähiges Image eines kompletten, installierten Betriebssystems (neben einigen Zusatzinformationen im Wesentlichen ein savevg rootvg) und wird vom gleichnamigen Befehl erzeugt. Es gibt zwei grundlegende Möglichkeiten, mksysbs zu verwenden: man erstellt ein Golden Image und verwendet dies, um alle weiteren Systeme mit einer Basisinstallation zu versorgen, die man dann durch weitere Softwareinstallationen je nach Verwendungszweck des Systems individualisiert. Daneben kann man auch von einem laufenden System mit NIM-Mitteln ein solches mksysb-Image erzeugen und auf dem NIM-Server speichern, sodass im Fehlerfalle ein vollständig konfiguriertes Backup sehr schnell zur Verfügung steht und nur auf neue Hardware aufgebracht werden muss. Das auf dem NIM-Server vorgehaltene mksysb kann dazu benutzt werden, remote das Zielsystem zu booten wie auch zu installieren.

Bundles[Bearbeiten]

Daneben gibt es noch die Möglichkeit, einzelne installierbare Pakete zu sogenannten Bundles zusammenzufassen, die dann gemeinsam auf einen oder mehrere Client(s) aufgebracht werden können. Die Definition geschieht über einfache ASCII-Dateien, in denen die Pakete aufgelistet sind. Zum Unterschied von LPP-Sources, die meist eine gesamte Betriebssystem-Version oder -Revision (zB. einen Maintenance Level oder Technical Level, ein Service Pack oder dergleichen) beinhalten, werden Bundles meist für einen bestimmten Zeweck angelegt, etwa eine Version eines bestimmten Treiberpakets.

Ablauf einer System-Installation[Bearbeiten]

Zunächst werden die zu verwendenden Ressourcen (typischerweise ein mksysb) freigeschaltet und vom System auf dem NIM-Server unter /tftpboot abgelegt. Danach wird die Zielmaschine gestartet und die Boot-PROMs sorgen für die Initiierung einer bootp-Sequenz, die der Maschine ihre IP-Adresse zuweist. Sodann wird ein rudimentäres initiales System per tftp übertragen. Dieses System wird gestartet und übernimmt die weitere Installation des im mksysb abgelegten System-Images.

Ablauf einer Software-Installation bzw. eines Updates[Bearbeiten]

Zunächst werden die zu verwendenden Ressourcen (typischerweise ein LPP-Source) freigeschaltet. Die NIM-Befehle sorgen automatisch für die entsprechenden NFS-Freigaben in /etc/exports. Die danach folgenden Vorgänge können sowohl von der Maschine wie auch vom NIM-Server aus durchgeführt werden: die freigegebene Ressource wird über NFS gemountet, danach die Software mit den normalen Mitteln der Paketverwaltung (installp und/oder RPM Package Manager) installiert, bzw. upgedatet, danach der NFS-share wieder abgehängt.

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. a b Backing up the NIM database from the command line (englisch) AIX-Dokumentation des Herstellers. Abgerufen am 25. Jänner 2014