a lap around pdt and other automation goodness
DESCRIPTION
TRANSCRIPT
![Page 1: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/1.jpg)
idea. plan. deliver.
idea. plan. deliver.
idea. plan. deliver.
Enrique Lima
A lap around PDT and other automation goodness
![Page 2: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/2.jpg)
idea. plan. deliver.
![Page 3: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/3.jpg)
idea. plan. deliver.
•Enrique Lima• [email protected]• Principal Consultant / Owner• Microsoft v-TSP BPIO / CoreIO / APPIO• Microsoft Certified Trainer – Regional Lead – East US• Member of the Geekswithblogs.net Community - Influencer
▫ http://geekswithblogs.net/enriquelima• @enriquelima - twitter.com/enriquelima
• Member of INETA
Who am I?
![Page 4: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/4.jpg)
idea. plan. deliver.
Overview
•The case for automation•Automation options•PowerShell Deployment Toolkit
![Page 5: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/5.jpg)
idea. plan. deliver.
idea. plan. deliver.
idea. plan. deliver.
The why would I care …
The case for automation
![Page 6: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/6.jpg)
idea. plan. deliver.
•We deploy servers for test, development, proof of concept, etc.•We need it quick•Saving VMs as templates•A lot, wait, again, a lot of manual work.•Tedious and repeatable
Our reality
![Page 7: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/7.jpg)
idea. plan. deliver.
Let’s talk about the reality
How many products make up System Center 2012 R2?Answer: 1
How long does it take to deploy System Center 2012 R2?Answer: Too long!
How many "screens" does an installation take including prerequisites and SQL Server?Answer: I lost count somewhere around 500
How many post-setup integration tasks are there?Answer: What on earth is post-setup integration?
Who’s afraid of XML?Answer: Don’t worry, there may be some good news towards the end of this session!
![Page 8: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/8.jpg)
idea. plan. deliver.
![Page 9: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/9.jpg)
idea. plan. deliver.
idea. plan. deliver.
What is DevOps?
![Page 10: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/10.jpg)
idea. plan. deliver.
What is DevOps?
![Page 11: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/11.jpg)
idea. plan. deliver.
idea. plan. deliver.
idea. plan. deliver.
What is available out there?
Automation options
![Page 12: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/12.jpg)
idea. plan. deliver.
•Chocolatey•SCCM
App/Server deployment automation
![Page 13: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/13.jpg)
idea. plan. deliver.
•PowerShell Deployment Toolkit•SCCM OSD
Platform deployment
![Page 14: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/14.jpg)
idea. plan. deliver.
idea. plan. deliver.
idea. plan. deliver.
PowerShell Deployment Toolkit
![Page 15: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/15.jpg)
idea. plan. deliver.
This section involves manually editing XML…
![Page 16: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/16.jpg)
idea. plan. deliver.
Before you start – XML Editing
•Get a good XML editor▫Notepad++▫Visual Studio▫PowerShell ISE
![Page 17: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/17.jpg)
idea. plan. deliver.
•Spin drives vs. SSD•Memory•Windows 8.1 Update 1 vs. Windows Server 2012 vs. Windows Server
2012 R2
Hardware / Software
![Page 18: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/18.jpg)
idea. plan. deliver.
•Get PDT•Customize the settings on Variable.xml•Run Downloader.ps1•Create Parent VHDX files•Run VMCreator.ps1
PDT – The Process
![Page 19: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/19.jpg)
idea. plan. deliver.
Define your deployment – Variable.xmlSpecify global settingsUser and company nameInstaller service account and passwordSource pathOptional – product keys
Specify settings for each componentUsually just service account and password
Specify servers for each roleDatabase roles must specify SQL instance name
Specify SQL settings for each instanceVersionAdmin group
Installer.ps1 will validate all settings before deployment
![Page 20: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/20.jpg)
idea. plan. deliver.
Download all the bits – Downloader.ps1Downloads…Prerequisites e.g. - SQL Native Client, Report Viewer, WSUSSQL Server 2012, SP1, and CU8SQL Server 2008 R2 and SP2SharePoint 2010 FoundationManagement PacksIntegration Packs
Extracts…
Runs…ADKSetup.exe downloadConfiguration Manager setupdl.exe downloadSelf-extracting exeWebPI for Windows Azure Pack Web Sites
Slipstreams…SQL Server 2008 R2 SP2
Requires…Windows Server 2012/Windows 8WinRAR or 7-ZipWeb Platform Installer
Option…Downloader.ps1 -DeploymentOnly
Restartable!Does not download…Windows Server 2012System Center ComponentsNew! Warning messages for items not downloaded
![Page 21: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/21.jpg)
idea. plan. deliver.
•Make a sysprepped OS image•Easy path …▫Use Convert-WindowsImage.ps1
•http://bit.ly/1q4BCMm
Create Parent VHDX files
Convert-WindowsImage.ps1 -SourcePath "9600.16384.WINBLUE_RTM.130821-1623_X64FRE_SERVER_EN-US-IRM_SSS_X64FRE_EN-US_DV5.ISO" -VHDFormat VHDX -Edition "ServerDataCenterCore" -SizeBytes 8GB -VHDPartitionStyle MBR -BCDinVHD NativeBoot -ExpandOnNativeBoot:$false -RemoteDesktopEnable -Driver "F:\Custom Driver" -Verbose
.\Convert-WindowsImage.ps1 -ShowUI
![Page 22: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/22.jpg)
idea. plan. deliver.
Install each server OS – VMCreator.ps1OptionalPDT can use existing servers, physical or virtual, any virtualization platformRequirements - Windows Server, domain joined, WinRM enabled, administrator permissions
Specify countHow many servers are in your deployment?
Specify defaultsHyper-V host, VM name, processor, memory, network adapter, OS disk, data disks, domain to joinFull example in default Variable.xml in PDT
Specify overrides per VM, if desired e.g. Different Hyper-V hosts, VM name, memory, OS disk
VMCreator.ps1 will validate required resources for VM creationCreates VM, joins domain, enables WinRM, add installer service account to administrators
![Page 23: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/23.jpg)
idea. plan. deliver.
Single pass complete lab setupProcess…First VM created as domain controller for new Active Directory forestMedia copied to DC during virtual hard disk creationAll other VMs are created but wait for Active Directory setup to complete before startingOnce Active Directory setup is complete, DC waits for all other VMs to start and join domainDC automatically runs Installer.ps1
RecommendationInclude minimum of 2 data disks with DC for Active Directory database and log files
VMCreator with Active Directory
![Page 24: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/24.jpg)
idea. plan. deliver.
Everything else! - Installer.ps1
Distributed Deployment ControllerManages validation, sequencing, dependenciesManages reboots where requiredGracefully handles cascading failures
PhasesFor each server, simultaneously:
AdministratorsWindows Roles and FeaturesSQL Clusters – with dependencies between cluster nodesSQLPrerequisites
With cross server dependencies:RolesIntegration and Configuration
![Page 25: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/25.jpg)
idea. plan. deliver.
The “Knowledge” in PDT – Workflow.xml
Installer.ps1 knows nothing about deploying System CenterAll “knowledge” is in Workflow.xmlWorkflow.xml defines everything we know about deploying System Center
Defines…Roles
Requirements – validation, Windows roles and features, prerequisitesDependencies on other rolesIntegrations between rolesFirewall
InstallablesDownloadsInstalls
Default settings – global, component, SQL
…and is completely extensible!
![Page 26: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/26.jpg)
idea. plan. deliver.
Validation
LocalValidates settings in Variable.xml for…
FQDN, dependencies, role combinations, role instance count, required variables, SQL instances, media
ActiveDirectoryValidates against Active Directory for…
Service accounts and passwords, other security principals - groups
RemoteValidates against target servers for…
Server exists, administrator access, clusters, WinRM, Task Scheduler,credentials policy, operating system version, file access, certificates, minimum memory
![Page 27: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/27.jpg)
idea. plan. deliver.
Extenders – work with all PDT scripts
Extends Workflow.xml for custom rolesFilename must match Extender*.xml, and be in same location as Workflow.xmlExtender*.xml merged in memory with Workflow.xmlExtender entries are added at end of existing sections
New Installer.ps1 switch if defining new rolesInstaller.ps1 -SkipValidation RolesCombination
SamplesVeeam Management Pack for VMwareGridPro Request Management for WAPOperations Manager MPs
![Page 28: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/28.jpg)
idea. plan. deliver.
Custom setup and post installerCustom setupVMCreator.ps1 –Setup <path>Requires a folder with the name of the VM in <path>Requires a PowerShell script with the name of the VM in that folderScript will be run against that VM using autologon during initial VM startupVMCreator.ps1 with AD – DC waits for custom setup to complete before running Installer.ps1
PostInstallerPostInstaller.ps1 in same location as Installer.ps1Automatically run after successful completion of Installer.ps1Must use remoting for configuration of any systems other than the one running Installer.ps1
![Page 29: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/29.jpg)
idea. plan. deliver.
-MaxStageSwitch on Installer.ps1Limits deployment stage for partial deployment1Admin – Adds service accounts to local administrator groups2ServerFeatures – Installs Windows Roles and Features3SQLClusters – Installs SQL clustered instances4SQL – Installs SQL standalone instances5Prereqs – Installs prerequisites6Roles – Installs roles7Integration – Completes integration and configuration
Stages are cumulative
![Page 30: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/30.jpg)
idea. plan. deliver.
GUIs!!!Service Provider Operational Readiness KitDeveloped by Microsoft service provider teamAvailable to service provider partners onlyDelivered as a USB stick with all mediaLimited to specific deployment scenarios relevant to service provider team
PDT GUIDeveloped by a partner, Elanity Network PartnerUI for creation and editing of Variable.xml
![Page 31: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/31.jpg)
idea. plan. deliver.
PowerShell Deployment Toolkit
Available on the TechNet Galleryhttp://aka.ms/DownloadPDT
Documented through the Building Clouds bloghttp://aka.ms/GetToKnowPDT
Don’t forget the YouTube video…http://aka.ms/PDTVideo
Does not replace…Configuration Manager software distributionVirtual Machine Manager virtual machine creationVirtual Machine Manager service deployment and servicing
…but solves the chicken and egg problem!
![Page 32: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/32.jpg)
idea. plan. deliver.
demo time!
![Page 33: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/33.jpg)
idea. plan. deliver.
idea. plan. deliver.
![Page 34: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/34.jpg)
idea. plan. deliver.
idea. plan. deliver.
idea. plan. deliver.
Questions
![Page 35: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/35.jpg)
idea. plan. deliver.
•Rob Willis▫TechEd 2014 Session on PDT: DCIM-B361
http://bit.ly/1oUTx4f▫Blog
http://blogs.technet.com/b/privatecloud/
Credits
![Page 36: A lap around pdt and other automation goodness](https://reader033.vdocument.in/reader033/viewer/2022061205/5480d08eb4af9fa5158b5e13/html5/thumbnails/36.jpg)
idea. plan. deliver.
idea. plan. deliver.