Windows PowerShell 3, Microsoft’s task automation framework that came out earlier this year is now better optimized for the DevOps community as it comes with several useful features like task scheduler, easier scripting, 10x more cmdlets, and tool building enhancements. While PowerShell was always in favor of developers, the newly released version makes the experience even better for DevOps people by automating everything, enabling agile automation, making it easier for both operators and developers to automate and build tools respectively.
Some of the main features of PowerShell 3 that are useful for DevOps include following:
• 10 times more cmdlets (2430) than in Powershell 2 (~230) – cmdlets for networking, storage, clustering, DNS, file servers, etc – In short, more out-of-the-box automation
• Ability to leverage Windows Workflow Foundation
• Improved WMI Experience
• Ability to use Task scheduler to schedule Background jobs
• Sessions can survive network interruptions up to 3 minutes – sessions can also be disconnected and reconnected later, even from another machine (like remote desktop)
Leveraging these features, PowerShell 3 is able to perform several functions, totally in favor of Devops teams, such as,
• Automating everything
• Robust automation
• Scheduled jobs
• Strong networking
• Easy automation for operators
• Easy tool building for developers
Further, PowerShell 3.0 comes with tool building enhancements to help developers to easily use and extend to write their own tools, scripting enhancements to monitor how a script is executing and compiles the script or portions of the script on the fly to optimize performance, and platform building enhancements for streamlining the delegating administration tasks. All in all, PowerShell 3 is an excellent DevOps tool aimed at bridging the gap between operators and developers.