1. Juni 2011

Backup eines Lync Servers

Der Lync Server speichert einen Großteil seiner Einstellungen und Konfigurationen  in seinen Datenbanken auf dem SQL Server. Es werden aber auch Daten als Dateien im Dateisystem und dem Betriebssystem abgelegt.  Dieser Artikel wird sich damit beschäftigen welche wichtige Daten man regelmäßig sichern sollte um sie in einem Katastrophenfall parat zu haben. Die Group Chat Rolle wird hier nicht berücksichtigt!

Datenbanken

Fangen wir mit den Datenbanken auf dem SQL Server an:

image

Wichtig sind hier natürlich alle Topologieinformationen aus dem CMS. Diese sind in der XDS.mdf Datenbank gespeichert. Der “Topology Builder” schreibt seine Daten in diese Datenbank, die dann auf alle anderen Server verteilt wird. Als zweites müssen die Daten aus der RGSConfig.mdf Datebank gesichert werden. Hier sind alle Einstellungen zu Response Groups Agents, den Warteschlangen (queues) und den Workflows gespeichert.

Als dritte Datenbank müssen wir ggf. die Lis.mdf Datenbank sichern. Hierin sind die “Location Information”-Daten des Lync Servers für die E9-1-1 Notruffunktionalitäten und die Netzwerkinformationen gespeichert. Wer diese E9-1-1 nicht nutzt und keine IP-Netzwerkdaten in Lync Importiert hat, braucht diese Datenbank nicht zu sichern.

Diese drei Datenbanken liegen bei einem Standard Edition Server lokal mit auf dem Server in der RTC Instanz der SQL Express Datenbank. Hier ist es einfach den Ort zu bestimmen. In einem großen Umfeld, in dem auch Enterprise Edition Server zum Einsatz kommen, werden separate SQL Server verwendet. Der erste Lync Server der installiert wurde, bekommt somit auch die CMS Rolle zugesprochen, und speichert diese in seinem zugeordneten SQL Server.

Datenbanken die den Suffix dyn im Namen tragen, enthalten nur dynamische Informationen, die nicht kritisch sind und nicht gesichert werden brauchen aber können.

Wenn man herausfinden möchte, wer aktuell die CMS Rolle verwaltet und auf welchem Server die Datenbanken gespeichert sind, kann dies mit der Lync Powershell abfragen:

Get-CsService -CentralManagement

Identity : CentralManagement:fe1.uccloud.net
FileStore : FileStore:fe1.uccloud.net
CentralManagementDatabase : CentralManagementDatabase:fe1.uccloud.net
DependentServiceList : {}
ServiceId : 1-CentralMgmt-1
SiteId : Site:MainSiteOffenbach
PoolFqdn : fe1.uccloud.net
Version : 5
Role : CentralManagement




Hier sieht man die Central Management Rolle wird vom Server fe1.ucclooud.net verwaltet. Eine andere Installation hat folgende Daten:

Get-CsService -CentralManagement

Identity : CentralManagement:eepool01.testlab.net
FileStore : FileStore:filesrv52.testlab.net
CentralManagementDatabase : CentralManagementDatabase:sqlclu12.testlab.net
DependentServiceList : {}
ServiceId : 1-CentralMgmt-1
SiteId : Site:MainSiteFrankfurt
PoolFqdn : eepool01.testlab.net
Version : 5
Role : CentralManagement



Her sieht man besser, dass die SQL Datenbank auf einem eigenen SQL Server (sqlclu12.testlab.net) gespeichert ist. Wenn man wissen will, ob die Datenbank in einer eigenen Instanz des SQL Serves läuft, benötigen wir ein weiteres Powershell cmdlet:

Get-CsConfigurationStoreLocation
sqlclu12.testlab.net\LYNC



Hier sehen wir also das die CMS Datenbank auf dem Server sqlclu12 in einer eigenen SQL-Instanz mit Namen LYNC läuft.


Diese Instanz sollte auf unbedingt in das SQL-Backup aufgenommen werden und regelmäßig gesichert werden.


Wird auch noch ein Monitoring oder Archiving Server eingesetzt, sollten auch diese Daten gesichert werden. Hier kann man einfach auf ein SQL Backup setzen und die Daten wegsichern. Für den Betrieb von Lync sind diese Daten nicht notwendig und können im Katastrophenfall als letztes wiederhergestellt werden.


Dateifreigaben (Fileshares)


Lync speichert weitere Einstellungen und Daten in seinem FilleStore. Auch hier gibt uns ein Powershell cmdlet mehr Details preis.

PS C:\> Get-CsService -FileStore

Identity : FileStore:fe1.uccloud.net
ShareName : Lync
UncPath : \\fe1.uccloud.net\Lync
DependentServiceList : {WebServer:fe1.uccloud.net, ConferencingServer:fe1.ucclo
ud.net, ApplicationServer:fe1.uccloud.net, CentralManage
ment:fe1.uccloud.net}
ServiceId : 1-FileStore-1
SiteId : Site:MainSiteOffenbach
PoolFqdn : fe1.uccloud.net
Version : 5
Role : FileStore


Identity : FileStore:file.uccloud.net
ShareName : lync
UncPath : \\file.uccloud.net\lync
DependentServiceList : {WebServer:frapool01.uccloud.net, ConferencingServer:fra
pool01.uccloud.net, ApplicationServer:frapool01.uccloud.
net}
ServiceId : 3-FileStore-1
SiteId : Site:MainSiteFrankfurt
PoolFqdn : file.uccloud.net
Version : 5
Role : FileStore



Des existieren hier also zwei Lync Server mit eigenen File Shares: “\\file.uccloud.net\lync” und “\\fe1.uccloud.net\Lync“. Beide Shares sollten in die Datensicherung auf Dateiebene aufgenommen werden! Alternativ kann man sie auch per Robocopy und den Optionen “/E /SEC /DCOPY:T /XF Meeting.Active”  an einen anderen Ort sichern.


Betriebssystem


Lync nutzt stark Komponenten des Betriebssystems. So ist es naheliegend auch hier alle wichtigen OS Einstellungen zu sichern. Hierrunter fallen:



  • Netzwerkkonfiguration (IP Adressen, Routen, hosts Datei etc.)

  • IIS Einstellungen

  • Zertifikate

Lync Einstellungen und Applikationen


Lync selbst liefert ein eigenes Powershell cmdlet mit, dass alle Topologiedaten, Richtlinien (Policies) und weitere Einstellungen in eine XML Datei sichert.

Export-CsConfiguration –FileName "C:\Backup\Backup.zip"





Für die Location Information Daten gibt es ein ähnliches cmdlet:

Export-CsLisConfiguration -FileName "C:\Backup\E911Config.zip"



Für die “Response Group”-Einstellungen hat Microsoft im Lync Resource Kit ein separates cmdlet zur Verfügung gestellt. Man muss es importieren und kann es dann in Powershell benutzen.

Import-Module .\RgsImportExport.ps1
Export-CsRgsConfiguration ApplicationServer:frapool01.uccloud.net -FileName "C:\Backup\RgsConfig.zip"



Benutzerdaten


Die Benutzerdaten, wie z.B. Kontakte und geplante Konferenzen sind in den Backend-Datenbanken der Lync Server gespeichert. Auch hier gibt es wieder ein Resource Kit Tool.

C:\Program Files\Common Files\Microsoft Lync Server 2010\Support\Dbimpexp.exe /hrxmlfile:D:\BackupUser.xml /sqlserver:sql01.uccloud.net\rtc



Alle diese einzelnen Schritte (ohne das SQL Backup)  habe ich in einem PowerShell Script zusammengefasst, das ich in einem separaten Post veröffentlichen werde.

Keine Kommentare:

Kommentar veröffentlichen