Trevor Sullivan Solution Architect Project Leadership Associates
Trevor SullivanSolution Architect
Project Leadership Associates
Speaker
Trevor Sullivan
• Microsoft MVP: PowerShell• Solution Architect with PLA• 10 years of experience on Windows platform• Community member (StackExchange, MyITforum, etc.)• Open-source project owner/contributor
@pcgeek86
Agenda
• PowerShell 5.0 [Preview]• OneGet• PSGet• Desired State Configuration
OneGet
Windows Package Management
OneGet
• Get-Command -Module OneGet;• Find-Package;• Install-Package;
Windows Client
Chocolatey
NuGet
SMB
http://oneget.org
PSGet
PowerShell Module Management
PSGet
• Get-Command -Module PowerShellGet;• Find-Module -Name PowerEvents -RequiredVersion 0.4;• Install-Module;• Update-Module;
Windows Client
Chocolatey
NuGet
SMB
Desired State Configuration
Infrastructure As Code
Why DSC?
What’s DSC?
Author
Test
CommitApply
Report
Configuration Structure
Node
Resource Instance
Resource Instance
Resource Instance
Resource Instances
ConfigurationConfiguration
Data
Configuration Data
HashTable
AllNodes Variables
Node
Node
Node
DSC Resources
• Specially crafted modules that expose configuration details
• Implement Get/Set/Test-TargetResource functions
Get-TargetResource
Test-TargetResource
Set-TargetResource
DSC Push Mode
• Invoke configuration block with -OutputPath• Use Start-DscConfiguration
Client/Management Server
Managed Endpoints
WinRM
DSC Pull Mode
DSC Clients
Pull ServerPull Service
Conformance Endpoint
Server Message Block (SMB)
Push
Pull
Refresh Modes
Apply Only
Apply and Monitor
Apply and AutoCorrect
Configuration Modes
Local Configuration Manager
Pull Service OData Endpoint
Certificate Thumbprint
Download Manager
Credential
Reboot if Needed
Certificate ID
Credential
Other Settings
Azure VM DSC Extension
Configuration Public Cloud
Demo
Desired State Configuration