Lastausgleich und Failover für die Active Directory-Authentifizierung

8

Für Anwendungen, die sich bei einem Active Directory-Domänencontroller authentifizieren, ist es natürlich am besten, sie nur auf den DNS-Eintrag der Hauptdomäne und nicht auf einen bestimmten Domänencontroller für Failover, Lastausgleich usw. zu verweisen.

Was sind Best Practices für Anwendungen, die Sie dazu zwingen, die IP eines DC fest zu codieren? Wir könnten stattdessen die IP-Adresse eines Load Balancers hart codieren. Wenn also ein DC ausfällt, kann sich diese Anwendung immer noch authentifizieren. Gibt es bessere Alternativen?

Bohrturm
quelle
2
Wer eine Anwendung geschrieben hat, die Sie dazu zwingt, die IP-Adresse eines Domänencontrollers fest zu codieren, weiß nicht, was er oder sie tut.
Ryan Ries
1
Finden Sie den Entwickler der Anwendung und lassen Sie ihn das Problem beheben.
Michael Hampton
Es ist hauptsächlich für einige ältere Apps und alte NAS-Boxen, die wir noch nicht ersetzen können.
Derrick

Antworten:

8

In Active Directory sind bereits Lastausgleichstechniken integriert. Ihr Windows-Client weiß, wie die redundanten Domänencontroller an seinem eigenen Standort gefunden werden und wie ein anderer verwendet wird, wenn der erste nicht verfügbar ist. Es ist kein zusätzlicher Lastausgleich erforderlich, z. B. "Clustered" -DCs usw., solange Sie über redundante DCs verfügen.

In gewisser Weise können Sie sich einen Active Directory-Standort als "Load Balancer" vorstellen, da Clients an diesem Standort zufällig einen der Domänencontroller am selben Standort auswählen. Wenn alle Domänencontroller an einem Standort ausfallen oder wenn der Standort keine Domänencontroller hat, wählen die Clients einen anderen Standort aus (entweder den nächstgelegenen Standort oder zufällig).

Sie können den von Active Directory bereitgestellten DNS-Dienst für Clients mit Domänenbeitritt ausgleichen, indem Sie einen VIP auf einen Hardwarelastausgleich setzen und diesen VIP-Lastausgleich zwischen mehreren Domänencontrollern vornehmen. Fügen Sie dann auf Ihren Clients diesen VIP als bevorzugten DNS-Server in die TCP / IP-Konfiguration ein.

Ich mache das gerade für eine globale Infrastruktur und es funktioniert großartig.

Dies gilt jedoch nur für den DNS-Dienst.

Versuchen Sie nicht, Ihre Domänencontroller für die Authentifizierung auszugleichen. Es bittet um Ärger. Sie müssten zumindest eine Menge komplexer benutzerdefinierter SPN-Arbeiten ausführen und würden sich aus den Grenzen des Microsoft-Supports herauswerfen. Aus diesem Blog, den Sie lesen sollten , werde ich ihn zitieren:

Kehren Sie zu den Anbietern zurück und sagen Sie ihnen, dass Sie sie nicht als AD-integriert betrachten, und Sie werden eine andere Lösung finden.

Was nun Anwendungen betrifft, bei denen Sie aufgefordert werden, die IP-Adresse eines Domänencontrollers einzugeben? Nun, ich werde nur meinen Kommentar wiederholen:

Wer eine Anwendung geschrieben hat, die Sie dazu zwingt, die IP-Adresse eines Domänencontrollers fest zu codieren, weiß nicht, was er oder sie tut.

Ryan Ries
quelle
Die ursprüngliche Frage lautete: "Was sind Best Practices für Anwendungen, die Sie dazu zwingen, die IP eines DC fest zu codieren?". Die Annahme, dass es keine legitimen Apps gibt, die die dynamische Erkennung nicht unterstützen, ist eine schlechte Annahme. Es gibt viele Nicht-Windows-Anwendungen, die eine Authentifizierung gegen Active Directory durchführen möchten. Was ist der beste Weg, um diese Anwendungen zum Laufen zu bringen, wenn eine dynamische DC-Erkennung keine Option ist?
Dscoduc
@Dscoduc Holen Sie sich bessere Anwendungen.
Ryan Ries
3

Es gab noch nie einen guten Grund, eine IP fest zu codieren oder eine IP zum Lösen von AD-Abfragen zu verwenden. Es gibt keine Best Practices für schlechte Praktiken.

Jim B.
quelle
1
"Es gibt keine Best Practices für schlechte Praktiken." Zitat des Tages, Sir.
Mfinni
1

Einige der anderen Antworten auf diese Frage scheinen davon auszugehen, dass es keine andere Welt als Microsoft-fähige Anwendungen gibt. Leider ist dies nicht der Fall, wie die ursprüngliche Frage belegt:

Was sind Best Practices für Anwendungen, die Sie dazu zwingen, die IP eines DC fest zu codieren ?

Obwohl Microsoft die Verwendung einer NLB-Lösung vor Active Directory nicht unterstützt oder empfiehlt, scheint es tatsächlich einige Optionen für die Authentifizierung von Anwendungen zu geben, die nicht Microsoft AD-fähig sind.

Dscoduc
quelle
Um diese Frage und meine Antwort zu beantworten, hat mein Unternehmen eine robuste F5 LDAP Local Traffic Manager-Lösung implementiert, die Active Directory für Nicht-Windows-Systeme erfolgreich unterstützt, die den DCLocator-Dienst nicht nutzen können. Wir haben sechs LTMs, die den Verkehr auf der ganzen Welt ohne Probleme abwickeln.
Dscoduc
0

Ein tatsächlicher Bedarf an externem "Load Balancing" AD ist selten und es ist schwierig, dies richtig zu tun. Die Notwendigkeit typischer Abfragen funktioniert möglicherweise einwandfrei. Ein typischer Windows-Client und Anwendungen müssen jedoch Aktualisierungen durchführen. Ein Windows-Client versucht, eine Affinität zu einem bestimmten Gleichstrom herzustellen. Wenn er etwas aktualisiert und sofort einen nachfolgenden Vorgang versucht, trifft er denselben Gleichstrom. Anwendungsentwickler machen dasselbe. Wenn Sie Code schreiben, der ein Benutzerkonto erstellt, und dann 1 ms später versuchen, das Kennwort für dieses Konto zu ändern, müssen Sie denselben Gleichstrom drücken.

Wenn Sie AD mit einer Load-Balancer-Lösung ausstatten, übernehmen Sie die Verantwortung dafür, dass diese Ansätze und Affinitäten nicht brechen.

Wenn die Verfügbarkeit im Gegensatz zum Lastausgleich erforderlich ist, ist das Clustering möglicherweise besser geeignet (Cluster kann Würmer beiseite legen).

Bei großen AD-Implementierungen besteht ein traditionellerer Ansatz darin, die Mehrheit der Verbraucher zu identifizieren und sie an einem Standort mit eigenen DCs zu platzieren. Wenn Sie beispielsweise über fünf Exchange-Server verfügen, erstellen Sie eine Site für die Subnetze dieser Server und fügen Sie dedizierte GCs in diese Site ein. Gleiches gilt für andere Server wie SharePoint.

Greg Askew
quelle