SharePoint Remote-BLOB-Storage : Teil 2 – Konfiguration von RBS

Der zweite Artikel aus der -Artikelserie befasst sich mit dem Thema Konfiguration vom Remote--Storage in Zusammenhang mit dem Server. Hier geht es um die Einrichtung und die Konfiguration des RBS.

 

  1. Aktivieren von FileStream auf dem Datenbankserver
    SQL Server Configuration Manager öffnen
    – Eigenschaftsfenster der Instanz öffnen
    – FileStream auf der gleichnamigen Registerkarte aktivieren

    Filestream aktivieren
  2. Um das Filestream access level zu konfigurieren, öffnen Sie ein neues Abfragefenster im SQL Server Management Studio und geben folgende Befehle ein:


    EXEC sp_configure filestream_access_level, 2
    RECONFIGURE

    Filestream access level konfigurierenDer Befehl sp_configure ist verantwortlich für das Anzeigen/Setzen von globalen Konfigurationswerten auf dem Datenbankserver. In diesem Fall wird der Wert für das Zugriffslevel gesetzt.

    0 – FILESTREAM Unterstützung ist deaktiviert (Standardwert)
    1 – FILESTREAM Unterstützung für T-SQL ist aktiviert
    2 – FILESTREAM Unterstützung für T-SQL
          und Win32 streaming ist aktiviert

    Starten Sie nach dieser Aktion den Dienst SQL Server neu.

    Dienst SQL Server neustarten

  3. Jetzt muss der BLOB-Speicher für die entsprechende Inhaltsdatenbank bereitgestellt werden. Dazu starten Sie das SQL Server Management Studio und verbinden sich mit der Instanz. Bei der entsprechenden Inhaltsdatenbank wählen Sie Neue Abfrage und führen folgende SQL-Abfragen aus. Ersetzen Sie dabei aber jeweils für [WSS_Content] den Namen der Inhaltsdatenbank und fügen Sie für c:\Blobstore den für Sie gültigen Speicherort ein. Dieser Speicherort wird dann erstellt.


    -- Hauptpasswort für Verschlüsselung erstellen.
    -- Wird u.a. für die Verschlüsselung anderer,
    -- in der DB abgelegter, Schlüssel genutzt.
    use [WSS_Content]
    if not exists
      (select * from sys.symmetric_keys
       where name = N'##MS_DatabaseMasterKey##')
    create master key encryption by password = N'IhrPasswort@2013'


    use [WSS_Content]
    if not exists
      (select groupname from sysfilegroups
       where groupname=N'RBSFilestreamProvider')
    alter database [WSS_Content]
    add filegroup RBSFilestreamProvider contains filestream
    — Speicherort für den Remote-BLOB-Speicher erstellen
    — Sollte vorher noch nicht existieren, da er damit angelegt wird
    use [WSS_Content]
    alter database [WSS_Content]
    add file (name = RBSFilestreamFile, filename = ‚C:\Blobstore‘)
    to filegroup RBSFilestreamProvider

  4. Nächster Schritt ist die Installation des RBS Providers auf dem Web- und Anwendungsserver.

    Installieren Sie das RBS-Add-On aus dem Microsoft SQL Server 2008 R2 Feature Pack folgendermaßen:

    Download der RBS_x64.msi aus dem SQL Server 2008 R2 Feature Pack:
    http://www.microsoft.com/de-de/download/details.aspx?id=16978
    Denken Sie daran, bei SQL 2012 das entsprechende Feature Pack für 2012 zu nutzen.

    Hinweis: Installieren Sie das RBS-Add-On aus dem Microsoft SQL Server Feature Pack auf jedem Webserver in der Farm und konfigurieren Sie diesen dann für jede Inhaltsdatenbank.
  • das Benutzerkonto für die Installation muss Mitglied der Gruppe Farmadministratoren und Administratoren auf Web- und Anwendungsservern sein
  • außerdem muss das Konto in den SQL Rollen dbcreator und securityadmin sein
  • öffnen Sie die Eingabeaufforderung als Administrator (CMD) bspw.
    über StartAusführen – Rechtsklick auf CMD und Ausführen als Administrator wählen
  • wechseln Sie in das Verzeichnis, wo sich die Installationsdatei rbs_x64.msi befindet
  • fügen Sie folgenden Befehl in ein und führen Sie ihn aus:
    (WSS_Content durch eigenen DB-Namen und DBInstance durch Instanznamen ersetzen)

    Installation auf dem ersten Webserver (der die Zentraladministration bereitstellt):
    msiexec /qn /lvx* rbs_install_log.txt /i RBS_x64.msi
      TRUSTSERVERCERTIFICATE=true FILEGROUP=PRIMARY
      DBNAME=“WSS_Content“ DBINSTANCE=“DBInstance“ FILESTREAMFILEGROUP=RBSFilestreamProvider FILESTREAMSTORENAME=FilestreamProvider_1


    Installation auf zusätzlichen Anwendungs- und Webserver: msiexec /qn /lvx* rbs_install_log.txt /i RBS_x64.msi DBNAME="WSS_Content" DBINSTANCE="DBInstance" ADDLOCAL=Client,Docs,Maintainer,ServerScript,FilestreamClient,FilestreamServer

  • die Protokolldatei rbs_install_log.txt befindet sich am Speicherort der rbs_x64.msi und sollte den folgenden Eintrag enthalten: Installation completed successfully bzw. Die Installation wurde erfolgreich abgeschlossen. Wichtig ist wirklich, dass dort das Wort erfolgreich erscheint. Die LOG-Datei sollte bei der Installation auf dem SQL Server (Befehl oben) dann auch größer als 1000 KB sein!

     

  • Prüfen Sie, ob in der Inhaltsdatenbank die RBS-Tabellen (beginnend mit mssqlrbs) erstellt wurden. Entweder suchen Sie die Tabellen in der DB oder geben folgende Befehle ein:

    use [WSS_Content]
    Select * From dbo.sysobjects Where name like ‚rbs%‘

    Prüfen der RBS-Tabellen

5. RBS für jede Inhaltsdatenbank aktivieren

  • es ist egal auf welchem Webserver diese Aktion durchführen
  • muss einmal für jede Inhaltsdatenbank durchgeführt werden
  • wird per PowerShell durchgeführt
  • Anforderungen: Benutzer muss in Rolle SharePoint_Shell_Access sein: Add-SPShellAdmin
  • Microsoft SharePoint-Verwaltungsshell öffnen und folgende Befehle eingeben:

    $contentDB = Get-SPContentDatabase <Ihre-Inhaltsdatenbank>
        oder $contentDB = Get-SPContentDatabase
          –WebApplication http://Ihre-SharePointURL
    $rbss = $contentDB.RemoteBlobStorageSettings
    $rbss.Installed()
    $rbss.Enable()
    $rbss.SetActiveProviderName($rbss.GetProviderNames()[0])
    $rbss


    RBS aktivieren

    Hinweis: RBS aktivieren per $rbss.Enable() und
                    deaktivieren per $rbss.Disable()

6. RBS Dateigröße (Grenzwert) festlegen

Im oberen Bild ist in den RemoteBlobStrorageSettings das Attribut MinimumBlobStorageSize zu sehen. Dies ist der Wert, der angibt, ab wann in das RBS-Verzeichnis geschrieben werden soll. In diesem Fall wird also nahezu alles, was in die SharePoint Dokumentenbibliothek geladen wird, in unseren Blobspeicher (C:\Blobstore) geschrieben.

Diesen Wert kann man mit folgendem Befehl über die PowerShell anpassen:

$conDB = Get-SPContentDatabase <Ihre-Inhaltsdatenbank>
oder $conDB = Get-SPContentDatabase
      –WebApplication http://Ihre-SharePointURL
$rbs = $conDB.RemoteBlobStorageSettings
$rbs.MinimumBlobStorageSize = 1mb #oder 1048576 (512kB = 524288)
$conDB.Update()

 
RBS Dateigroesse aendern

Ein Gedanke zu „SharePoint Remote-BLOB-Storage : Teil 2 – Konfiguration von RBS

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.