Charger du contenu local sur SharePoint Online

Ce guide détaillé décrit l’utilisation des cmdlets PowerShell de migration de SharePoint Online pour migrer du contenu d’un partage de fichiers local vers Office 365.

Les cmdlets PowerShell de migration de SharePoint Online sont conçues pour déplacer du contenu local à partir de partages de fichiers. Grâce à des appels CSOM réduits, elles tirent parti du stockage Blob Azure temporaire pour s’adapter à la demande de migration massive de contenu de données.

Voici comment utiliser une migration SharePoint Online PowerShell pour charger vos données locales dans SharePoint Online :

Étape 1 : installer SharePoint Online Management Shell

Étape 2 : configurer votre répertoire de travail

Étape 3 : déterminer vos emplacements et informations d’identification

Étape 4 : créer un package de contenu à partir d’un partage de fichiers local

Étape 5 : convertir le package de contenu pour votre site cible

Étape 6 : envoyer le contenu à importer

Étape 7 : traiter et surveiller votre migration SharePoint Online (facultatif)

Conditions préalables

  • Systèmes d’exploitation pris en charge : Windows 7 Service Pack 1, Windows 8, Windows Server 2008 R2 SP1, Windows Server 2008 Service Pack 2, Windows Server 2012, Windows Server 2012 R2

  • Windows PowerShell 4.0

Remarque : Autorisations : vous devez être administrateur de la collection de sites sur le site que vous ciblez.

Avant de commencer

Étape 1 : installer SharePoint Online Management Shell

La première étape consiste à installer SharePoint Online Management Shell.

  1. Désinstallez toutes les versions précédentes de SharePoint Online Management Shell.

  2. Installer depuis ici : SharePoint Online Management Shell.

  3. Ouvrez SharePoint Online Management Shell, puis sélectionnez Exécuter en tant qu’administrateur.

Revenir au début

Étape 2 : configurer votre répertoire de travail

Avant de commencer le processus de migration, vous devez configurer votre répertoire de travail en créant deux dossiers vides. Ces dossiers ne nécessitent pas beaucoup d’espace disque, car ils ne doivent contenir que du code XML.

  1. Créez un dossier de package temporaire.

  2. Créez un dossier de package final.

Revenir au début

Étape 3 : déterminer vos emplacements et informations d’identification

Dans le cadre de cette étape, vous devez identifier vos emplacements et informations d’identification, notamment les emplacements des fichiers sources et cibles, et l’emplacement web.

Sur votre ordinateur local, ouvrez SharePoint Online Management Shell. Exécutez les commandes suivantes en utilisant vos valeurs.

$cred = (Get-Credential admin@contoso.com)

$sourceFiles = '\\fileshare\users\charles'

$sourcePackage = 'C:\migration\CharlesDocumentsPackage_source'

$targetPackage = 'C:\migration\CharlesDocumentsPackage_target'

$targetWeb = 'https://contoso-my.sharepoint.com/personal/charles_contoso_com'

$targetDocLib = 'Documents’

Revenir au début

Étape 4 : créer un package de contenu à partir d’un partage de fichiers local

Dans le cadre de cette étape, vous allez créer un lot de migration à partir d’un partage de fichiers. Pour créer un package de contenu à partir d’un partage de fichiers, la commande New-SPOMigrationPackage lit la liste du contenu ciblé par le chemin d’accès source, et génère le code XML pour effectuer la migration.

Les paramètres suivants sont obligatoires, sauf s’ils sont marqués comme étant facultatifs :

  • SourcefilesPath : pointe sur le contenu que vous voulez déplacer

  • OutputPackagePath : pointe sur votre dossier temporaire

  • TargetWebUrl : pointe sur votre site web de destination

  • TargetDocumentLibraryPath : pointe sur la bibliothèque de documents dans le site web.

  • IgnoreHidden : option pour ignorer les fichiers cachés (facultatif)

  • ReplaceInvalidCharacters : résout les caractères non valides lorsque c’est possible (facultatif)

Exemple :

cet exemple montre comment créer un package à partir d’un partage de fichiers, en ignorant les fichiers cachés et en remplaçant les caractères non pris en charge dans un nom de fichier/dossier.

New-SPOMigrationPackage -SourceFilesPath $sourceFiles -OutputPackagePath $sourcePackage -TargetWebUrl $targetWeb -TargetDocumentLibraryPath $targetDocLib -IgnoreHidden –ReplaceInvalidCharacters

Revenir au début

Étape 5 : convertir le package de contenu pour votre site cible

Après avoir créé le package du contenu, utilisez la commande ConvertTo-SPOMigrationTargetedPackage pour convertir le code XML généré dans votre dossier temporaire. Celle-ci enregistre un nouveau jeu de fichiers de métadonnées de package de migration ciblé dans le répertoire cible. Il s’agit du package final.

Remarque : Les informations d’identification d’administrateur de la collection de sites cible sont utilisées pour collecter les données nécessaires à la connexion à la collection de sites de données.

Il existe six paramètres obligatoires à entrer (les autres sont facultatifs

  • ParallelImport : Indiquez à l’outil d’optimiser les performances en utilisant des threads parallèles.

  • SourceFiles : pointe vers l’emplacement du répertoire où se trouvent les fichiers de contenu source du package

  • SourcePackagePath : pointe sur votre dossier de package temporaire

  • OutputPackagePath : pointe sur votre dossier de package final

  • Informations d’identification : Informations d’identification SharePoint Online avec droits d’administrateur pour le site de destination

  • TargetWebUrl : pointe sur votre site web de destination

  • TargetDocumentLibraryPath : le chemin d’accès à votre bibliothèque de destination

Exemple :

cet exemple montre comment convertir un package en un autre ciblé en recherchant les données dans la collection de sites cible. Il utilise le paramètre – ParallelImport pour améliorer les performances de migration du partage de fichiers.

$finalPackages = ConvertTo-SPOMigrationTargetedPackage -ParallelImport -SourceFilesPath $sourceFiles -SourcePackagePath $sourcePackage -OutputPackagePath $targetPackage -Credentials $cred -TargetWebUrl $targetWeb -TargetDocumentLibraryPath $targetDocLib

Revenir au début

Étape 6 : envoyer le contenu à importer

Dans le cadre de cette étape, la commande Invoke-SPOMigrationEncryptUploadSubmit crée un travail de migration dans la collection de sites cible, puis renvoie un GUID représentant l’ID de travail. Cette commande charge les fichiers sources et manifestes chiffrés dans un stockage Blob Azure temporaire par travail.

Quatre paramètres doivent obligatoirement être spécifiés (les autres sont facultatifs) :

  • TargetwebURL : Pointe vers le site web de la destination

  • SourceFilesPath : pointe vers les fichiers à importer

  • SourcePackagePath : pointe vers le manifeste final des fichiers à importer

  • Credentials : informations d’identification SharePoint Online qui disposent de droits d’administrateur de collection de sites sur le site de destination

Exemple 1 :

cet exemple montre comment envoyer des données de package pour créer une tâche de migration.

$job = Invoke-SPOMigrationEncryptUploadSubmit -SourceFilesPath $sourceFiles -SourcePackagePath $spoPackagePath -Credentials $cred -TargetWebUrl $targetWebUrl

Exemple 2 :

cet exemple montre comment envoyer des données de package pour créer des tâches de migration pour une importation parallèle.

$jobs = $finalPackages | % {Invoke-SPOMigrationEncryptUploadSubmit -SourceFilesPath $_.FilesDirectory.FullName -SourcePackagePath $_.PackageDirectory.FullName -Credentials $cred -TargetWebUrl $targetWeb}

Pour chaque tâche soumise, la cmdlet Invoke renvoie ces propriétés dans le cadre d’une tâche :

  • JobId : ID de la tâche dans SPO

  • ReportingQueueUri : file d’attente SPO Azure qui stocke les messages d’avancement en temps réel de la migration.

  • Encryption : clé de chiffrement et méthode utilisées lors du chargement du contenu dans Azure. Ce paramètre est obligatoire lors du déchiffrement des messages de la file d’attente et l’importation des journaux.

Si vous utilisez votre propre compte de stockage Azure, utilisez les commandes Set-SPOMigrationPackageAzureSource et Submit-SPOMigrationJob pour charger le contenu dans votre espace de stockage.

Revenir au début

Étape 7 (facultative) : traiter et surveiller votre migration SharePoint Online

Une fois le travail envoyé, seuls Azure et SharePoint Online interagissent pour extraire et migrer le contenu vers la destination. Ce processus est basé sur un travail du minuteur, ce qui signifie qu’il figure dans une file d’attente fonctionnant selon le principe du premier arrivé, premier servi. Cela n’empêche pas la même personne de mettre d’autres tâches en file d’attente.

Il est possible qu’il y ait un décalage d’une minute s’il n’y a aucune autre tâche en cours d’exécution.

Vérification de l’état du travail

Vous pouvez vérifier l’état de votre travail en consultant les mises à jour en temps réel publiées dans la file d’attente du compte de stockage Azure à l’aide de la clé Encryption.EncryptionKey retournée à l’étape 6.

Affichage des journaux

Si vous utilisez votre propre compte de stockage Azure, vous pouvez rechercher dans le conteneur de manifeste de l’espace de stockage Azure les journaux de tous les événements qui se sont produits. À ce stade, vous pouvez maintenant supprimer en toute sécurité ces conteneurs si vous ne voulez pas les conserver comme sauvegarde dans Azure.

En cas d’erreurs ou d’avertissements, des fichiers .err et .wrn sont créés dans le conteneur de manifeste.

Si vous utilisez le stockage Azure temporaire créé par Invoke-SPOMigrationEncryptUploadSubmit à l’étape 6, l’URL de SAP du journal d’importation peut être obtenue en déchiffrant le message de file d’attente Azure avec la valeur « Event » (événement) « JobLogFileCreate ». Avec l’URL de SAP du journal d’importation, vous pouvez télécharger le fichier journal et le déchiffrer avec la clé de chiffrement retournée à l’étape 6.

Revenir au début

Écriture de scripts de scénarios à réutiliser

Voici un exemple de script que vous pouvez utiliser, qui inclut l’ensemble des étapes : de la détermination de vos emplacements et informations d’identification, à l’envoi des données de votre package pour créer une tâche de migration.

    
    

$userName = "admin@contoso.onmicrosoft.com"

$sourceFiles = "d:\data\documents"

$packagePath = "d:\data\documentPackage"

$spoPackagePath = "d:\data\documentPackageForSPO"

$targetWebUrl = "https://contoso.sharepoint.com/sites/finance"

$targetLibrary = "Documents"

$cred = Get-Credential $userName

New-SPOMigrationPackage -SourceFilesPath $sourceFiles -OutputPackagePath $packagePath -TargetWebUrl $targetWebUrl -TargetDocumentLibraryPath $targetLibrary -IgnoreHidden -ReplaceInvalidCharacters

# Convertir un package en un package ciblé en recherchant des données dans la collection de sites cible

$finalPackages = ConvertTo-SPOMigrationTargetedPackage -SourceFilesPath $sourceFiles -SourcePackagePath $packagePath -OutputPackagePath $spoPackagePath -TargetWebUrl $targetWebUrl -TargetDocumentLibraryPath $targetLibrary -Credentials $cred

# Envoyer des données de package pour créer une tâche de migration

$job = Invoke-SPOMigrationEncryptUploadSubmit -SourceFilesPath $sourceFiles -SourcePackagePath $spoPackagePath -Credentials $cred -TargetWebUrl $targetWebUrl

Cet exemple montre comment obtenir les informations renvoyées d’une tâche, qui se présente sous la forme d’un GUID.

$job = $jobs[0]

$job.JobId

Guid
----
779c4b3b-ec24-4705-bb58-c38f4329418c

Cet exemple montre comment obtenir le $job.ReportingQueueURi.AbsoluteUri.

# To obtain the $job.ReportingQueueUri.AbsoluteUri

https://spodm1bn1m013pr.queue.core.windows.net/953pq20161005-f84b9e51038b4139a179f973e95a6d6f?sv=2014-02-14&sig=TgoUcrMk1Pz8VzkswQa7owD1n8TvLmCQFZGzyV7WV8M%3D&st=2016-10-04T07%3A00%3A00Z&se=2016-10-26T07%3A00%3A00Z&sp=rap

Cet exemple montre comment obtenir la clé de chiffrement et l’exemple de retour.

$job.Encryption
EncryptionKey                                       EncryptionMethod

-------------                                             ----------------

{34, 228, 244, 194...}                              AES256CBC

Important : Tous les messages sont chiffrés dans la file d’attente. Si vous voulez lire le contenu de ReportingQueue, vous devez disposer de la clé EncryptionKey.

Meilleures pratiques et limitations

Description

Recommandation

Taille du package

10-20 Go

Utilisez le commutateur –ParallelImport pour utiliser une migration de partages de fichiers qui fractionne automatiquement les packages de grande taille en petits packages.

Taille du fichier

2 Go

Taille de la cible

Le site cible doit rester non accessible pour les utilisateurs jusqu’à ce que la migration soit terminée.

Limites de SharePoint Online

SharePoint Online et OneDrive Entreprise : limites et frontières logiciellesSharePoint Online : limites et frontières logicielles

Limites d’Azure

Ressource

Par défaut/Limite

To par compte de stockage

500 To

Taille maximale de conteneur de blob, de tableau ou de file d’attente

500 To

Nombre maximal de conteneurs blob, d’objets BLOB, de partages de fichiers, de tables, de files d’attente, d’entités ou de messages par compte de stockage

La seule limite est la capacité du compte de stockage de 500 To

Débit cible pour un seul blob

Jusqu’à 60 Mo par seconde, ou jusqu’à 500 demandes par seconde

Rubriques connexes

Utiliser les cmdlets Windows PowerShell pour la migration de SharePoint Online et OneDrive

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×