We do mostly (but not exclusively) win servers.

Preferably, we can start the OS and do little or nothing to it to make it ready to receive commands (we know we may need to create a base image with an agent or ssh server on it).

Need to be able to install mongodb, java based apps, iis config, etc.

Which tool has strongest windows support/community, and (if poss) lightest init footprint?

Operational Answer: Powershell DSC.

This is not the full story (it doesn't do all that chef/puppet/etc do), but it meets a lot of needs, works great, and is out of the box in win 8.1/2012-R2/10. We are very happy with it.

  • 1
    with ansible you just need one ssh server in your windows servers and you can use the module command "ansible -m command", or if you want puppet you can use exec resource to install what you want – c4f4t0r Dec 10 '14 at 17:13
  • Chef seems to be trying very strongly to add native desired state configuration support DSC. They have been getting support in this directly from Microsoft. That will potentially make a big difference in the future if the other configuration management systems don't also add that support. – Zoredache Dec 10 '14 at 17:25

Jeffrey Snover, who is the father of Powershell and has a strong influence on the future of Windows Server, recently said that Chef is currently aligned with the Windows Server strategy, while Puppet is not currently demonstrating this. (But it could in the future. And I don't have specific examples about all the other CM platforms/tools/solutions - I'm just going off of what I have heard him say in his interviews, blogs, Twitter, etc.)

Desired State Configuration, DSC, is the primary focus of Jeffrey Snover's Windows Server strategy going forward. I really can't overstate the importance of DSC to the future of Windows Server. Snover wrote his "Monad Manifesto" in 2002, in which DSC was essentially the culmination and Powershell was simply a stepping stone on the way to get there.

That's a powerful statement. DSC has essentially been the vision for over 12 years now. Think about how awesome Powershell is and how it's enriched the lives of Windows admins for years now. Now consider that it was only a stepping stone to get us to Desired State Configuration.

So when you ask which configuration management platform has strong Windows support, (especially Server,) absolutely the most important question you could ask is to what degree is that CM platform integrating with Desired State Configuration.

Jeffrey Snover Says

  • Is the vision to use chef with PowerShell dsc? – Jonesome Reinstate Monica Dec 10 '14 at 19:00
  • what about ansible and salt? do you have any links for more info? – Ale Dec 10 '14 at 19:00
  • 5
    Puppet's support for use of DSC resources is on par to Chef's, it just happens to be a community-developed integration instead of developed by the company. forge.puppetlabs.com/msutter/dsc But, when looking for a tool to use today, I'd recommend steering clear of the DSC glue in these toolchains - DSC itself and the integration points into these config management systems are still under heavy development. – Shane Madden Dec 10 '14 at 20:48

I think you are going to find that both Chef and Puppet have strong Windows support. I'm biased so I would point you to one of those over the other, but it's really for you to decide which one works better for you. Both tools have had support since 2011 and both are investing heavily in making that support better.

Puppet Specific

As I mentioned, I'm a bit biased. There is quite a bit of phenomenal content out there for Windows, both on the Forge and on Github. Puppet Labs has announced the Windows Module Pack, which brings you a quality set of modules that are Windows specific.

With respect to DSC, it is still a young product but it is getting better every time there is a new release. There is a Puppet community module for DSC that does a pretty good job of 1:1 mapping resources to types/providers. The team specific to that (that I'm on) is looking at where we can integrate better with DSC, and we've talked with Jeffrey Snover about this. Some of it was waiting on a little more maturity, some of it is that there are so many things to do, doing the right thing at the right time is extremely important to us. Likely by the time you read this, Puppet will have much better support for DSC.

UPDATE: Puppet has a supported DSC module as of September 2015.


Selecting a cm based on widows support may not be the best strategy. Especially if the team does not readily use it throughout operation. each camp has a loyal fans. The support for Chef integrating windows management tasks , appears more readable and similar to the DSC(PowerShell) syntax. I am sure a puppet guru could find some argument that puppet supports windows more. I think the team needs to select the platform they will use more (easier to code), if they already get web centric scriptiing like python or ruby Chef may make more sense. I have heard if you already master puppet's dsl, it will be doable to manage windows. When Microsoft makes its DSC RTM in next PowerShell(win 2016) perhaps this debate really reach a fever pitch

  • 1
    Powershell DSC is already in the core OS (out of the box) of Win 8.1, Win2012-R2 and Win 10. – Jonesome Reinstate Monica Oct 8 '15 at 17:23
  • 2
    The OP stated that his organization uses mostly Windows servers, so it seems to me that Windows support would be a legitimate primary requirement. – Ben Collins Jul 20 '16 at 15:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.