SharePoint 2016 Technical Preview vu depuis PowerShell

Ca y est ! La nouvelle version de SharePoint est arrivée en version Technical Preview. Il est donc temps de voir les nouvelles fonctionnalités mises à disposition par Microsoft dans SharePoint 2016. C’est aussi l’occasion d’apprécier les changements techniques annoncés dans cette nouvelle mouture, et principalement sur la partie hybride. De mon point de vue, l’une des meilleures façon d’aborder cette évolution technique est de faire le tour d’horizon des nouvelles commandes PowerShell disponible, c’est une méthode assez pertinente pour anticiper les évolutions à venir. Afin de bien comprendre et analyser ces évolutions, nous allons regrouper les commandes par thématiques.

Une remarque qui a son importance: à l’heure où nous écrivons ces lignes aucune de ces commandes n’a été référencé par Microsoft sur Technet.

Gestion des plages d’adresses autorisées

Add-SPIPRangeAllowList
Disable-SPIPRangeAllowList
Get-SPIPRangeAllowList
Test-SPIPRangeAllowList
Set-SPIPRangeAllowListSetting
Set-SPIPAccessControlOperationMode
Set-SPIPAccessControlSubscriptionId

Elles permettent tout simplement de restreindre l’accès d’une Collection de site à une adresse IP donnée. Malheureusement cela ne fonctionne que sur la collection de site racine de la Web Application. Pour plus de détails sur l’implémentation de cette fonctionnalité, je vous invite à lire ce post.

Gestion des bases de données

Dismount-SPSiteMapDatabase
Get-SPSiteMapDatabase
Mount-SPSiteMapDatabase
Upgrade-SPSiteMapDatabase

Aucune information filtré sur ce nouveau composant pour l’instant, nous mettrons l’article à jour une fois que nous aurons éprouvé ces commandes.

Reset-SPSites

Runtime Telemetry

Set-SPRuntimeTelemetry
Get-SPRuntimeTelemetry

Aucune information filtré sur ce  nouveau composant pour l’instant. A première vue il s’agirait d’un composant mesurant la disponibilité de service ou d’application par un lien ODL, peut être un lien avec le nouveau mode hybride ? Nous mettrons l’article à jour une fois que nous aurons éprouvé ces commandes.

Get-SPRuntimeTelemetry

Gestion des serveurs

Set-SPServer
Upgrade-SPServer

Deux nouvelles commandes permettant de gérer les serveurs SharePoint. Un point intéressant est la commande Upgrade-SPServer qui vérifierait tout simplement les versions sur chacun des serveurs

get-spserver

Get-spserver

Gestion des serveurs et des rôles

Start-SPService
Stop-SPService
Get-SPService

Ces commandes vont tout simplement faciliter la gestion du provisioning ses services SharePoint, principalement sur une architecture à plusieurs tiers. On retrouve la notion de MinRole permettant de segmenter par rôle chacun de vos serveurs SharePoint 2016.

Get-spservice

Gestion des bases de données

Compare-SPDatabaseSchema
Copy-SPDatabase
Migrate-SPDatabase
Register-SPContentDatabase
Switch-SPSitesToNewDatabase
Upgrade-SPConfigurationDatabase

C’est probablement un des périmètres où il y a eu le plus d’évolutions, et pour cause, SharePoint vit au rythme de ses bases de données. La première commande Compare-SPDatabaseSchema nous permet de comparer les schémas de deux bases de données différentes. Cette commande a été testée avec deux bases de données de contenus.

compare-spdatabaseschema

La commande Copy-SPDatabase permet, comme son nom l’indique, de copier une base de donnée SharePoint. Aucune information n’existe pour l’instant sur ce nouveau composant, mais on se doute que cela sera utile dans un scénario hybride ! On remarquera que la propriété de cible pour la copie attend une Connection String. A force de travailler avec SharePoint, on en aurait presque oublié le principe 🙂

Register-SPContentDatabase s’inscrit très probablement dans cette continuité de plateforme hybride.

register-spcontentdatabase

Switch-SPSitesToNewDatabase est une commande plus ou moins identique à Move-SPSite. Elle permet le déplacement d’une Collection de site d’une base de données de contenu vers une autre. Le différence notable est la capacité de renseigner plusieurs collections de site en paramètre d’entrée.

switch-spsitestonewdatabase

Upgrade-SPConfigurationDatabase est l’équivalent de la commande Upgrade-SPServer pour notre base de donnée de configuration (SharePoint_Config)

upgrade-spconfigurationdatabase

Site Master

Enable-SPWebTemplateForSiteMaster
Disable-SPWebTemplateForSiteMaster
Get-SPWebTemplatesEnabledForSiteMaster
Get-SPSiteMaster
New-SPSiteMaster
Remove-SPSiteMaster

SharePoint 2016 ajoute une nouvelle fonctionnalité touchant la création des collections de site: le Fast Site Collection Creation. Cette fonctionnalité est en lien direct avec le principe de Site Provisioning, concept très populaire permettant la mise en place automatisé d’espaces collaboratifs aux utilisateurs. Le mécanisme permet d’accélérer la création d’une Collection de Site en se basant sur une copie de la collection de site au niveau de la base de donnée de contenu.

Son application est assez simple

  1. Définir le Web Template faisant l’objet du Site Master
  2. Créer le Site Master. Suite à cette commande, une nouvelle collection de site Master est créé
  3. Créer la Collection de Site depuis le Master

enable-spwebtemplateforsitemaster

new-spsitemaster new-spsitemaster3 new-spsitemaster

Pour en savoir plus sur ce mécanisme et son application direct, vous pouvez lire le récent post de Bill Baer à ce sujet.

Gestion des vidéos

Disable-SPVideoStreaming
Enable-SPVideoStreaming
Get-SPVideoStreamingConfig
Suspend-SPVideoStreamingAccess
Resume-SPVideoStreamingAccess

Un des axes de développements de SharePoint 2016 est la gestion des vidéos. Au travers de ces commandes, on découvre un service de streaming. Pour le rendre effectif, vous devrez créer une Service Application de type Subscription Settings Service Application comme décrit ici.

get-spsitesubscription

Il sera par la suite possible d’activer, suspendre ou désactiver le service de streaming et le service est activé par défaut lorsque l’on dispose d’une Subscription Service. . On regrette un peu l’absence de paramétrage avancé du service de streaming, mais on espère que d’ici la version RTM on ai une plus grande latitude de configuration. On imagine que comme beaucoup de services disponible dans cette Technical Preview, ce sont les mêmes composants actuellement exploités dans le cadre d’un service Office 365, et dans ce cas précis le service d’Office Video.

Get-SPVideoStreamingConfig

Azure

Update-SPAzureBlobConfigLocator
Update-SPAzureBlobConfigLocatorEx
Update-SPAzureBlobConfigLocatorEx1
Update-SPAzureBlobLogStoreSignatures
Update-SPAzureBlobSignaturesEx
Update-SPAzureBlobSignaturesEx1
New-SPAzureVideoServiceAccount
Get-SPAzureVideoServiceAccount
Remove-SPAzureVideoServiceAccount

Cette nouvelle version est résolument tourné vers le cloud et le modèle hybride. Nous avons désormais à disponibilité des commandes permettant d’interagir avec une plateforme Azure. Pour bénéficier de ces fonctionnalités il faudra cependant disposer d’un compte Azure, et surtout d’un abonnement Media Services.

Au niveau des commandes PowerShell, on distingue deux catégories : la gestion des vidéos, et la configuration d’un service permettant le stockage de fichiers binaire encryptés sur une plateforme Azure. Pour le coup on est vraiment sur de l’hybride avec les données techniques se trouvant sur la base de donnée de contenu sur notre environnement On Premise, et les documents hébergés directement sur la plateforme Azure. On a hâte de tester tout ça !

Très peu d’informations sont disponible à ce sujet,  néanmoins cet article nous donne un bon aperçu des commandes à effectuer pour disposer de cette fonctionnalité de stockage de fichiers dans Azure.

Office 365

Set-SPO365LinkSettings
Test-SPO365LinkSettings
Get-SPO365LinkSettings

Là encore, ces commandes mettent en avant le modèle hybride avec la configuration de OneDrive et des Sites. On retrouve également ces fonctionnalités au niveau de notre Central Administration.

On retiendra de cette fonctionnalité la capacité de choisir le mode de redirection pour le mode hybride choisit: OneDrive et les Sites, ou OneDrive uniquement.

get-spo365LinkSettings get-spo365LinkSettings get-spo365LinkSettings

Mise à jour des fichiers par serveurs

Copy-SPSideBySideFiles

Toujours dans cette optique de mettre à disposition des administrateurs des fonctionnalités pour gérer la performance et le dimensionnement d’infrastructure SharePoint On Premise, nous avons le droit à une commande permettant la copie de répertoires et de fichiers dans la ruche. Cette commande PowerShell se base sur le très populaire et robuste Robocopy.exe et permet la copie de fichiers web (js,css et htm) d’un server à l’autre. Nous n’avons pas trouvé de Timer Job associé à ces opérations, il y a donc fort à parier que son application direct soit laissé aux administrateurs. Très peu de paramètres sont disponible pour cette dernière, si ce n’est le choix du chemin de log.

Copy-SPSideBySideFiles

Secure Store

Disable-SPSecureStoreMinDB
Enable-SPSecureStoreMinDB
Move-SPSecureStorePartitionData

Aucune information n’a filtré sur cette fonctionnalité lié au Secure Store pour l’instant, nous mettrons l’article à jour une fois que nous aurons éprouvé ces commandes.

Apps et Apps Store

Get-SPAppStoreWebServiceConfiguration
Set-SPAppStoreWebServiceConfiguration
Move-SPAppManagementData
Upgrade-SPAppManagementServiceApplication

Aucune information filtré sur cette fonctionnalité pour l’instant, nous mettrons l’article à jour une fois que nous aurons éprouvé ces commandes.

Gestion de Projets

Beaucoup de fonctionnalités autour de Project et PWA (Project Web Application) sont disponible dans cette nouvelle version. Elles feront probablement l’objet d’une étude dans un post séparé tellement elles sont nombreuses.

Service Application

Get-SPConnectedServiceApplicationInformation

Aucune information filtré sur cette fonctionnalité pour l’instant, la commande nous retourne les différents EndPoint de nos Service Application. On peut partir de l’hypothèse que cette commande s’inscrit dans l’utilisation d’une architecture n-tiers avec les MinRoles, cette information permettrait la vérification centralisée de chacune des Service Applications d’une ferme disposant de plusieurs rôles.

Get-SPConnectedServiceApplicationInformation

Gestion des Collection de Sites

Reset-SPSites

Aucune information filtré sur cette fonctionnalité pour l’instant. Contrairement à ce que pourrait laisser penser cette commande, le paramètre d’entrée ID est celui de la base de données de contenu et non celui d’une collection de site. Nous n’avons pas remarqué de comportement particulier lors de l’exécution de cette commande, ni aucune indisponibilité.

Reset-SPSites

Gestion des Web Applications

Upgrade-SPWebApplication

Aucune information n’a filtré sur cette fonctionnalité pour l’instant, nous mettrons l’article à jour une fois que nous aurons éprouvé ces commandes.

Upgrade-SPWebApplication

Insights

Get-SPInsightsAuthSettings
Set-SPInsightsAuthSettings

D’après ce post sur le Forum Technet , on apprend que le composant n’est pas encore disponible dans cette Technical Preview. La commande nous retourne des informations sur notre ferme SharePoint, ainsi que sur une assembly (introuvable localement). En en saura probablement plus dans les semaines à venir.

Get-SPInsightsAuthSettings

Profils utilisateurs

Get-SPMicrofeedOptions
Set-SPMicrofeedOptions
Set-SPDefaultProfileConfig
Upgrade-SPProfileServiceApplication
Export-SPTagsAndNotesData

De nouvelles commandes sont disponible pour gérer les profils utilisateurs dans SharePoint, on rappellera qu’un des changements majeur de cette nouvelle version est la suppression complète de FIM (Forefront Identity Manager) et donc la possibilité d’exporter des propriétés de profils utilisateurs dans un annuaire en natif. On notera dans ces commandes la possibilité de gérer des options pour le MicroFeed ainsi que la possibilité d’exporter les Tags & Notes. Cette commande est la bienvenue sachant que la fonctionnalité de Tags & Notes sera dépréciée sur SharePoint 2016.

Get-SPmicrofeedoptions Export-sptagsandnotesdata