For those of you fortunate enough to be at TechEd North America last week, you might have seen Jeffrey Snover announcing Windows PowerShell Desired State Configuration (DSC) for Linux! (If you missed that session, you can watch a replay of it online). We are excited to announce the initial availability of this feature with the release of a CTP of DSC for Linux at GitHub.com. With DSC for Linux, you can now use the same platform to concurrently manage the configuration of your Windows and Linux computers. We are actively developing DSC for Linux and will continue to improve and extend it going forward.
Bringing Desired State Configuration to Linux is another step in our commitment to standards-based management for the heterogeneous data center, and it empowers admins and developers to effectively and efficiently manage configuration state – irrespective of the managed computer’s operating system. The DSC for Linux implementation uses the open-source Open Management Infrastructure (OMI) as a CIM server, and the standard WS-Management protocol for remote communication. As such, it is an open and extensible configuration management platform for managing the entire range of fabric and tenant elements of a datacenter. Unlike other configuration management efforts, DSC is focused on providing an open platform for tool vendors to build on top of. This approach allows tool vendors to maximize their efforts on differentiating value-add features and ensures that customers can choose the tool they want and be confident that it will manage all of their elements. This collaborative, layering approach was first demonstrated by Chef in a technology demo during TechEd 2012. The upcoming version of Chef with DSC support was demonstrated during the PowerShell Desired State Configuration and DevOps in Microsoft Azure talk at TechEd 2014.
In this initial CTP release, we have implemented the following Resource providers, which you will find to be analogous to Windows “Built-In” DSC Resources:
- nxFile – manage files and directory state
- nxScript – runs script blocks on target nodes
- nxUser – manages Linux users
- nxGroup – manages Linux groups
- nxService – manages Linux services (System-V, Upstart, SystemD)
Note, only “push” mode is currently available for Linux in this release. For more information on Push vs Pull modes, see this explanation.
The CTP release for PowerShell Desired State Configuration for Linux is open sourced. For a walkthrough of getting started with DSC for Linux, head over to the Building Clouds blog.