Grundlagen

  • Lesen Sie bitte zunächst die Howto-Grundlagen, welche Sie hier finden.


Prämisse

Sie haben einen funktionierenden Load-Balancer eingerichtet und möchten nun Ihr LDAP-Verzeichnis über diesen von zwei Servern bedienen lassen, wobei sowohl LDAP, wie auch LDAPS-Anfragen möglich sein sollen.


Dienst IP Server 1 IP Server 2 NetMask Virtuelle IP
LDAP-Server 192.168.1.100 192.168.1.101 255.255.255.0 10.0.10.50


Dieses Howto beschreibt, wie der LB-Verbund zu konfigurieren ist, um einen LDAP-Cluster zu betreiben. Die Konfiguration der sich im Cluster befindenden LDAP-Server wird im LDAP-Cluster-Howto beschrieben.


Voraussetzungen

Sie haben nach den hier zu findenden Angaben eine Load-Balancer eingerichtet.


Software

Damit der Load-Balancer LDAP-Anfragen entgegennehmen und verarbeiten kann, ist es erforderlich, dass das Paket perl-LDAP installiert ist. Ferner benötigt er zur Handhabung von LDAPS-Anfrage das Paket perl-Crypt-SSLeay. Bitte stellen Sie sicher, dass dies bei Ihnen der Fall ist, ansonsten installieren Sie sie wie folgt.

-bash-3.1# yum install perl-LDAP perl-Crypt-SSLeay


Konfiguration

Die Konfiguration des Load-Balancers stellt ebenfalls keine grosse Hürde dar. Im Folgenden wird sie vorgestellt.

Beachten Sie, dass alle Konfigurationen an allen sich im LB-Verbund befindlichen Servern durchzuführen sind. Hierbei gilt, dass auf allen Servern eine zu den im Folgenden aufgeführten Konfigurationen identische Version abgelegt werden muss.

Heartbeat

Sie müssen Ihrem Load-Balancer bekannt geben, dass er diese Aufgabe zu bewerkstelligen hat. Fügen Sie hierzu der Datei /etc/ha.d/haresources folgenden Inhalt hinzu, nicht eventuell vorhandenes ersetzen.

fqdn.lb1.mydom.local \
    ldirectord::ldirectord.ldap.cf \
    LVSSyncDaemonSwap::master \
    IPaddr2::10.0.10.50/24/eth0/10.0.10.255

Sollte es sich bei diesem Dienst um den ersten Dienst handeln, den Sie einrichten, dann ersetzen Sie bitte ldirectord.cf mit ldirectord.ldap.cf in Ihrer ha.cf Konfigurationsdatei.


Ldirectord

Nachdem Sie Heartbeat konfiguriert haben, muss nun ebenfalls noch der Ldirectord konfiguriert werden. Hierzu erstellen Sie die Datei /etc/ha.d/ldirectord.ldap.cf und fügen den folgenden Inhalt ein.

checktimeout=10
checkinterval=2
autoreload=yes
logfile="local0"
quiescent=yes

virtual=10.0.10.50:389
        real=192.168.1.100:389 gate
        real=192.168.1.101:389 gate
        fallback=172.22.40.130:389 gate
        service=ldap
        checktype=10
        checkport=389
        negotiatetimeout=10
        checktimeout=10
        scheduler=wlc
        login = "uid=ldirectord,ou=Special Users,dc=mydom,dc=local"
        passwd = "myPersonalPwd"
        request="dc=mydom,dc=local"
        receive="dc=mydom,dc=local"
        protocol=tcp

virtual=10.0.10.50:636
        real=192.168.1.100:389 gate
        real=192.168.1.101:389 gate
        fallback=172.22.40.130:636 gate
        service=ldap
        checktype=10
        checkport=389
        negotiatetimeout=10
        checktimeout=10
        scheduler=wlc
        login = "uid=ldirectord,ou=Special Users,dc=mydom,dc=local"
        passwd = "myPersonalPwd"
        request="dc=mydom,dc=local"
        receive="dc=mydom,dc=local"
        protocol=tcp

Ein Wort zum fallback-Parameter. Es ist davon aus zugehen, dass auf Ihren LB-Systemen keine LDAP-Server ausgeführt wird und somit können Sie diese auch einfach weg lassen. Es ist jedoch praktisch, auf den LB selbst einen nur vom LB selber zugänglichen LDAP-Server zu installieren und zu betreiben, welcher im Falle eines Falles alle Anfragen bedient. Selbstverständlich lässt sich auf diese Art und Weise auch ein separater Server einbinden und wer das nötige Kleingeld übrig hat, warum nicht… ;-)


Neustart

Zur Übernahme der neuen Konfiguration müssen Sie Ihren Load-Balancer neu starten.

-bash-3.1# /etc/init.d/heartbeat restart

oder, wenn Sie allen Anweisungen im LB-Howto gefolgt sind:

-bash-3.1# rcheartbeat restart