Sun ONE Hints
Multi Master Konfiguration des Config-Servers

In der Version 5 des Sun ONE Directory Servers ist die Replikation sehr stark weiterentwickelt worden. So gibt es zum Beispiel die Multi-Master Replikation. Dies bedeutet, dass mehrere LDAP Server in einem replizierten LDAP Server Verbund schreibberechtigt sind.
Bei jeder LDAP Server installation wird ein Administration Server und ein Konfigurationsserver benötigt. Der Konfigurations LDAP Server enthält Informationen zur Installation. Diese Informationen werden vom Administrations Server genutzt um die anderen LDAP Server zu verwalten. Es empfielt sich weiterhin, diesen Konfigurations LDAP Server von den Nutz-LDAP Servern zu trennen. Daher sieht eine Standard Installation so aus das auf jeder Maschine ein Administrations Server, ein Konfigurationsserver und der eigentliche User-LDAP Server installiert wird.
Der Konfigurationsserver pro LDAP Serverinstallation empfielt sich, da bei einem Ausfall eines Servers weiterhin die anderen Server administrierbar bleiben.
Das Problem ist nun, wenn jeder seinen eigenen Konfigurations Server hat, muß man sich zur Administration immer auf den Administrations Server des zu administrierenden LDAP Servers verbinden. Um nun zu erreichen das man alle LDAP Server von allen Administrations Servern aus administrieren kann muss man den Konfigurations LDAP selbst als Multi-Master aufsetzen.
Achtung, derzeit besteht eine Begrenzung von maximal 4 Master LDAP Servern bei einer Multi-Master Replikation.
Nun also die Installation einer auf 2 Maschinen verteilten Umgebung.

Installation der Softwarepakete

Es gibt 2 Arten der Installation.
  1. Installation als seperates Installationspaket
  2. Installation als Betriebssystembestandteil
Hier werde ich auf die Installation als Betriebssystembestandteil unter Solaris 8 eingehen (ab Solaris 9 ist die Software bestandteil des Betriebsystems). Bei den späteren Konfigurationsschritten (Konfigserver als Multi-Master aufsetzen) ist die Art der Installation irrelevant. Diese wird lediglich zur Vollständigkeit mit aufgeführt.


Grundinstallation (auf beiden Servern)

  • Entpacken Sie das Archiv in ein beliebiges Verzeichnis.
  • Wechseln Sie in das Verzeichnis: "java_es_05Q1_dirproxy/Solaris_sparc"
  • Starten Sie als "root" "./installer -nodisplay"
  • Wenn es um die Konfiguration geht dann sagen Sie "Configure Later"


Node 1 - Installation (Admin- & Konfig-Server)

Die Installation eines single Master Servers ist die Standardinstallation wie Sie immer vorgenommen wird.

Starten Sie als Root folgenden Befehl:
  • /usr/sbin/directoryserver -u 5.2 configure -nodisplay
und beachten sie bei der Installation folgende Schritte:
  • Geben Sie in der Konfiguration an, dass dies der Konfig Server ist ("The new instance will be the configuration Directory Server")
  • Als "Server Identifier" geben Sie z.B. "config" an
  • Legen Sie den Netzwerk Port fest (nicht 389 - z.B. 388, oder 390)
  • Sagen Sie das er den User-LDAP Bereich nicht füllen soll ("Don't populate")

Nach der Installation des Konfig-Servers können sie den Admin Server installieren. Starten Sie dazu als Root folgenden Befehl:
  • /usr/sbin/mpsadmserver configure -nodisplay


Anpassungen und Korrekturen
Leider wird in den bisher gelieferten Versionen der Pfad zum Konfigserver nicht richtig in die Konfiguration des Admin-Servers eingetragen. Dies wird benötigt wenn Sie sich z.B. auf den Admin-Server binden möchten und der dazugehörige Konfig-Server läuft nicht. Dann haben sie die Möglichkeit diesen über den Admin-Server zu starten. Hierzu folgen sie den folgenden Schritten:
  • wechseln sie in Ihren "Server-Root" und dort in das Verzeichnis "admin-serv/config"
  • Bearbeiten Sie die Datei: "adm.conf"
  • Korrigieren Sie die Zeile mit "ldapStart" und korrigieren Sie die Zeile mit dem Pfad zum Konfig Server:
    "ldapStart: slapd-config/start-slapd"

Damit der Konfig-Server nicht als "Root" läuft, kann mann nachträglich die Berechtigung ändern. Hierzu folgen sie den folgenden Schritten:
  • Wechseln Sie in Ihren "Server-Root" und beenden Sie den Admin Server ("./stop-admin") und den Konfig-Server ("./slapd-config/stop-slapd").
  • passen Sie die Rechte des Instanz-Verzeichnisses und der darunter liegenden Dateien an
    ("chown -R ldap:ldap slapd-config")
  • wechseln Sie in das Konfigurations Verzeichnis des Konfig-Servers ("cd slapd-config/config/")
  • bearbeiten Sie hier die Datei "dse.ldif" und ändern Sie hier den Wert im Attribut "nsslapd-localuser" auf den entsprechenden User (z.B. "ldap")
  • Starten Sie den Konfig-Server ("../start-slapd")
  • Suchen Sie mit einem LDAP Browser (oder per ldapsearch) innerhalb des Konfig Servers nach dem Attribut "nsSuiteSpotUser" (Base DN: o=NetscapeRoot)
  • Ändern Sie den Wert des Konfig-Servers (cn=slapd-config) auf den richtigen User.
  • Starten Sie danach den Konfig-Server nochmals durch.


Node 2 - Installation (Admin- & Konfig-Server)

Beim 2ten Server ist die Installation nahezu identisch. Die Reihenfolge ist nur eine andere.
Zunächst installieren Sie den Admin-Server. Starten Sie dazu als Root folgenden Befehl:
  • /usr/sbin/mpsadmserver configure -nodisplay

Geben sie hier nun als Konfig Server den Servernamen und Port des Konfig-Servers auf dem Server 1 an. Die einstellungen und Konfigurationsdaten landen nun alle zentral auf dem einen Konfig Server.

Um nun den lokalen Konfig-Server zu installieren, starten Sie dazu als Root folgenden Befehl:
  • /usr/sbin/directoryserver -u 5.2 configure -nodisplay
und beachten sie bei der Installation folgende Schritte:
  • Bei dieser Installation wird der Server als normaler LDAP Server installiert. Die Auswahl, ob dies der Konfig-Server sein soll wird ihnen nicht gegeben.
  • Als "Server Identifier" geben Sie z.B. "config" an
  • Legen Sie den Netzwerk Port fest (nicht 389 - z.B. 388, oder 390)
  • Sagen Sie das er den User-LDAP Bereich nicht füllen soll ("Don't populate")
Führen sie nun noch die Anpassung & Korrekturen die oben beschrieben sind durch.


Damit nun dieser LDAP Server später als Konfig-Server verwendet werden kann, müssen sie nun noch folgende Änderungen vornehmen:
  • Beenden Sie den LDAP Server
  • Wechseln sie in das Konfigurationsverzeichnis des LDAP Servers und bearbeiten Sie die Datei "dse.ldif"
  • Suchen sie nach dem Plugin Ojekt "dn: cn=Pass Through Authentication, ..."
  • Löschen Sie das Objekt aus der dse.ldif
  • Starten Sie nun wieder den LDAP Server
  • verbinden Sie sich mit der Admin-Konsole auf die zukünftige LDAP Server Instanz
  • Löschen Sie alle Datenbank Root-Suffixe von diesem Server
  • Legen Sie den neuen Root Suffix "o=NetscapeRoot" mit dem Datenbank Name "NetscapeRoot" an
  • richten Sie eine Master Replikation mit dem anderen Konfig Server ein
  • loggen sie sich mit der Konsole auf den aktuellen Konfig Server (von Server 1) ein und löschen Sie den unnötigen Root Suffix (NICHT o=NetscapeRoot)
  • Für den Suffix "o=NetscapeRoot" richten Sie nun ebenfalls ein Master Replikation ein.
  • Initialisieren Sie nun von diesem Server den zukünftigen Konfig Server
  • Damit der neue Konfig Server auch lokal genutzt wird, loggen sie sich nun mit der Admin Konsole auf den Admin Server des 2ten Servers ein
  • Hier gibt es die Möglichkeit den lokalen Konfig Server einzutragen.
  • Danach starten sie bitte den Admin-Server neu.

Damit verwendet nun jede Server-Installation Ihren eigenen Konfig Server. Die Änderungen werden auf alle anderen angeschlossenen Konfig Server verteilt. Sie können sich nun auf einen der Beiden Server anmelden und können von dort aus alle Server im Verbund administrieren.
hacker emblem