Lync User Replicator

Auf der Seite Lync CMS habe ich schon erklärt, wie Lync die Konfigurationsinformation vom zentralen Speicher auf die verschiedenen Servern verteilt. Aber auch im Bezug auf die Lync Anwender gibt es einen Replikationsdienst, welcher die Informationen überträgt.

Active Directory und SQL

Wenn Sie mit der Lync Management Console oder per PowerShell oder einem anderen Provisioning-Framework z.B. einen neuen Benutzer für Lync freischalten oder andere Richtlinien dem Benutzer zuweisen, dann werden durch Lync zuerst im Active Directory die entsprechenden Felder gesetzt und geändert. Die Lync Dienste, und hier besonders die Frontend Server, nutzen primär die SQL-Datenbank, in der die Konfigurationseinstellungen für die Anwender vorhanden sind.

Damit gibt es zwei "Datentöpfe", welche während des gesamten Betriebs "Synchron" sein müssen.

Dienst: Lync User Replicator

Aus diesem Grund gibt es auf dem Lync Server einen Dienst, welcher regelmäßig das Active Directory auf Änderungen überprüft und für Lync relevante Informationen in die SQL-Datenbank überträgt. Der Abgleich erfolgt aber immer vom Active Directory Richtung Lync.

Damit er auch tatsächlich alle Empfänger "erwischt", liest der Dienst per Default alle Domains des Active Directory Forests ein. Er ist aber zugleich auf die Domänen des Forests beschränkt und repliziert keine Benutzer aus vertrauten Domänen anderer Forests. Der Abgleich findet alle Minute statt und ist inkrementell.

Sie werden keinen Windows Dienst finden. Der Replikationsprozess ist Teil des Frontend Service.

Berechtigungen

Das funktioniert natürlich nur, wenn der Dienst dort auch die erforderlichen Berechtigungen hat. Die Vergabe der Berechtigungen ist die Aufgabe des DomainPrep von Lync, bei der auf den angegebenen Domänen die RTC-Gruppen mit Berechtigungen eingetragen werden. Nun gibt es vielleicht Domänen, welche keine Lync-Benutzer enthalten sollen. Wenn Sie dort nun den Domainprep nicht durchführen, dann werden Sie im Eventlog regelmäßig folgende Meldungen sehen.

Log Name:      Lync Server
Source:        LS User Replicator
Date:          11.02.2011 15:41:30
Event ID:      30011
Task Category: (1009)
Level:         Error
Keywords:      Classic User:          N/A
Computer:      lyncfe01.msxfaw.de
Description:
Encountered an unrecognized error while processing Users from a domain.
This error caused User Replicator to abort synchronization of this domain.
Synchronization will be retried für this domain.
If this domain is not enabled für Lync Server, then this error can be ignored.
 
Domain: SUBDOMAIN.msxfaq.de (DN: DC=SUBDOMAIN,DC=msxfaq,DC=de)
Error: 50 (Insufficient Rights)
Cause: The cause für this error can vary. Please review the errors listed above.
Resolution: Contact support services if the error is not descriptive enough to remedy the problem.

Sie können dieses Problem auch damit lösen, dass Sie per Konfiguration dem Lync Server eine Liste der Domänen mitgeben, welche zu berücksichtigen sind.

PS C:\> Get-CsUserReplicatorConfiguration
 
Identity                  : Global
ADDomainNamingContextList : {}
ReplicationCycleInterval  : 00:01:00

Das Feld "ADDomainNamingContextList" ist der Schlüssel, in den die Domänen entsprechend hinterlegt werden können. Eine Filterung auf OUs kann zwar angegeben werden, aber wird ignoriert. Ein Scope ist also nur auf Ebene der Domänen möglich. Übrigens können Sie hier auch das Replikationsintervall ändern. Beides geht mit "CsUserReplicatorConfiguration"

Überwachen

Die Funktion des Replikationsdiensts lässt sich recht einfach im Lync-Eventlog eines Servers überwachen. Der "LS User Replicator" ist durchaus sehr "Gesprächig", so dass Sie hellhörig werden sollten, wenn diese Einträge weg bleiben.

Natürlich können Sie auch einen Lync Anwender einfach neu anlegen oder Richtlinien ändern und dann auf dem Client nach einer Neuanmeldung sehen, dass die neue Einstellungen übernommen werden.

Eine tiefere Überprüfung würde bedeuten, dass Sie im Active Directory regelmäßig etwas ändern und dann per SQL-Abfrage in der Lync Datenbank nachsehen, dass die Änderung dort auch angekommen ist.

In der Regel ist es ausreichend, auf das regelmäßige Vorhandensein von "Information"-Meldungen und das Fehlen von "Warnung" und "Fehler"-Meldungen zu überwachen.

Weitere Links