Exportieren (0) Drucken
Alle erweitern

Verwalten des Diensts für verteilten Cache in SharePoint Server 2013

SharePoint 2013
 

Gilt für:SharePoint Server 2013

Letztes Änderungsdatum des Themas:2015-06-02

Zusammenfassung: Informationen zum Konfigurieren und Verwalten des verteilten Cachediensts in SharePoint 2013.

Zum Anwenden von Verwaltungs- und Betriebsaufgaben auf den verteilten Cachedienst in SharePoint Server 2013 muss ein Administrator bestimmte Verfahren der Reihe nach ausführen. In diesem Artikel wird erläutert, wie Sie mehrere Verwaltungs- und Betriebsaufgaben auf den verteilten Cachedienst anwenden.

WichtigWichtig:
Wenn Sie die Angaben in diesem Artikel nicht befolgen, kann der verteilte Cachedienst den Betrieb einstellen oder nicht wiederhergestellt werden. Im Extremfall müssen Sie die Serverfarm neu erstellen. Voraussetzung für den verteilten Cachedienst ist Windows Server AppFabric. Verwalten Sie den AppFabric-Cachedienst nicht über Systemsteuerung, Verwaltung, Dienste. Verwenden Sie nicht die Anwendungen im Ordner AppFabric für Windows Server im Startmenü.
WichtigWichtig:
verwenden Sie keine Dienstkontonamen, die das Symbol $ enthalten.

Weitere Informationen zum Planen, Installieren und Konfigurieren des verteilten Cachediensts in einer SharePoint Server 2013-Farm finden Sie im Modell Planen und Nutzen des Diensts "Verteilter Cache" in SharePoint Server 2013.

Modell: Planen des verteilten Cachediensts

Inhalt dieses Artikels:

Ein Administrator, der Wartungs- und Betriebsaufgaben ausführt, muss den verteilten Cachedienst ggf. starten und beenden. Zu diesen Aufgaben gehören die Folgenden:

  • Ändern der Standardkonfiguration der Serverfarm zum Installationszeitpunkt. Der verteilte Cachedienst wird auf allen Servern mit SharePoint zum Installationszeitpunkt gestartet. Ein Administrator möchte ggf. den verteilten Cachedienst auf einigen Servern in der Farm beenden.

  • Aktualisieren des Servers, und es gibt nur einen Server für den verteilten Cachedienst in der SharePoint Server 2013-Farm.

Das Beenden des Caches führt zu einem teilweisen Datenverlust. Der Feedcache ist vom verteilten Cachedienst abhängig. Kategorien und Dokumentaktivitäten werden nur im Feedcache und nicht dauerhaft in den Inhaltsdatenbanken gespeichert. Wird der verteilte Cachedienst beendet, gehen Kategorien und Dokumentaktivitäten verloren. Nach dem Start des verteilten Cachediensts erfolgt die Neuauffüllung, sobald der Zeitgeberauftrag für die Neuauffüllung des Feedcaches ausgeführt wird. Weitere Informationen finden Sie unter Verwalten des Feedcache und erneutes Auffüllen des Cache für die Uhrzeit der letzten Änderung in SharePoint Server 2013. Eine Möglichkeit zum Beibehalten der Kategorien und Dokumentaktivitäten ist die unter Ordnungsgemäßes Herunterfahren des verteilten Cachediensts weiter unten in diesem Artikel beschriebene Methode. Bei Verwenden dieser Methode werden alle Cachedaten auf einen anderen Server verschoben, bevor der verteilte Cachedienst beendet wird.

HinweisHinweis:
Wenn die Hosts Ihres Caches Teil eines Cacheclusters sind, dürfen Sie den verteilten Cachedienst nicht wie zuvor beschrieben starten oder beenden. Lesen Sie stattdessen Hinzufügen oder Entfernen eines Servers in einem verteilten Cachecluster weiter unten in diesem Artikel.

  1. Klicken Sie in der Zentraladministration auf Anwendungsverwaltung.

  2. Klicken Sie im Abschnitt Dienstanwendungen auf Dienste auf dem Server verwalten.

  3. Wechseln Sie auf der Seite Dienste auf dem Server zu Verteilter Cachedienst.

  4. Wenn der verteilte Cachedienst gestartet wurde und Sie ihn beenden möchten, klicken Sie unter Aktion auf Beenden. Wenn Sie ihn wieder starten möchten, klicken Sie unter Aktion auf Starten.

Geben Sie an der SharePoint 15-Verwaltungsshell -Eingabeaufforderung folgenden Befehl ein:

$instanceName ="SPDistributedCacheService Name=AppFabricCachingService"
$serviceInstance = Get-SPServiceInstance | ? {($_.service.tostring()) -eq $instanceName -and ($_.server.name) -eq $env:computername}
$serviceInstance.Provision()

Geben Sie an der SharePoint 15-Verwaltungsshell -Eingabeaufforderung folgenden Befehl ein:

$instanceName ="SPDistributedCacheService Name=AppFabricCachingService"
$serviceInstance = Get-SPServiceInstance | ? {($_.service.tostring()) -eq $instanceName -and ($_.server.name) -eq $env:computername}
$serviceInstance.Unprovision()

Bei der Installation von SharePoint Server 2013 werden dem verteilten Cachedienst 10 % des gesamten physischen Arbeitsspeichers des Servers zugewiesen. Der verteilte Cachedienst nutzt die Hälfte des zugeordneten Arbeitsspeichers für die Datenspeicherung (als eigentliche Cachegröße) und die andere Hälfte für Verwaltungsaufgaben für den Arbeitsspeicher. Wenn die im Cache gespeicherten Daten zunehmen, nutzt der verteilte Cachedienst die gesamten 10 % des reservierten Arbeitsspeichers.

Die Arbeitsspeicherzuordnung des verteilten Cachediensts sollte in diesen Fällen erhöht werden:

  • Beim Hinzufügen von physischem Arbeitsspeicher zu einem Server. Der verteilte Cachedienst berechnet die Arbeitsspeicherreservierung von 10 % nicht neu, wenn Sie also den physischen Gesamtspeicher auf dem Server vergrößern, müssen Sie die Arbeitsspeicherzuordnung des verteilten Cachediensts manuell erhöhen.

  • Wenn Ihre Serverfarm über einen dedizierten Server für den verteilten Cache verfügt, befolgen Sie die folgende Methode zum Berechnen, wie viel Arbeitsspeicher dem verteilten Cachedienst zugewiesen werden kann:

    1. Bestimmen Sie die Größe des physischen Arbeitsspeichers auf dem Server. Für dieses Beispiel wählen wir 16 GB.

    2. Reservieren Sie 2 GB Arbeitsspeicher für andere Prozesse und Dienste, die auf dem Host des Caches ausgeführt werden. Beispiel: 16 GB – 2 GB = 14 GB. Diese 14 GB werden für den verteilten Cachedienst reserviert.

    3. Wandeln Sie die Hälfte des verbleibenden Arbeitsspeichers in MB um. Beispiel: 14 GB : 2 = 7 GB oder 7168 MB. Dies ist die Cachegröße des verteilten Cachediensts.

    4. Gehen Sie wie folgt vor, um die Arbeitsspeicherreservierung entsprechend zu ändern.

Gehen Sie wie folgt vor, um die Arbeitsspeicherreservierung für den verteilten Cachedienst zu ändern.

  1. (Optional) Wenn Sie die Arbeitsspeicherzuordnung für den verteilten Cachedienst auf einem Server überprüfen möchten, führen Sie folgenden Befehl an der SharePoint 15-Verwaltungsshell-Eingabeaufforderung aus:

    Use-CacheCluster
    Get-AFCacheHostConfiguration -ComputerName ComputerName -CachePort "22233"
    
    

    Dabei gilt Folgendes:

    • ComputerName ist der Computername des Servers, auf dem das SharePoint 15-Verwaltungsshell-Cmdlet ausgeführt wird.

  2. Beenden Sie den verteilten Cachedienst auf allen Cachehosts. Gehen Sie dazu in der Zentraladministration zu Dienste auf dem Server, und beenden Sie den verteilten Cachedienst auf allen Cachehosts in der Farm.

  3. Wenn Sie die Cachegröße des verteilten Cachediensts auf dem Server neu konfigurieren möchten, führen Sie den folgenden Befehl an der SharePoint 15-Verwaltungsshell-Eingabeaufforderung nur einmal auf einem beliebigen Cachehost aus:

    Update-SPDistributedCacheSize -CacheSizeInMB CacheSize
    

    Dabei gilt Folgendes:

    • CacheSize ist die der Cachegröße entsprechende Arbeitsspeicherreservierung in MB. Im vorherigen Beispiel wurde die Cachegröße für einen Server mit insgesamt 16 GB physischem Arbeitsspeicher mit 7168 MB berechnet.

  4. Starten Sie den verteilten Cachedient auf allen Cachehosts neu. Gehen Sie dazu in der Zentraladministration zu Dienste auf dem Server, und starten Sie den verteilten Cachedienst auf allen Cachehosts in der Farm.

Ein Administrator kann in einem Cachecluster einen Server hinzufügen oder entfernen oder ggf. einen Server aus dem Cachecluster entfernen, um verschiedene Betriebs- oder Wartungsaufgaben auf dem Server auszuführen, und anschließend den Server wieder dem Cachecluster hinzufügen. Beim Entfernen des Servers wird der verteilte Cachedienst beendet und anschließend vom Server deregistriert. Nach der Deregistrierung des verteilten Cachediensts wird dieser Dienst nicht mehr in der Zentraladministration auf der Seite Dienste auf dem Server angezeigt. Nach dem Hinzufügen eines Servers wird der verteilte Cachedienst registriert und anschließend auf dem Server gestartet. Sobald der verteilte Cachedienst wieder registriert ist, wird er in der Zentraladministration auf der Seite Dienste auf dem Server angezeigt.

Führen Sie die folgenden Schritte aus, um einen Server einem Cachecluster hinzuzufügen oder aus diesem zu entfernen. Diese SharePoint 15-Verwaltungsshell-Cmdlets werden auf dem hinzuzufügenden oder zu entfernenden Server ausgeführt.

HinweisHinweis:
Bevor Sie mit den hier aufgeführten Schritten beginnen, überprüfen Sie, ob die Firewall eingehenden ICMP-(ICMPv4-)Datenverkehr zulässt. Weitere Informationen finden Sie unter Überlegungen zur Firewallkonfiguration (Konfigurationsüberlegungen zur Firewall).

Geben Sie an der SharePoint 15-Verwaltungsshell -Eingabeaufforderung folgenden Befehl ein:

Add-SPDistributedCacheServiceInstance

Geben Sie an der SharePoint 15-Verwaltungsshell -Eingabeaufforderung folgenden Befehl ein:

Remove-SPDistributedCacheServiceInstance

WichtigWichtig:
Über diesen Schritt wird der Cachedienst beendet, und nicht dauerhaft gespeicherte Cachedaten gehen verloren. Wenn Sie die im Cache gespeicherten Daten beibehalten möchten, führen Sie das im nächsten Abschnitt beschriebene ordnungsgemäße Herunterfahren aus.

Eine SharePoint Server 2013-Farm weist ein Cachecluster auf, wenn der verteilte Cachedienst auf mindestens einem Cachehost ausgeführt wird. In einer SharePoint Server 2013-Farm ist ein Cache vorhanden, der sich auf das Cachecluster erstreckt. Ein Administrator muss möglicherweise Inhalte im Cache in einen anderen Cachehost verschieben, um Updates auf dem Server anzuwenden. Zum Verhindern von Datenverlusten durch das Verschieben von Inhalten im Cache müssen Sie den Server ordnungsgemäß herunterfahren, indem Sie das Windows Windows PowerShell-Skript im folgenden Verfahren verwenden. Beim ordnungsgemäßen Herunterfahren werden alle Daten im Cache des Cachehosts, der ordnungsgemäß herunterfahren wird, auf einen anderen Cachehost in der Farm übertragen. Je nach Größe des Caches kann dies bis zu 15 Minuten dauern.

Verwenden Sie das folgende Windows PowerShell-Skript zum ordnungsgemäßen Herunterfahren des verteilten Cacheservers, um den Inhalt im Cache auf einen anderen Cachehost zu verschieben. Stellen Sie sicher, dass Sie für das Herunterfahren den richtigen Knoten angeben, und ändern Sie das Skript bei Bedarf, damit es die richtigen Parameter für Ihre Organisation aufweist.

HinweisHinweis:
Es ist nicht erforderlich, den Cachehost aus dem Cachecluster zu entfernen, wenn Sie das Windows PowerShell-Skript im folgenden Verfahren für ein ordnungsgemäßes Herunterfahren verwenden.
  1. Stellen Sie sicher, dass die folgenden Mindestanforderungen erfüllt sind:

  2. Kopieren Sie die folgenden Variablendeklarationen, und fügen Sie sie in einem Text-Editor wie den Windows-Editor ein. Legen Sie die für Ihre Organisation geltenden Parameterwerte fest. Speichern Sie die Datei, und nennen Sie sie „GracefulShutdown.ps1“.

    HinweisHinweis:
    Sie können auch einen anderen Dateinamen wählen, wichtig ist, dass die Datei als ANSI-codierte Textdatei mit der Dateinamenerweiterung .ps1 gespeichert wird.
    ## Settings you may want to change for your scenario ##
    $startTime = Get-Date
    $currentTime = $startTime
    $elapsedTime = $currentTime - $startTime
    $timeOut = 900
    
    try
    {
        Write-Host "Shutting down distributed cache host."
     $hostInfo = Stop-CacheHost -Graceful -CachePort 22233 -ComputerName sp2013App.contoso.com
    
     while($elapsedTime.TotalSeconds -le $timeOut-and $hostInfo.Status -ne 'Down')
     {
         Write-Host "Host Status : [$($hostInfo.Status)]"
         Start-Sleep(5)
         $currentTime = Get-Date
         $elapsedTime = $currentTime - $startTime
         $hostInfo = Get-CacheHost -HostName SP2013app.contoso.com -CachePort 22233
     }
    
     Write-Host "Stopping distributed cache host was successful. Updating Service status in SharePoint."
     Stop-SPDistributedCacheServiceInstance
     Write-Host "To start service, please use Central Administration site."
    }
    catch [System.Exception]
    {
     Write-Host "Unable to stop cache host within 15 minutes." 
    }
    

    sp2013App.contoso.com ist hierbei der Computerdomänenname des zu verwendenden verteilten Cacheservers.

  3. Klicken Sie unter Start auf Alle Programme.

  4. Klicken Sie auf Microsoft SharePoint 2013-Produkte.

  5. Klicken Sie auf SharePoint 2013 Management Shell.

  6. Gehen Sie zu dem Verzeichnis, in das Sie die Datei gespeichert haben.

  7. Geben Sie in die Windows PowerShell-Eingabeaufforderung den folgenden Befehl ein:

    ./GracefulShutdown.ps1
    

    Weitere Informationen zu Windows PowerShell-Skripts und .ps1-Dateien finden Sie unter Ausführen von Windows PowerShell-Skripts.

Bei der Erstkonfiguration der Serverfarm wird das Serverfarmkonto auf das Dienstkonto des AppFabric-Cachediensts festgelegt. Der verteilte Cachedienst ist vom AppFabric-Cachedienst abhängig. So ändern Sie das Dienstkonto des AppFabric-Cachediensts in ein verwaltetes Konto:

  1. Erstellen Sie ein verwaltetes Konto. Weitere Informationen finden Sie unter Konfigurieren der automatischen Kennwortänderung in SharePoint 2013.

  2. Legen Sie das verwaltete Konto als Dienstkonto für den AppFabric-Cachedienst fest. Geben Sie an der SharePoint 15-Verwaltungsshell -Eingabeaufforderung folgenden Befehl ein:

    $farm = Get-SPFarm
    $cacheService = $farm.Services | where {$_.Name -eq "AppFabricCachingService"}
    $accnt = Get-SPManagedAccount -Identity domain_name\user_name
    $cacheService.ProcessIdentity.CurrentIdentityType = "SpecificUser"
    $cacheService.ProcessIdentity.ManagedAccount = $accnt
    $cacheService.ProcessIdentity.Update() 
    $cacheService.ProcessIdentity.Deploy()
    
    

    Dabei gilt: Domain_name\user_name ist der Domänen- und Benutzername des verwalteten Kontos.

Die Einstellung für den verteilten Cachedienst für MaxConnectionsToServer wird häufig abhängig von der Anzahl an CPUs optimiert, die auf dem Hostcomputer verwendet werden. Wenn Sie zum Beispiel mehrere Kerne verwenden und die Einstellung MaxConnectionsToServer auf die gleiche Anzahl von CPUs festlegen, verbraucht der Computer häufig zu viel Speicher und friert ein. Ähnliche Probleme treten beim Optimieren der Einstellungen DistributedLogonTokenCache und DistributedViewStateCache auf. Die Standardeinstellung ist 20 ms, wobei jedoch häufig Ausnahmen auftreten, wenn das Zwischenspeichern von Tokens innerhalb der 20 ms nicht stattfindet. Verwenden Sie das folgende Windows PowerShell-Skript, um die Einstellungen für die maximale Anzahl von Verbindungen und Timeouts zu ändern.

So optimieren Sie den verteilten Cachedienst mit einem Windows PowerShell-Skript
  1. Stellen Sie sicher, dass die folgenden Mindestanforderungen erfüllt sind:

  2. Kopieren Sie die folgenden Variablendeklarationen, und fügen Sie sie in einem Text-Editor wie den Windows-Editor ein. Legen Sie die für Ihre Organisation geltenden Parameterwerte fest. Speichern Sie die Datei, und nennen Sie sie „MaxConnections.ps1“.

    HinweisHinweis:
    Sie können auch einen anderen Dateinamen wählen, wichtig ist, dass die Datei als ANSI-codierte Textdatei mit der Dateinamenerweiterung .ps1 gespeichert wird.
    Add-PSSnapin Microsoft.Sharepoint.Powershell
    
    #DistributedLogonTokenCache
    $DLTC = Get-SPDistributedCacheClientSetting -ContainerType DistributedLogonTokenCache
    $DLTC.MaxConnectionsToServer = 1
    $DLTC.requestTimeout = "3000"
    $DLTC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedLogonTokenCache $DLTC
    
    #DistributedViewStateCache
    $DVSC = Get-SPDistributedCacheClientSetting -ContainerType DistributedViewStateCache
    $DVSC.MaxConnectionsToServer = 1
    $DVSC.requestTimeout = "3000"
    $DVSC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedViewStateCache $DVSC
    
    #DistributedAccessCache
    $DAC = Get-SPDistributedCacheClientSetting -ContainerType DistributedAccessCache
    $DAC.MaxConnectionsToServer = 1
    $DAC.requestTimeout = "3000"
    $DAC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedAccessCache $DAC
    
    #DistributedActivityFeedCache
    $DAF = Get-SPDistributedCacheClientSetting -ContainerType DistributedActivityFeedCache
    $DAF.MaxConnectionsToServer = 1
    $DAF.requestTimeout = "3000"
    $DAF.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedActivityFeedCache $DAF
    
    #DistributedActivityFeedLMTCache
    $DAFC = Get-SPDistributedCacheClientSetting -ContainerType DistributedActivityFeedLMTCache
    $DAFC.MaxConnectionsToServer = 1
    $DAFC.requestTimeout = "3000"
    $DAFC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedActivityFeedLMTCache $DAFC
    
    #DistributedBouncerCache
    $DBC = Get-SPDistributedCacheClientSetting -ContainerType DistributedBouncerCache
    $DBC.MaxConnectionsToServer = 1
    $DBC.requestTimeout = "3000"
    $DBC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedBouncerCache $DBC
    
    #DistributedDefaultCache
    $DDC = Get-SPDistributedCacheClientSetting -ContainerType DistributedDefaultCache
    $DDC.MaxConnectionsToServer = 1
    $DDC.requestTimeout = "3000"
    $DDC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedDefaultCache $DDC
    
    #DistributedSearchCache
    $DSC = Get-SPDistributedCacheClientSetting -ContainerType DistributedSearchCache
    $DSC.MaxConnectionsToServer = 1
    $DSC.requestTimeout = "3000"
    $DSC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedSearchCache $DSC
    
    #DistributedSecurityTrimmingCache
    $DTC = Get-SPDistributedCacheClientSetting -ContainerType DistributedSecurityTrimmingCache
    $DTC.MaxConnectionsToServer = 1
    $DTC.requestTimeout = "3000"
    $DTC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedSecurityTrimmingCache $DTC
    
    #DistributedServerToAppServerAccessTokenCache
    $DSTAC = Get-SPDistributedCacheClientSetting -ContainerType DistributedServerToAppServerAccessTokenCache
    $DSTAC.MaxConnectionsToServer = 1
    $DSTAC.requestTimeout = "3000"
    $DSTAC.channelOpenTimeOut = "3000"
    Set-SPDistributedCacheClientSetting -ContainerType DistributedServerToAppServerAccessTokenCache $DSTAC
    
    
  3. Klicken Sie im Startmenü auf Alle Programme.

  4. Klicken Sie auf Microsoft SharePoint 2013-Produkte.

  5. Klicken Sie auf SharePoint 2013 Management Shell.

  6. Gehen Sie zu dem Verzeichnis, in das Sie die Datei gespeichert haben.

  7. Geben Sie in die Windows PowerShell-Eingabeaufforderung den folgenden Befehl ein:

    ./MaxConnections.ps1
    

    Weitere Informationen finden Sie unter Bewährte Methoden für die Verwendung von Microsoft Azure Cache/Windows Server Appfabric-Cache und Anwendungskonfigurationseinstellungen (Windows Server AppFabric-Cache). Weitere Informationen zu Windows PowerShell-Skripts und .ps1-Dateien finden Sie unter Ausführen von Windows PowerShell-Skripts.

Bei Installations-, Konfigurations- und Wartungsaktivitäten kann es zu Fehlfunktionen des verteilte Cachediensts kommen. Hinweise dazu werden in den Integritätsregeln in Zentraladministration angezeigt oder wenn die Benutzer Funktionen in SharePoint Server 2013 verwenden, die auf einem verteilten Cache basieren. Beispielsweise meldet der Newsfeed auf Meine Website des Benutzers Fehler. Administratoren erhalten möglicherweise die Fehlermeldung "cacheHostInfo is NULL", wenn sie SharePoint 15-Verwaltungsshell-Cmdlets zur Verwaltung des verteilten Cachediensts ausführen.

Verwenden Sie das folgende Verfahren zum Wiederherstellen eines fehlerhaften verteilten Cachehosts.

  1. Führen Sie an der SharePoint 15-Verwaltungsshell-Eingabeaufforderung das Cmdlet Get-SPServiceInstance aus, um alle Dienste auf allen Servern in der Serverfarm aufzulisten. Notieren Sie sich die GUID in der ID-Eigenschaft des verteilten Cachediensts auf dem Server, den Sie reparieren. Das Cmdlet "Get-SPServiceInstance" listet alle Dienste auf allen Servern in der Serverfarm auf. Achten Sie darauf, die richtige GUID des Servers, den Sie reparieren, zu notieren.

  2. Geben Sie an der SharePoint 15-Verwaltungsshell -Eingabeaufforderung folgenden Befehl ein:

    $s = Get-SPServiceInstance GUID
    $s.delete()
    
    

    GUID ist die GUID des in Schritt 1 notierten verteilten Cachediensts.

  3. Führen Sie an der SharePoint 15-Verwaltungsshell-Eingabeaufforderung Add-SPDistributedCacheServiceInstance aus, um den verteilten Cachedienst erneut auf dem Cachehost, den Sie reparieren, zu installieren und zu starten.

Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.
Anzeigen:
© 2015 Microsoft