next up previous contents
Next: Statusmanagement Up: 5.2.1 Objektmodell Previous: 5.2.1 Objektmodell

Konfigurationsmanagement

Zur Bereitstellung des Dienstes ist es erforderlich, die Konfiguraton der NIS-Server und Clients auslesen und verändern zu können.

Eine der wichtigsten Konfigurationsinformationen bei NIS ist der Name der Domäne. Dieser ist trivialerweise im Attribut Name von Domain festgehalten. Das erstmalige Anlegen eines Masters impliziert ebenfalls das Anlegen einer neuen Instanz von Domain und zugehöriger Map-Instanzen. AIX sieht hierfür das Administrationskommando mkmaster vor. Dieses führt das Kommando ypinit -m aus, um die Maps im Verzeichnis /var/yp/«domainname» zu kreieren. Außerdem wird der Prozeß ypserv gestartet und abhänging von den booleschen Attributen Passwd und Updated auch die optionalen Prozesse rpc.yppasswdd und rpc.ypupdated. Zusätzlich wird das Boot-Skript rc.nfs modifiziert, um den Dienst nach dem nächsten Reboot des Systems automatisch zu starten. Sobald ein Master für eine Domäne vorhanden ist, können Slave-Server angelegt werden. Die Hostnamen aller Server einer Domäne können durch die Methode listServers() ausgelesen werden. Dies wird durch das AIX-Kommando ypcat ypservers realisiert.

Zu einer NIS-Map gibt es folgende nur lesbare Informationen. Das Attribut Name enthält den vollständigen Namen der Map. Key beschreibt den Schlüssel, anhand dessen die Map indiziert ist. Einige Maps besitzen einen Kurznamen (Nickname). Basefile enthält den Namen der Konfigurationsdatei, die als Quelle für die Map dient. Integration gibt an, ob die Map die lokale Datei eines Clients erweitert («append») oder ersetzt («replace»). Die OrderNumber ist der Zeitstempel, anhand dessen beim Verteilen der Map entschieden wird, ob eine Übertragung auf den Slave-Server erforderlich ist. Der Inhalt einer Map kann über die Methode print() ausgegeben werden. Dies entspricht dem Kommando ypcat «MapName».

Die Erstellung und Verteilung neuer Maps nach Änderung der Konfigurationsdateien ist eine wichtige Aufgabe des Managements für einen NIS-Master. Hierzu werden in der Klasse NIS_Master die Methoden makeDBs() und pushMap() vorgesehen, die auf die UNIX-Kommandos make -f /var/yp/Makefile bzw. yppush zurückgreifen. Ein Master muß ferner seine Slaves kennen, damit er sie bei der Verteilung der Maps berücksichtigen kann. Die Methoden addSlave() und deleteSlave() entsprechen in der Realität der Verwaltung der Map ypservers und im Modell dem Anlegen und Löschen von Instanzen der Beziehung zwischen NIS_Master und NIS_Slave.

Auch ein Slave kann die Übertragung einer Map beim Master explizit anfordern, falls diese beispielsweise fehlerhaft ist. Die Methode pullMap() der Klasse NIS_Slave entspricht dem UNIX-Kommando yppull.

Damit auf einem Client die Dienstnutzung initialisiert werden kann, muß die Domäne festgelegt werden, an die sich der Client per Default beim Starten des Prozesses ypbind bindet. Hierfür gibt es das veränderbare Attribut DefaultDomain in der Klasse NIS_Client. Vor der erstmaligen Nutzung von NIS auf einem Client ist ein Editieren der Konfigurationsdateien, die durch NIS erweitert werden, erforderlich. Für diese Managementaufgabe ist es aber kaum möglich, Attribute bzw. Methoden zu definieren.

Die von Server bzw. Client geerbten Methoden start() und stop() veranlassen das Starten bzw. das Stoppen der oben beschriebenen für einen NIS-Server bzw. Client benötigten Prozesse.


next up previous contents
Next: Statusmanagement Up: 5.2.1 Objektmodell Previous: 5.2.1 Objektmodell
Copyright Munich Network Management Team