Friday, November 16, 2007

IIS 7-- the adventure continues....

So I've done some more research about trying to backup sharepoint in IIS 7, and I am becoming more frustrated. Everywhere I look I am reassured that backups can be done using APPCMD, but that's just the metabase!! Sharepoint has to be able to backup the configuration files for the web sites because metabases are server specific, they cannot be restored to other servers. If sharepoint could only backup the metabase data for its web applications, then how is it possible to restore sharepoint to a different server? It's not. Therefore either it can't be restored to different servers (because it has to backup the metabase, not the configuration files), or it can be restored to a different server, and therefore, somehow, sharepoint is backing up the configuration files.

So which will it be?

Again, how do I backup individual configuration files in IIS 7?

Further, for those of you (like me) want to be able to do backup/restore in the GUI, someone has created a "module" (because IIS 7 has become "modularized") that adds backup-restore to the console. Here are a few links to get you started:

The blog post I prefer to help me set it up:
http://blogs.msdn.com/rakkimk/archive/2007/11/04/iis7-backup-restore-ui-module.aspx

THe IIS.net entry that backs it up and gives you the download:
http://www.iis.net/downloads/default.aspx?tabid=34&i=1552&g=6

2 comments:

iisguy (brett hill) said...

Hey there.
I can help here.
In IIS 7, the "metabase" is applicationhost.config. APPCMD backup that file, plus other related files to IIS config inlcuding the config file for the IIS Manager. In addition, backups are made as needed every 2 minutes automatically.

Now, is applicationhost.config server specific? It is, but not in the same was as metabase.xml. There are encryption keys used in applicationhost.config that must be server specific. Otherwise, if you have a password for a worker process identity or virtual directory that belongs to a user account, that password could be decrypted by any IIS 7 server which would be an unacceptable security scenario.

To export applicationhost.config so that it can be imported to another server, use the Shared Hosting feature. This will export the appropriate server keys and applcationhost.config to specified location in an encrypted form. You can then import these on another server as if you configuring shared hosting, but in this case, you are simply telling the target server to use a new appliactionhost.config. You must provide the password when doing this so the keys can be properly decrypted and imported.
-iisguy

Callahan said...

Woo hoo, I love the internet! Thanks Brett, that was sort of thing I was looking for. I need to be sure I can truly do all the disaster recovery I can with WSS 3 on 2003 before I even consider really looking seriously at 2008.

With WSS it doesn't do to downgrade functionality, especially with something as important as disaster recovery.

Now, on to testing your instructions to be sure I can actually do them without a hitch. ; ) Thanks again.