Das Aufsetzen einer SharePoint Multi Tenancy Farm ist auch mit SharePoint 2013 nur via PowerShell möglich. Spencer Harbar hat auf seinem Blog eine sehr ausführliche Anleitung geschrieben, wie eine Multi Tenancy Farm mit SharePoint 2013 installiert werden kann. Daher verzichte ich in diesem Artikel darauf.

Im Rahmen eines Workshops hatte ich die Aufgabe, eine Multi-Mandanten-fähige Single Server Farm aufzubauen. Das gestaltete sich in der Praxis jedoch nicht ganz so trivial. Als Basis diente mir das Multi Tenancy Script von Spencer Harbar. Für meine Bedürfnisse fehlten einerseits verschiedene Einstellungen, andererseits tauchten bei einigen Aktionen Fehler auf, die korrigiert werden mussten. Weiter mussten die Feature Packs für SharePoint 2013 extrahiert und erstellt werden.
Weil die Erstellung der User Profile Service Application eine etwas delikate Angelegenheit ist, habe ich die Provisionierung der User Profile Service Application in eine zweite Datei ausgelagert. Die Idee ist, dass aus dem eigentlichen Setup Script mit dem Farm Admin User die Provisionierung gestartet wird, was dazu führt, dass in den DBs der Farm Admin User und nicht der Setup User als Database Owner eingetragen wird. So wird die Wahrscheinlichkeit einer erfolgreichen UPA Provisionierung erhöht.

Es wird dringend empfohlen, den Code vor dem produktiven Einsatz ausführlich zu testen. Jegliche Haftung wird abgelehnt. Dieses angepasste Script habe ich online gestellt, weil es dabei helfen kann, eine Multi Tenancy Farm mit SharePoint 2013 in Betrieb zu nehmen.

Voraussetzungen

  • Die SharePoint 2013 Pre-Requisites und RTM Binaries sind auf dem Server installiert.
  • Der SharePoint Configuration Wizard wurde nicht ausgeführt.
  • Der Setup User und der Farm Admin User sind in der lokalen Administratorengruppe.
  • Der Setup User hat auf der SQL Instanz mindestens Security Admin und DB Creator Rechte.
  • Die beiden Dateien MT2013Setup.ps1 und CreateUPA.ps1 müssen sich im gleichen Verzeichnis befinden.

Ergebnis

  • Es steht ein Central Administration für den Hoster zur Verfügung.
  • Die Service Applications werden erstellt, konfiguriert und partitioniert (wo möglich).
  • Die Suche wird konfiguriert und auf den jeweiligen Mandanten eingeschränkt.
  • Der User Profile Sync wird eingerichtet und auf die OU des Mandanten eingeschränkt.
  • Der People Picker wird auf die OU des Mandanten eingeschränkt.
  • Für jeden Kunden werden eine Site Collection, MySites, ein Content Type Hub und eine Central Administration eingerichtet.
  • Es stehen zwei Feature Packs mit den Funktionen aus SharePoint Foundation 2013 und SharePoint Server 2013 zur Verfügung.

Die beiden benötigten Scripts stehen hier zum Download bereit:
MT2013Setup.ps1, CreateUPA.ps1

Die Dateiendungen müssen auf *.ps1 umbenannt werden. Die Dateien müssen sich im gleichen Verzeichnis befinden. Überall dort wo #Change here steht, müssen farmspezifische Angaben gemacht werden.

Nachfolgender Code als MT2013Setup.ps1 speichern und unter dem Setup User mit administrativen Rechten ausführen.

Nachfolgender Code muss als CreateUPA.ps1 gespeichert und im gleichen Ordner wie MT2013Setup.ps1 abgelegt werden. Diese Datei wird via MT2013Setup.ps1 aufgerufen und muss deshalb nicht manuell ausgeführt werden.

Sollte ich aus versehen eine Quellangabe vergessen haben, kann mir dies via Kontaktformular mitgeteilt werden. Ich werde diese dann gerne ergänzen. Wer will, kann den Code unter Angabe der Quellen frei verändern und verschönern.