The short answer is, you're probably looking at rebuilding the machine from scratch if you feel you need to reinstall it.
I've always preferred to do a clean install (that is reformatting the root volume). If you've followed good practice, specifically
- all your configuration is in source control, or under automatic management, then it is only a question of getting the machine up to the point your automated tools can bootstrap the rest
- your data is stored on a separate volume, or you have a current backup in another location.
Then the rebuild should be pretty straight forward, however probably time consuming.
The hard bit of a backup is the bare metal restore. Users files are, after all, just user files and can be easily backed up and restored in a wide variety of ways.
If your C: partition is small enough then I recommend using one of the many partition snapshot apps. My own favorite is Drive Snapshot (www.drivesnapshot.de), which I've used for several years, but there are several similar products out there. Drive Snapshot takes a sector level copy of a partition and (this is the impressive bit) it can copy the system partition while the server is running. If you lose the server you simply boot off a WinPE (or BartPE) CD and use Drive Snapshot to copy the snapshot back onto the disk. Snapshot can even create the partitions for you from the info stored in the snapshot. I've done this in anger, and under considerable stress, and Drive Snapshot has never let me down.
I tend to use tape for Backups where I can, as you can take the tapes off site, but I do have some servers that backup to a NAS device. Whichever the case, I have the backup script run Snapshot, then either write the snapshot file to tape and/or copy it to a NAS box. If the snapshot isn't too big I keep the last week or so copies of the daily snapshot file.
Re rsync, I use this a lot myself, but on Windows you'd be using the Cygwin rsync and this tends to hang when syncing folders with a lot (e.g. 100,000) of files. If you're syncing on a LAN there are more reliable alternatives. An app called "reconcile" is my own favourite, but then I wrote it :-) See http://www.ratsauce.co.uk/winsrc/ if you want a play. If you're syncing through a WAN link then rsync is the obvious way to do it.
Some other fairly obvious points that you probably already considered. Is if possible to upgrade the disks in the two servers to provide enough space for the servers to sync to each other? Then you could lose one server and have the remaining one take up the slack. Also note that in general you can't restore a system partition from one server onto another with different hardware and expect it to work very well. If the disk controllers are identical it will probably boot, but you'll lose the network config.
One last point (possibly more for the future) for application servers like Exchange servers I tend to use virtualisation these days. VMWare works very well on Server 2003 or of course Hyper-V is built into Server 2008. Virtual servers are very easy to backup because you just copy the files from the host server.
Best Answer
This website lists the different ways of doing it. If you have LVM that is really the best. One thing I would make sure of is that if you are running any database apps, to do a database dump of all the databases before backing up the container (ie mysqldump).