Änderungen auf verschiedenen Servern

Die Multi-Master-Replikation

Im Active Directory (AD) wird dagegen mit einer Multi-Master-Replikation gearbeitet. Das bedeutet, dass Änderungen auf verschiedenen Servern durchgeführt werden können. So können die Kennwortänderungen von Benutzern beispielsweise zunächst von einem Server am Standort Stuttgart verarbeitet werden, während neue Benutzer generell in München angelegt werden. Ein solches Multi-Master-Modell setzt relativ komplexe Synchronisationsmechanismen voraus. Es muss sichergestellt werden, dass es zu keinen Problemen kommt, wenn beispielsweise das Kennwort zweimal hintereinander verändert wird und unterschiedliche Server diese Änderung verarbeiten. Der beste Schutz vor solchen Problemen ist zwar eine stringente Administration, bei der zum Beispiel vermieden wird, dass Änderungen an einem Benutzerkonto in unkoordinierter Weise von verschiedenen Administratoren durchgeführt werden. Aber auch das System muss seinen Teil dazu beitragen, dass verteilte Änderungen möglich sind.

Gleichzeitig gilt es aber auch einen Weg ohne großen Overhead dafür zu finden. Wenn ein Server für die Verarbeitung von Änderungen jeweils unmittelbar Kontakt mit anderen Servern aufnehmen muss, dann führt das zu unnötiger Last im Netzwerk. Abgesehen davon werden dann Änderungen in vielen Situationen verhindert, weil beispielsweise ein Server nicht verfügbar ist. Im Regelfall können Änderungen im Active Directory daher auf einem Server durchgeführt werden, ohne dass dieser sofort mit anderen Servern, die auch weiterhin als Domänen-Controller bezeichnet werden, Kontakt aufnehmen müsste. Die Änderungen werden protokolliert, wobei eine USN (Update Sequence Number) und eine Version - also die Information darüber, wie oft ein Eintrag verändert wurde - mitgeführt werden. Bei einem Replikationszyklus wissen Domänen-Controller dann jeweils, bis zu welcher USN sie bereits Änderungen von einem anderen Domänen-Controller empfangen haben. Sie fordern dann nur neue Zahlen an. Die Replikation erfolgt auf der Ebene von Attributen. Im Regelfall wird dabei nicht die Situation entstehen, dass es zu einem Replikationskonflikt kommt. Ist das doch der Fall, kann anhand von USN und Version in aller Regel die aktuelle Information bestimmt werden. Für den Fall, dass ein Attribut eines Objekts innerhalb eines Replikationszyklus auf zwei verschiedenen Domänen-Controllern geändert wurde, gibt es schließlich noch die Information zur Änderungszeit, die für die Konfliktlösung herangezogen wird.

Im Gegensatz zur NDS wird bei Windows 2000 allerdings ohne einen komplexen Zeitsynchronisationsmechanismus gearbeitet. Die Serverzeiten werden nur beim Start abgestimmt. Dieser Schritt erfolgt aber nicht wegen der AD-Replikation, sondern wegen der Kerberos-Authentifizierung, die in der Standardkonfiguration nur Abweichungen von fünf Minuten zwischen den Systemzeiten erlaubt. Der im Active Directory implementierte Mechanismus ist gleichermaßen einfach und effizient.

Für einige Spezialsituationen - wie beispielsweise Änderungen am Schema oder die Erweiterung der AD-Struktur - wird nicht mit dem Multi-Master-Konzept gearbeitet. Hier werden vielmehr FSMOs (Flexible Single Master Operations) verwendet, die von einem ausgewählten Domänen-Controller gesteuert werden. Standardmäßig ist das der erste Domänen-Controller, der in einem Forest beziehungsweise einer Domäne installiert wird. Die Rolle kann aber jederzeit gewechselt werden.