Mirroring, Log Shipping and High Availability resources
Last week at TechReady I attended Mike Watson's and James Petrosky's talk on HA and DR scenarios. Good talk.
It reminded me of a few resources:
The best resource is "Using database mirroring with Windows SharePoint Services.
" This downloadable white paper has been updated July 9th with more complete technical information. The mirroring article "Using database mirroring (Office SharePoint Server)" was recently updated by Mark Shea. They were some syntax issues, and more was added on aliasing and the stsadm rename server command was clarified.
Mike Watson (Engineer in MS IT/MMS) does a comparative analysis on his post "Database mirroring and log shipping. Which is better?" in his next post he follows up explaining that it's true that WSS and MOSS 2007 don't support automatic failover, but can be a scripted failover. Would be great if he could post his deck and link to it.
Bill Baer, does a post which appears to be an article on Mirroring which if not mistaken is something that Mike worked on with him. SQL Server 2005 Database Mirroring and Windows SharePoint Services 3.0/Microsoft Office SharePoint Server 2007 - Part 1 (Introduction, Overview, and basics). I do recommend viewing the comments on these as well. Some interesting comments. Part 2 is on configuration.
Scot Hilier posts some thoughts on Database Mirroring in a recent post, his thoughts are similar to how I'd do it high level.
I did a post a while back on all things related to replication topics and SharePoint. As well as a post on SharePoint HA and DR. For that I recommend combing through the performance and scale topic as well as high availability.
The Sams Publishing book SharePoint Server Unleashed has a great chapter that talks high level to the topic of Planning Redundancy and Scaling the SharePoint Environment. A sample of this chapter is now online.
There is an interesting KB on log shipping that talks to connecting to the log shipped content database. "Using Microsoft Windows SharePoint Services with a content database that is configured as read-only in Microsoft SQL Server"
We still unfortunately don't have good documentation on log shipping and SharePoint. We still refer people to the 2003 Resource Kit. Look at this section "Hot Server Farm Swapping via SQL Log Shipping" in the backup chapter. There are going to be differences in the database names and we do still not recommend log shipping the config database....
For more information, see the white paper βINF: Microsoft SQL Server 2000: How to Set Up Log Shippingβ, the Microsoft Knowledge Base article 314515, and the article βLog Shipping in SQL Server 2000β there are the applicable 2005 articles as well.
Let me give you some hints on the config db... It contains servernames, web apps, web parts, features, solutions, services on server, etc... are installed on each of the servers in the farm. So changing servers without the knowledge of the config db makes it fail.
One of the better recommendations I've heard lately is about abstraction and aliasing. If the SQL server is an alias then changing the hostname to the other hostname without changing the name referred to in the config db can be done either via 1) DNS aliasing or using 2) SQL's own tools to add aliases. I also like the using the 3) host file entries, but this does require everyone know that it's done this way. Changing host file entries programatically in a flat file could be problematic, but is still scriptable. What if every server in the farm had an alias in a host entry on every other server in the farm... Interesting, but man does this take us forward or backward?
Either way, in your designs I totally recommend planning, and verification, not just once, but on a recurring schedule. Executing something like this on a monthly or bi-monthly basis is not overkill. It will keep your staff up to date with the solution and everyone can be on the top of their game.