I'm wondering if there is any good/easy way to get the IIS configurations synchronized?

I'm going to be setting up a pair of IIS Servers with Network Load Balancing. I can get the data files (html, etc) synchronized all fine and well, but I'll be adding new Websites fairly often and I'd like to avoid doing the IIS configuration on multiple servers.


Did you check the Shared Configuration feature in IIS 7? Check this out http://learn.iis.net/page.aspx/264/shared-configuration/ and http://learn.iis.net/page.aspx/453/configuring-a-web-farm-using-iis-shared-configuration/

| improve this answer | |

There are a bunch of options here and the 'correct' answer depends upon your specific needs. Some of the earlier posters touched on some of them, but i wanted to add a bit. Note, all of this applies to iis 7 and up.

Shared Configuration

The idea here is that you can take a web servers configuration and export it to an XML config file. Then point all web servers you want to mimic your config to the shared file (on a UNC somewhere).

  • (+) Super simple to learn and setup
  • (-) It won't ensure components are installed on all the web servers
  • (-) It won't ensure content is synchronized across your web servers
  • (+/-) Customization between servers is limited (you'll want to look at the link @Vivek posted that explains what configuration is actually synchronized.

IIS Web Farm Framework 2

The idea here is that you setup "primary" and "Secondary" servers. All configuration changes are made on the primary server then 'replicated' to the other servers in the farm. http://www.iis.net/download/WebFarmFramework

  • (+) Simple user interface and setup
  • (+) Everything from the primary server is replicated to the secondary servers. This includes what IIS components are installed, what was added through the web platform installer, and content.
  • (-) You're left without a scripted repeatable config if your primary server gets hosed.
  • (-) As of this post the product is new and I've found documentation/blogumentation to be pretty sparse.

WebDeploy 2 (aka MSDeploy)

This is the swiss army knife of solutions. It is designed to do lots of things - migrate from iis 6 to 7, package web apps for deploy, and synchronize web farms. I suspect that this is the backbone of the code most other MS options.

  • (+) Full access to IIS
  • (+) generate scriptable, repeatable deployments for multiple servers
  • (+) good deep documentation
  • (+) integrates with Web Farm Framework for application provisioning
  • (-) learning curve of another command line tool

PowerShell w/ the WebAdministration Snapin

IIS is fully exposed here, so the world is your oyster. Whatever you can dream up you can script.

  • (+) ultimate flexability & extrodinary control
  • (+) can be executed against remote computers from a single location
  • (-) learning curve of powershell & the WebAdministration snapin.


This is pretty much the same thing as powershell, so i won't go into any detail here, the real difference is that it doesn't support remote execution (i.e. you need to get your script to run on each web server).

Anyway, I know i'm late to the party, but hope that helps.


| improve this answer | |
  • Nice job. If I had a moment, I would add some starter links to complete this post. – Nathan Hartley May 14 '13 at 14:39
  • Is it true that the Web Farm Framework is not supported for IIS > 7.5 ? Also it is not possible to use Web Deploy in combination with Shared Configurations, they are not compatible. What would you recommend for deploying and synchronizing (onto) multiple IIS servers? – Guillermo Feb 3 '16 at 15:13

What you are looking for is MSdeploy. It can be used to sync IIS6 or IIS7 systems.


| improve this answer | |

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.