This blog gives you the step by step actions required for the Migration upgrade from Team Foundation Server 2012 to 2013.
> Prerequisites: (IMPORTANT)
Make sure you have appropriate accounts with permissions for SQL, SharePoint, TFS and Machine level Admin privileges on both the servers.
- You must be an Administrator on the Server.
- The Account must have Sysadmin privilege in SQL Server.
- Must be a part of the Farm Administrator’s group in SharePoint.
A detailed information about this can be found here.
Back up all the databases from TFS 2012.
Make sure you stop all TFS services, using the TFSServiceControl.exe quiesce command. More info here.
Databases to backup,
- The Configuration Database (For instance, Tfs_Configuration)
- The Collection Database(s) (For instance, Tfs_DefaultCollection)
- The Warehouse Database* (For instance, Tfs_Warehouse)
- The Analysis Database* (For instance, Tfs_Analysis)
- Report Server Databases* (For instance, ReportServer and ReportServerTempDB)
- SharePoint Content Databases** (For instance, WSS_Content)
* If you have configured Reporting in TFS 2012
** If you have configured SharePoint in TFS 2012
Also, you have to back up the Encryption keys of ReportServer database.
In the new Server,
- Install the TFS2013 Binaries.
- Install SQL Server 2012 (Enterprise/Standard) with SP1
- For a step by step instructions on how to install SQL Server for TFS, refer here.
- Install a compatible version of SharePoint (Foundation/Standard/Enterprise)
Note: Configuration fails with SQL Server 2012 RTM. You need SP1 update installed.
> Step 1: Restoring Databases.
On the new server, using the SQL Server Management Studio, Connect to the Database engine and restore all the databases (Configuration, Collection(s), SharePoint Content Warehouse and Reporting). Also, connect to the Analysis Engine and restore the Analysis Database.
If you have Reports configured and want to do the same in 2013, go to Step 2, else skip it.
> Step 2: Configure Reporting.
Click on Database on the left pane and click on Change Database.
Choose an existing report server database and click on next.
Enter the credentials and click on next.
Select ReportServer database and continue to next. Review and complete the wizard.
Now, you’ll have to restore the Encryption key. To do that Click on Encryption Keys on the left pane and click on Restore.
Specify the file and enter the password you used to back up the encryption key and click on OK.
Go to Report Manager URL, and Click on the URLs to see if you are able to successfully browse through the reports.
> Step 3: Install and Configure SharePoint.
Install a compatible version of SharePoint and run the SharePoint Products Configuration Wizard.
To check compatible versions, refer to the Team Foundation Server 2013 Installation Guide, available here.
Click on Next.
Configuring a new farm would require reset of some services. Confirm by clicking on Yes.
Select Create a new server farm and click on Next.
Enter the Database Server and give a name for the configuration Database. Specify the service account that has the permissions to access that database server.
The recent versions of SharePoint would ask for a passphrase to secure the farm configuration data. Enter a passphrase.
Click on Specify Port Number and give “17012”. TFS usually uses this port for SharePoint. You can however give another unused port number too.
Select NTLM for default security settings.
Review and complete the configuration wizard.
Now that we’ve configured SharePoint, go to SharePoint Central Admin page, give the admin credentials and create a new web application for TFS. It will automatically create a new content database for you.
If you want to restore the content database from the previous version, say SharePoint 2010, you must first upgrade the content database and attach it to the web application.
- First, Click on Application Management -> Manage Content Databases.
Select the web application you created for TFS and remove that content database.
- Upgrade and Attach the old content database by using the Mount-SPContentDatabase. Example,
Mount-SPContentDatabase “MyDatabase” -DatabaseServer "MyServer" -WebApplication http://sitename
(More information on that command, here.)
> Step 4: Configure Team Foundation Server.
Once we’ve restored all the databases and the encryption key and/or configured reporting, we are all set to upgrade TFS to the latest version.
Start Team Foundation Administration Console and Click on Application tier.
Click on Configure Installed Features and choose Upgrade.
Enter the SQL Server/Instance name and Click on list available databases.
Confirm that you have taken backup and click on next (Yes, taking a backup is that important)
Choose the Account and Authentication Method.
Select the Configure Reporting for use with Team Foundation Server and click on next.
Note: If your earlier deployment was not using Reporting Service then you would not be able to add Reporting Service during the upgrade (this option would be disabled). You can configure Reporting Service with TFS later on after the upgrade is complete.
Give the Reporting Services Instance name and Click on Populate URLs to populate the Report Server and Report Manager URLs. Click on next.
Since we are configuring with Reports, we need to specify the Warehouse database. Enter the New SQL Instance that hosts the Warehouse database, do a Test and Click on List Available Databases. Select Tfs_Warehouse and click on Next.
In the next screen, Input the New Analysis Services Instance, do a Test and Click on Next.
Note: If you’ve restored the Analysis Database (Tfs_Analysis) from the previous instance, TFS will automatically identify and use the same.
Enter the Report Reader account Credentials, do a Test and click on Next.
Check Configure SharePoint Products for Use with Team Foundation Server. Click on Next.
Note: This is for Single Server Configuration, meaning SharePoint is installed on the same server as TFS.
Note: If your earlier deployment was not using SharePoint then you would not be able to add SharePoint during the upgrade (this option would be disabled). You can configure SharePoint with TFS later on after the upgrade is complete.
In this screen, make sure you point to the correct SharePoint farm. Click on Test to test out the connection to the server. In our case, this is a Single-Server deployment. We’ve configured SharePoint manually, and created a web application for TFS.
Make sure all the Readiness Checks are passed without any errors. Click on Configure.
Now, the basic TFS Configuration is completed successfully. Click on Next to initiate the Project Collection(s) upgrade.
That’s it. Project Collections are now upgraded and attached.
Click on next to review a summary and close this wizard.
We are almost done. Notice that in the summary of TFS Administration Console, we still see the old server URL.
This is very important.
We need to change this to reflect the new server using the Change URLs.
Do a test on both the URLs and Click on OK.
Now, try browsing the Notification URL to see if you are able to view the web access without any errors.
Next, Click on the Team Project Collections in the left pane, Select your Collection(s) and click on Team Projects. See if you have the projects listed.
Under SharePoint site, check if the URL points to the correct location, if not, Click on Edit Default Site Location and edit it.
See if the URL under Reports Folder points to the correct location, if not, Click on Edit Default Folder Location and edit it.
Next, Click on Reporting in the left pane and see if the configurations are saved and jobs are started.
> Step 5: Configuring Extensions for SharePoint (Only when SharePoint is on a different server)
If you’ve configured SharePoint on a different server, you need to add Extensions for SharePoint products manually.
First you need to install Remote SharePoint Extensions on the server available as part of the TFS installation media. Run the configuration wizard for Extensions for SharePoint. For a detailed blog on how to do that click here.
That’s it. With that TFS is configured correctly.
As a final step, install Team Explorer, Connect to the Team Foundation Server and create a new Team Project. See if it creates properly with Reports and a SharePoint site.
Now, your new TFS 2013 is up and running, with upgraded collections.
Content created by: Manigandan Balachandran
Content reviewed by: Romit Gulati