One of the most common problems that users encounter is how do I upgrade TFS 2005 to TFS 2008 and change servers at the same time.

 

Unfortunately, it is not possible to simultaneously upgrade and move in one fell swoop. So, in order to achieve this behavior you have three options: (1) upgrade your old server, then (2) move; (1) move, then (2) upgrade your new server; or (1) move to an intermediate machine, (2) upgrade the intermediate machine, and (3) move to the final machine. There are tradeoffs to all three.

 

The safest route is to (1) move to your new server, then (2) upgrade your new server to TFS 2008. This is safer because if something fails in the move/upgrade process, then your original server is still online.

 

Given that the “(1) move, (2) upgrade” path is safer you should take this route whenever possible; however, there are times when you will need to (1) upgrade your old server, then (2) move to the new server. The most common such time is when you also plan to upgrade to SQL 2008 or if your new machine uses Windows 2008. Since TFS 2005 doesn’t support either SQL 2008 or Windows 2008. You will first  (1) upgrade your old server to TFS 2008 SP1, then (2) move to new hardware. As mentioned above, the primary drawback to this approach is that if your upgrade/move fails, then your original server will be down.

 

In the third option, you (1) move to an intermediate machine, (2) upgrade the intermediate machine, and (3) move to the final machine. This approach will take longer (and, requires an extra box), but if you cannot risk your server going down, this may be the best option. 

 

Here are the steps for the above operations

 

To Summarize

Actions

Reason

(1) Move, (2) Upgrade

Safest, only needs two machines

(1) Upgrade, (2) Move

Less Safe, only needs two machines, new machine must start out at TFS 2008

(1) Move, (2) Upgrade, (3) Move

Safer that “(1) Upgrade, (2) Move”, time consuming, needs three machines, final machine must start out at TFS 2008

 

Actions:

 

(1) Move, (2) Upgrade

1.       Install TFS 2005 on your new server ( The TFS 2005 installation guide can be downloaded here: http://www.microsoft.com/downloads/details.aspx?familyid=e54bf6ff-026b-43a4-ade4-a690388f310e&displaylang=en )

2.       Move over to your new server ( Documentation here: http://msdn.microsoft.com/en-us/library/ms404869(VS.80).aspx )

3.       Upgrade your new server to TFS 2008. ( You can find documentation on this under the section “Upgrading Your Team Foundation Server” http://www.microsoft.com/downloads/details.aspx?FamilyID=FF12844F-398C-4FE9-8B0D-9E84181D9923&displaylang=en )

 

(1) Upgrade, (2) Move

1.       Upgrade your old server to TFS 2008. ( You can find documentation on this under the section “Upgrading Your Team Foundation Server” in the TFS 2008 installation guide http://www.microsoft.com/downloads/details.aspx?FamilyID=FF12844F-398C-4FE9-8B0D-9E84181D9923&displaylang=en )

2.       If necessary, apply the TFS 2008 SP1 patch to the old server (http://www.microsoft.com/downloads/details.aspx?FamilyId=9E40A5B6-DA41-43A2-A06D-3CEE196BFE3D&displaylang=en )

3.       Install TFS 2008 on your new server ( The TFS 2008 installation guide is given in the above link)

a.       If you are using SQL 2008, then you will need to use the integrated install of TFS 2008 SP1 (Given in the installation guide under the section “How To: Integrate the Installation of Team Foundation Server and Service Pack 1.”)

b.      If you are using SQL 2008 SP1, then you will need to use the following KB (http://support.microsoft.com/kb/969985) along with using the integrated install of TFS 2008 SP1 (Given in the installation guide under the section “How To: Integrate the Installation of Team Foundation Server and Service Pack 1.”)

4.       Move over to your new server ( Documentation here: http://msdn.microsoft.com/en-us/library/ms404869.aspx )

 

(1) Move, (2) Upgrade, (3) Move

1.       Install TFS 2005 on your intermediate server ( The TFS 2005 installation guide can be downloaded here: http://www.microsoft.com/downloads/details.aspx?familyid=e54bf6ff-026b-43a4-ade4-a690388f310e&displaylang=en )

2.       Move over to your intermediate server ( Documentation here: http://msdn.microsoft.com/en-us/library/ms404869(VS.80).aspx )

3.       Upgrade your intermediate server to TFS 2008. ( You can find documentation on this under the section “Upgrading Your Team Foundation Server” http://www.microsoft.com/downloads/details.aspx?FamilyID=FF12844F-398C-4FE9-8B0D-9E84181D9923&displaylang=en )

4.       If necessary, apply the TFS 2008 SP1 patch to the intermediate server (http://www.microsoft.com/downloads/details.aspx?FamilyId=9E40A5B6-DA41-43A2-A06D-3CEE196BFE3D&displaylang=en )

5.       Install TFS 2008 on your new server ( The TFS 2008 installation guide is given in the above link.)

a.       If you are using SQL 2008, then you will need to use the integrated install of TFS 2008 SP1 (Given in the installation guide under the section “How To: Integrate the Installation of Team Foundation Server and Service Pack 1.”)

b.      If you are using SQL 2008 SP1, then you will need to use the following KB (http://support.microsoft.com/kb/969985) along with using the integrated install of TFS 2008 SP1 (Given in the installation guide under the section “How To: Integrate the Installation of Team Foundation Server and Service Pack 1.”)

6.       Move over to your new server ( Documentation here: http://msdn.microsoft.com/en-us/library/ms404869.aspx )

 

 

You can find additional documentation about moving your server in the following link:

http://blogs.msdn.com/tfsao/archive/2009/02/20/server-change-we-can-believe-in.aspx

 

--Aaron