Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have been looking at Chef as a tool for backing up config my windows servers. But from what I can see this is geared more towards *nix doesnt look like there are many scripts for backing windwos configurations up for change management.

Has anybody got any experience using this in a windows environment? Or does anybody know of any other tools that can be used for windows.

Thanks Bill

share|improve this question
up vote 4 down vote accepted

You can run arbitrary ruby code, so this probably your best approach when it comes to Windows. Also the philosophies of UNIX-like OS and Windows are so fundamentally different that there's currently no point in using chef for Windows-based environments. Use the tools MS intends you to use like SCCM and SCOM - your results are going to be much better and clearer to others in your group.

share|improve this answer
Yep that's what im looking at next tbh. Once you go Microsoft that's you tied in massively! Thanks mate. – William Fleming Jun 22 '12 at 10:13
This is an inaccurate and misleading answer. Chef works fine on Windows, and several companies are successfully deploying apps and managing servers with Chef on Windows. See: and for just one company's story. – jtimberman Jun 22 '12 at 16:37
+1, "Use the tools MS intends you to use" – Mike Pennington Jun 23 '12 at 23:32

If you're looking for a backup tool, you should use backup software - Chef is a configuration management tool, which approaches it from a different perspective.

Using config management, the configs are stored in the tool and pushed to the servers. Throw a server in the trash and put a new one in with the same name, and it should have its configs pushed to it. But that won't take care of data files.

Using backup software, the servers' data is copied to tape or other storage. Server dies, you put a new one in and perform a restore - ideally of everything. Plus, backup software is optimized for (wait for it... ) backups. Tape/media management, streaming to multiple devices/libraries, etc - you sure you want to try to reinvent that wheel using a tool made for something else?

Now, your title mentions a lot of things. AD is part of the System State of every DC in a given domain. Back up the system state, you have AD inside it. Because of the multi-master nature of AD, you have to be careful about restoring DCs with normal backup software, with regards to tombstones and authoritative restores.

DHCP - the config for the server is stored in the registry (again, typically backed up in System State) and the config for the scopes is backed up regularly on the filesystem. So, you'd want to get both of those.

DNS, if it's AD-integrated, is part of System State as well. If it's standard zones, then it should just be text files in the OS.

IIS 6 and prior used the metabase to store the configs; not sure what 7.x is using off the top of my head. But that's just the configs - you typically want the files under the sites and VirDirs, too.

Exchange - I'm not sure that the "config" for exchange is stored separately from doing a backup of Exchange as a whole, which you should absolutely doing. Your users won't be too happy if your mailserver craps out, and you can't bring their mailboxes back, but saved yourself an hour of configuring your replacement server because you had the config saved.

share|improve this answer
It worded wrong im looking for config management. But i want these configs to be backup up so i can look at all the changes that have been made – William Fleming Jun 24 '12 at 19:15
That's not what config management does. You declare your configs in the tool, not at the nodes. – mfinni Jun 24 '12 at 19:57
Maybe you mean that's not what Chef does. Config Management to me is the ability to track changes and backup my windows server configs. Giving me the ability to see who changed what and when. This is what im trying to do. – William Fleming Jun 25 '12 at 8:45
That is not the philosophy behind most Config Management tools for servers. For simple(r) configs like routers, there's stuff like RANCID or CiscoWorks - but as I point out, for Windows applications, you generally care about a lot more than just the "config" - you want the data too. – mfinni Jun 25 '12 at 13:52
In my case we have backups of the servers which is no problem all I need I some tool to track changes to my configurations. – William Fleming Jun 25 '12 at 15:04

Chef works fine on Windows, and support for the platform in general is improving with each release. Opscode is committed to making Windows a first class citizen to be configured by Chef client. For example, version 0.10.8 introduced Windows File ACL support, and Private Chef has Active Directory Support (links to Private Chef documentation; a press release announcement is here).

While Windows and POSIX systems are fundamentally different when it comes to the typical user interface to managing the system, at the end of the day you're still managing system resources like:

  • Software installation
  • Users and groups
  • Processes and services
  • Configuration files

The approach taken between platforms is obviously different, with different tools, but you get there in a similar manner anyway. Chef includes primitives for all these and more that work on Windows.

To directly answer the question: Chef is not a backup tool. However, when Chef manages a configuration file with one of the resources, "remote_file", "cookbook_file", "template", it makes backups of the files in a configurable location.

I answered "Configuration Management for Windows" in greater detail on StackOverflow.

I encourage you to watch these videos about Ancestry's use of Chef, which is very similar use case to a lot of Windows shops that we've talked to recently.

One thing that is missing is public cookbooks for managing Exchange and AD. The culture of Big Enterprise IT where those get commonly deployed is not one of sharing open source code, despite it not being their competitive advantage.

share|improve this answer
Of course Chef Private supports all that and that's the reason why the Chef Private trail version supports exactly Red Hat Enterprise Linux 5 and 6 (including CentOS), Ubuntu 10.04 and Ubuntu 11.04 ;) – pfo Jun 23 '12 at 0:52
And just BTW I don't think that linking to a press release that has exactly zero technical depth is considered "proof" of the fact that the product your company ships "supports" anything (especially in the context of AD). – pfo Jun 23 '12 at 1:08
Opscode Private Chef is a Chef Server, and the platforms we support for it to be installed on have absolutely nothing to do with the platforms that we support for Chef Client to configure. – jtimberman Jun 23 '12 at 16:02
While this is good info, I don't see an answer to the question, which was how to use Chef to back up Windows configs, today. – mfinni Jun 23 '12 at 18:50
Good point :). I directly answered the question in the updated version above. Cheers. – jtimberman Jun 24 '12 at 3:28

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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