Kenneth Hansen Program Manager Microsoft Corporation Steven Murawski, MVP System Administrator StackExchange
GreatTerrible Business is Good => $$ More servers => More Failures We have a Job
GreatTerrible Business can respond to match the market => $$ More Change => More Failures We have a Job
$$ Idea
DEMO: PowerShell WorkflowDEMO DEMO: Scheduled JobsDEMO DEMO: Array SyntaxDEMO DEMO: V3.0 –gt V2.0DEMO DEMO: Enhanced ISE DEMO DEMO: Delegated AdminDEMO DEMO: RemotingDEMO DEMO: CEC / CIM ResultsDEMO
Simple & Easyv3.0 -gt v2.0 Robust & Scalable Comprehensive Coverage Standards-based
Simple & Easy v3.0 -gt v2.0 Robust & Scalable Comprehensive Coverage Standards-based
IntelliSense
Windows PowerShell ISE IntelliSense Tab completion Editor enhancements Autosave support Snippets Command Discovery Get-Command discovery cache Automatic module importing Show-Command Run with PowerShell Help System Improvements Updatable help Contextual F1 Get-Help ˗ ShowWindow Word wrap in help output Syntax & Language Simplified Where & ForEach $PSItem alias for $_ Array syntax for singletons Get-ChildItem
ETS Types & Formats Cmdlets ISE
Simple & Easyv3.0 -gt v2.0 Robust & Scalable Comprehensive Coverage Standards-based
Types of Remoting CommandWhy InteractiveEnter-PSSessionLike I’m on that computer BackgroundInvoke-Command -AsJobWhen it’s going to take a while FanOutInvoke-Command –ComputerWhen I need to do it on a lot of computers FanInImport-PSSession -SessionBrings that computer “local” …and… Sessions New-PSSessionEnables a persistent connection
Intent Environment Configuration (Dev -> Test -> Production) $WebConfigEnv ComputerName = $VMServerNames Name = 'FourthCoffee' } … Structural Configuration $WindowsFeature Name="Web-Server", "Web-ASP-NET45" Ensure="Present" } … Make It So Idempotent Automation foreach -parallel ($featureName in $Name) { $feature = Get-WindowsFeature -Name $featureName if(($Ensure -eq "Present") -and (!$feature.Installed)) { Install-WindowsFeature -Name $featureName } …. } …
Simple & Easyv3.0 -gt v2.0 Robust & Scalable Comprehensive Coverage Standards-based
Simple & Easy v3.0 -gt v2.0 Robust & Scalable Comprehensive Coverage Standards-based
Bugs Suggestions
Complete your session evaluations today and enter to win prizes daily. Provide your feedback at a CommNet kiosk or log on at Upon submission you will receive instant notification if you have won a prize. Prize pickup is at the Information Desk located in Attendee Services in the Mandalay Bay Foyer. Entry details can be found on the MMS website.