Upgrading OS and SQL on Cluster using same Hardware

  • I have read plenty of articles on how to upgrade the OS of an existing cluster. I had read many articles on how to upgrade a SQL Server instance on a cluster. I have not, however, read how to an OS and SQL upgrade simultaneously.

    Existing configuration: We have one 2-node (Active-Passive) Windows 2003 Enterprise Server (64-bit) cluster running SQL Server 2005 Standard (64-bit).

    Desired New Configuration: a 2-node (Active-Passive) Windows 2008 R2 Enterprise Server (64-bit) cluster running SQL Server 2008 R2 Standard (64-bit) with fresh installs of both the OS and SQL Server

    How is this most easily and reliably accomplished?

  • Easiest option would be to mirror your databases to another server, running SQL 2005; point any applications to the new server, and run your live environment from that server temporarily while you rebuild the cluster and test that you've got the config right. You can then mirror back across to the SQL 2008 R2 server, and upgrade to that version when you fail back. It requires more hardware, but the risk is much less in terms of getting the cluster ready for a production environment (and having time to test that it's ready).

    My question though would be why you need to upgrade the OS and SQL on the same hardware - it's a risky operation so is there something in 2008 R2 that's sufficiently compelling to justify the risk?

  • Thanks for the reply. and the reasons are company policy. They want to move everything to Windows 2008 R2 and SQL Server 2008 R2. Also, they like doing clean installs. Unfortunately, all of the budget for hardware this year is going to replacing our storage infrastructure -- which is greatly needed -- so using additional hardware is, unfortunately, out of the question.

  • Ok then, if you absolutely have to do it as an in-place upgrade, I'd recommend that you have a look at Allan Hirt's book - Pro SQL Server 2008 Failover Clustering (Apress). He has a short but useful section on this. Quick summary - there's no rolling upgrade path from a Windows 2003 cluster to a Windows 2008 cluster (and I'd guess this would include R2). There are 2 options if the OS needs to be upgraded - one involves wiping both nodes, building a new cluster, and then reattaching the databases from the shared storage - this obviously means downtime. The other is to evict one of the nodes (leaving you with a one node SQL 2005 cluster) and use this to build a new 1 node SQL 2008 cluster. You then migrate the databases from the old cluster to the new one. Once that's done, you can rebuild the other node as 2008 and attach it to the cluster.

    At the risk of teaching you to suck eggs - make sure that you check that all your applications will work with SQL 2008 R2 before you go any further! Also - get yourself a virtual cluster built, and practice the upgrade process.

    Couple of useful whitepapers:

    http://sqlcat.com/whitepapers/archive/2009/07/08/sql-server-2008-failover-clustering.aspx

    http://www.microsoft.com/downloads/en/details.aspx?FamilyID=66d3e6f5-6902-4fdd-af75-9975aea5bea7&displaylang=en

    Hope that's of some help - good luck!

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply