Take the 2-minute tour ×

Does windows have an equivalent to puppet/chef for configuration management?

share|improve this question

5 Answers 5

up vote 14 down vote accepted

I wouldn't call it equivalent, Microsoft's SCCM (Systems Center Configuration Manager) is aimed at the same goal - managing configuration of multiple systems. This is the tool that most Windows sites use. (http://www.microsoft.com/systemcenter/en/us/configuration-manager/cm-overview.aspx)

share|improve this answer

A declarative configuration management tool written in Ruby? Well, not really, but sort of:

share|improve this answer
+1; do not forget cfengine. Now it supports windows natively, but the windows port is not free (people using windows are already used to paying for software anyway). –  natxo asenjo Apr 8 '11 at 11:40
The windows support is only usable to write something into templates and to ship files into the file system via the puppet means - it's not useable for anything else because there is a fundamental mismatch between what puppet is supposed to do and what the windows platform offers. –  pfo Apr 12 '11 at 20:10

Group Policy. (No, I'm not trolling...)

The exact purpose of Group policy is to define forest/domain (organizational) policies for computers' settings. It's built-in, well-supported, and definitive. If the user doesn't have admin access to their local machine, they won't be able to change the setting. If they are, their changes will revert to policy the next time that the machine checks into the DC (every [90 minutes + 0-30 minutes] by default)

If versioning / diff-ing of your policies is important to you, see my comment below for how to get that data, and then check in your changes via source control. It may even be worthwhile to set up a scheduled task to periodically do this automatically (in case somebody forgets.)

share|improve this answer
But there's no version control in Group Policy. You can't do svn log or svn diff to keep up with changes happening to your infrastructure. You can't revert, branch or merge. Everything I do lives in source control, except for the Windows infrastructure. I'm seriously contemplating writing (version controlled) PowerShell code and config files that manage Group Policy. –  Alex Holst Apr 12 '11 at 21:11
That had never been identified as a need, but your point that there is a call for versioning is valid. No, there is no built-in versioning, but it is trivial to export (serverfault.com/questions/45211/…) or report (serverfault.com/questions/45211/…) on all policies. –  gWaldo Apr 13 '11 at 15:21
@Alex Group Policy does support version control with the Microsoft add-on MDOP:AGPM. Unfortunately it's only available to Software Assurance Licensees currently. –  Chris S Feb 4 '13 at 15:23
Despite providing this answer, I strongly prefer Chef over Group Policy. If I really wanted to be twisted, I'd use GP to install Chef and nothing more. –  gWaldo Nov 1 at 22:54

Chef supports Windows (for quite some time.)

share|improve this answer

Puppet certainly supports Windows and quite well. Where it has shortfalls, PowerShell does the work, and you fire it with Puppet and store all the infrastructure code in Git/SVN/etc. I'm onsite at a customer automating the Windows environment with Puppet now. Search for "windows" at forge.puppetlabs.com

share|improve this answer

Your Answer


