SharePoint zu O365 Migration
11. Türchen
Unsere FileShare Daten haben wir schon in der Cloud. Gestern haben wir mit dem eDiscovery Workaround versucht, unseren SharePoint und die darin gespeicherten Daten etwas besser zu verstehen. Mit dem heutigen Beitrag, wie wir mit PowerShell unseren SharePoint nach Office 365 migrieren, finden wir das letzte Puzzle-Teil, um Daten mit nativen Mitteln in die Cloud zu bekommen. Grundsätzlich muss man dann also das große Projekt Office 365 Migration nicht mehr länger vor sich her schieben.
Bevor es aber losgeht, müssen wir bei der SharePoint Migration über die High Speed Migration API noch ein paar Dinge beachten:
- Das größte mögliche Migrationspaket kann maximal eine Dokumentenbibliothek (inkl. Ordnerstruktur) umschließen. Eine Site Collection und/oder Subseiten Struktur muss ich also zuvor manuell nachbauen
- Die Migration wird nur für SharePoint 2013 und 2016 unterstützt
- Bibliotheken und Datenvolumen mit mehr als 15 GB sind nicht möglich
- Anpassungen (Solutions, Vorlagen, Apps, etc.) sind auch nicht möglich
- die Limits bei der FileShare Migration kommen auch noch dazu
Ansonsten läuft der Prozess identisch zur FileShare Migration ab. Nur ganz wenige PowerShell Befehle unterscheiden sich. Fassen wir das ganze also kurz zusammen.
Voraussetzungen:
- Microsoft Azure Login Assistent und PowerShell Module installieren
- SharePoint Online PowerShell Modul installieren und laden
- Azure Speicherkonto
- O365 Tenant mit Administrator-Konto – logisch
- Azure Storage Explorer als netter Zusatz für das Überwachen des Prozesses
Ablauf der SharePoint Online Migration:
1. Verbindung zu O365 herstellen
- $Creds = Get-Credentials
- Import-Module Microsoft.Online.SharePoint.PowerShell -ErrorAction SilentlyContinue
- Connect-SPOService -Credential $Creds -Url https://yourdomain-admin.sharepoint.com
2. Migrationspaket erstellen
Add-PSSnaping Microsoft.SharePoint.PowerShell
- $QuellPfad = „\\Server\C`$\SP-O365-Migration“
- $QuellPaketPfad = „\\Server\C`$\SP-O365-Migration\Quellpaket“
- $ZielPaketPfad = „\\Server\C`$\SP-O36-5Migration\Zielpaket“
- $Zielweburl = „https://yourdomain.sharepoint.com/sites/yoursite“
- $Zielbibliothek = „SharePointMigration“
- #$OptionalZielOrdner = „OnlineMigration“
Export-SPWeb -Identity „http://onpremwebapp/sites/Sitename“ -ItemUrl „Quellbibliothek“
3. Migrationspaket konvertieren
- ConvertTo-SPOMigrationTargetedPackage -SourceFilesPath $QuellPfad -SourcePackagePath $QuellPaketPfad -OutputPackagePath $ZielPaketPfad -TargetWebUrl $Zielweburl -TargetDocumentLibraryPath $Zielbibliothek -TargetDocumentLibrarySubFolderPath $ZielOrdner -Credentials $Creds
4. Paket zum Azure Storage hochladen
- $PayloadContainer = „sharepointpayload“
- $PaketContainer = „sharepointpaketcontainer“
- $AzureWarteschleife = „sharepointupload“
- $azureKontoame = „robtheninja“
- $AzureStorageKey = „hierdeinazurekey==“
- $SPUpload = Set-SPOMigrationPackageAzureSource –SourceFilesPath $QuellPfad –SourcepackagePath $ZielPaketPfad –FileContainerName $PayloadContainer –PackageContainerName $PaketContainer –AzureQueueName $AzureWarteschleife –AccountName $AzureKontoName -AccountKey $AzureStorageKey
5. Migration starten
- Submit-SPOMigrationJob –TargetwebUrl $Zielweburl –MigrationPackageAzureLocations $SPUpload –Credentials $Creds
Wir sehen, den einzigen Unterschied zwischen FileShare und SharePoint Migration über die HSM API finden wir in Punkt zwei, nämlich einerseits das Laden der SharePoint On-Premises PowerShell Befehle (Add-PSSnapin) und andererseits wie das Paket erzeugt wird (Export-SPWeb). Diese beiden Befehle habe ich aus der Aufzählung raus genommen und zentriert, um deutlich zu machen, dass dies tatsächlich der einzige Unterschied zur FileShare Migration ist. Der Rest ist identisch (sofern ihr mit Variablen arbeitet). Übrigens, bei dem SharePoint Export-Befehl können wir auch die gewohnten Switches verwenden, wie z.B. „IncludeVersions 4“.
Wie hat es bei euch mit der Migration geklappt geklappt? Lasst es mich wissen. Ich hoffe genauso unkompliziert, wie bei mir.
Happy „SharePointing“!
Zur O365Adventskalender Übersicht