Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

SharePoint saturday montreal 2016- automatisation powershell

103 views

Published on

PowerShell Automation session given at SPS Montreal in April 2016

  • Be the first to comment

  • Be the first to like this

SharePoint saturday montreal 2016- automatisation powershell

  1. 1. SharePoint Saturday Montréal#SPSMontreal 2 avril 2016 SharePoint Saturday Montréal Automatisation de SharePoint avec PowerShell Nik Charlebois SharePoint Premier Field Engineer
  2. 2. SharePoint Saturday Montréal#SPSMontreal Or Argent Merci à nos commanditaires ! Bronze
  3. 3. SharePoint Saturday Montréal#SPSMontreal Ce soir à 18h 636 Cathcart
  4. 4. Nik Charlebois • Microsoft SharePoint Premier Field Engineer • Ex-Microsoft MVP • Plus de 10 ans d’expérience avec SharePoint • Auteur « Beginning PowerShell for SharePoint » • Focusse sur le développement • Blog: NikCharlebois.com • @NikCharlebois
  5. 5. SharePoint Saturday Montréal#SPSMontreal But de cette session • Offrir un aperçut des nouveautés de PowerShell v4 et +; • Démontrer comment utiliser PowerShell localement et dans le nuage; • Donner un aperçut de ce que le futur nous réserve.
  6. 6. SharePoint Saturday Montréal#SPSMontreal Prérequis • Connaissances de base de PowerShell; • Connaissances de base du modèle d’objets de SharePoint; • Avoir Windows Management Framework 5 (pour les démos)
  7. 7. SharePoint Saturday Montréal#SPSMontreal Agenda Innovation
  8. 8. SharePoint Saturday Montréal#SPSMontreal PowerShellGet • Pensez-y comme si il s’agissait de la platteforme NuGet de PowerShell; • Nécessite Windows Management Framework 5 (PowerShell 5) ou le module PowerShellGet pour PowerShell v3 et v4; • Préconfiguré avec la gallerie PowerShell: • PowerShell Gallery (http://PowerShellGallery.org) • Permet de télécharger et installer automatiquement des paquets approuvés.
  9. 9. SharePoint Saturday Montréal#SPSMontreal PowerShellGet[…]
  10. 10. SharePoint Saturday Montréal#SPSMontreal PowerShellGet[…]
  11. 11. SharePoint Saturday Montréal#SPSMontreal PowerShellGet[…]
  12. 12. SharePoint Saturday Montréal#SPSMontreal Desired State Configuration (DSC) • Connu sous le nom d’engin « Make-it-so »; • Définit la configuration d’une machine et l’applique; • Agit comme un exécuteur (gardien) de la configuraton définie; • Introduit dans WMF 4.0, mais grandement amélioré dans la version 5.
  13. 13. SharePoint Saturday Montréal#SPSMontreal Script de configuration DSCConfiguration TestWebServer { node VMServer1.contoso.com { File UlsViewerDownload { DestinationPath = "C:ToolsUlsViewer.exe" Ensure = "Present" SourcePath = "DSCPullPullServerULSViewerULSViewer.exe" Type = "File" } WindowsFeature WebRoleExample { Ensure = “Present” Name = “Web-Server” } } } TestWebServer –OutputPath “C:DSCConfigsTestWebServer”
  14. 14. SharePoint Saturday Montréal#SPSMontreal Modes de DSC Pousse (DSC Push): Tire (DSC Pull): • Les scripts DSC sont situés et executés directement sur la machine à configurer; • Les changement à une configuration DSC doivent être appliqués sur chaque machine; • Chaque machine doit avoir toutes les ressources DSC nécessaires d’installer localement avec de rouler le script de configuration. • Les scripts DSC sont situés sur un serveur central nommé “Pull Server”; • Les changements à la configuration DSC doivent être fait au niveau du serveur central seulement; • Les serveurs n’ont pas besoin d’avoir toutes les ressources DSC nécessaires d’installer localement. Elles seront téléchargées du “Pull Server”.
  15. 15. SharePoint Saturday Montréal#SPSMontreal Exécution de DSC
  16. 16. SharePoint Saturday Montréal#SPSMontreal Exécution de DSC […] • Start-DSCConfiguration = Make it So!
  17. 17. SharePoint Saturday Montréal#SPSMontreal Aperçut de DSC * Utilise maintenant une approche “Open-Source” DSC Resources Kits Waves* Module 1 Module 2 Module n ... Resource 1 Resource 2 Resource n ... Resource 1 Resource 2 Resource n ... Resource 1 Resource 2 Resource n ...
  18. 18. SharePoint Saturday Montréal#SPSMontreal Aperçut de DSC Wave 1 xComputer xVHD xIPAddress xWebSite ... Wave 2 xADDomain xADUser xFirewall xSQLServerInstall ... … Wave 10 xDisk xReleaseManagement xAzurePack xOU ... DSC Resource Wave Kits Module Resource
  19. 19. SharePoint Saturday Montréal#SPSMontreal Aperçut de DSC […] • Depuis avril 2015 les ensembles de ressources DSC sont “open-source”; • L’approche des vagues n’est maintenant plus utilisée; • GitHub est maintenant le repertoire principal pour toutes les ressources DSC; • Les gens sont libres de fourcher le code pour leur propres intérêts ou de soumettre une demande de fusion avec les propriétaires du projet; DSC Resource Wave Kits Module Resource
  20. 20. SharePoint Saturday Montréal#SPSMontreal Aperçut de DSC […] • Le nom des modules débutent par ‘x’ pour indiquer qu’ils sont en phase expérimentale (ou par ‘c’ pour indiquer qu’ells sont gérés par la communauté;; • Normallement spécifique pour un logiciel précis ou une composante OS/Serveur (ex: xFireFox, xChrome, xActiveDirectory); • Il y a présentement 600 modules DSC officiels approuvés par Microsoft; • Les modules DSC peuvent être téléchargés et placés sous “C:Program FilesWindowsPowerShellModules” pour les rendre disponibles aux sessions PowerShell; DSC Resource Wave Kits Module Resource
  21. 21. SharePoint Saturday Montréal#SPSMontreal Aperçut de DSC […] • Une ressource représente un composant d’un logiciel que l’on veut configurer avec DSC o Ex: DSC Resource Wave Kits Module Resource
  22. 22. SharePoint Saturday Montréal#SPSMontreal Aperçut de DSC […] • Le nom des ressources est constitué du nom de la compagnie, suivi par le nom de la resource (ex: MSFT_xWebSite); • Les ressources contiennent toutes 2 fichiers: 1) Module PowerShell (.psm1): contient la logique; 2) Fichier de schema MOF: Défini l’information à propos de la ressource et de ses paramètres (interface); • Un module DSC de PowerShell contient toujours au moins 3 fonctions: o Get-TargetResource o Set-TargetResource o Test-TargetResource DSC Resource Wave Kits Module Resource
  23. 23. SharePoint Saturday Montréal#SPSMontreal Aperçut de DSC […] • Get-TargetResource: o Retourne simplement l’état actuel de la machine à configurer; • Set-TargetResource: o Fonction responsable du “make-it-so”. C’est ici que la logique de configuration prend place; • Test-TargetResource: o Compare chaque paramètre défini dans le fichier schema et la configuration actuelle du serveur (obtenue par Get- TargetResource). S’assure que le serveur est dans la configuration désirée et retourne vrai ou faux. DSC Resource Wave Kits Module Resource
  24. 24. SharePoint Saturday Montréal#SPSMontreal Mesdames et messieurs, xSharePoint! • Cible SharePoint 2013 et 2016; • Initialement rendu disponible en avril 2015; • Disponible dès aujourd’hui http://GitHub.com/PowerShell/xSharePoint • Version 1.0.0.0 sera lancée aux alentours du 15 avril 2016; • Contient plus de 53 ressources (xSPWebApplication, xSPSite, etc.); • Maintenu par Microsoft (approche meilleur effort).
  25. 25. SharePoint Saturday Montréal#SPSMontreal SharePoint Online Management Shell • Téléchargement gratuit de Microsoft; • Inclut des cmdlets de PowerShell pour gérer les usagers, les groupes et les sites de SharePoint Online; • Installe le module Microsoft.Online.SharePoint.PowerShell; • Contient « aujourd’hui » 42 cmdlets au total.
  26. 26. SharePoint Saturday Montréal#SPSMontreal SharePoint Online Management Shell[…]
  27. 27. SharePoint Saturday Montréal#SPSMontreal Intéragir avec SharePoint à distance • Depuis SharePoint 2010, nous avons le modèle d’objet Client (CSOM); • Ce modèle vient en trois saveurs: • JavaScript • .NET • Silverlight • Puisque PowerShell utilise .NET, nous pouvons utiliser CSOM avec PowerShell.
  28. 28. SharePoint Saturday Montréal#SPSMontreal CSOM avec PowerShell • Nécessite de charger les modules suivants dans votre session PowerShell: • Microsoft.SharePoint.Client • Microsoft.SharePoint.Client.Runtime
  29. 29. SharePoint Saturday Montréal#SPSMontreal Office Dev Patterns & Practices • Défini plus de 150 cmdlets additionnels; • Fonctionne autant avec une instance « on-premises » que pour Office 365; • Offre des cmdlets interagissant avec des niveaux plus granulaires que ceux par défaut: • Ex: New-SPOList
  30. 30. SharePoint Saturday Montréal#SPSMontreal SharePointx  xSharePoint • Module permettant l’extraction d’un script de configuration DSC à partir d’un environnement SharePoint existant; • Applications: • Faciliter l’analyse de problème (recréer localement un environnement client); • Accélérer la migration vers Azure; • Rafraîchir rapidement et fréquemment un environnement dev/QA; • Comparer la configuration de deux environnements ou à un « point dans le temps »;
  31. 31. SharePoint Saturday Montréal#SPSMontreal DSC inversé • Le module appelle chaque fonction Get-TargetResource, permettant de simplifier le code et permettre la réutilisation; • Possibilité de définir les mêmes comptes services (si destination sous le même domaine) ou de simplement utiliser des nouveaux; • Tous les paramètres sont préservés, à l’exception des clés d’encryption;

×