I no longer work at Microsoft, so please don't bother leaving a comment here or trying to contact me through my MSDN blog.
You can find my new blog at http://www.technologytoolbox.com/blog/jjameson. My new site also provides copies of all posts from my MSDN blog.
In my previous post, I provided an overview of the process of upgrading from TFS 2008 (and Windows SharePoint Services v3) to TFS 2010 (and SharePoint Server 2010). In this post, I provide more details about the upgrade process.
Note that if you are not upgrading, but rather installing a new instance of TFS 2010 and SharePoint Server 2010, you can still follow the installation steps below (supplementing steps from the TFS installation guide where appropriate).
The process below assumes the TFS environment is comprised of at least two servers. The "data tier" only runs SQL Server (Database Engine and Analysis Services), while the "application tier" runs essentially everything else (i.e. TFS, SharePoint Server 2010, and Reporting Services), with the exception of Team Foundation Build Service -- which is generally recommended to install on a separate server.
There are a number of configuration parameters that need to be determined before installing Team Foundation Server 2010 and SharePoint Server 2010. The various parameters and configuration settings for my environment are listed in the following tables.
Install Windows Server 2008 R2 according to your corporate standards. Ensure that all standard programs, such as antivirus and server monitoring utilities, are installed and configured.
To create the necessary service accounts for SharePoint Server 2010 and TFS 2010:
To create the domain groups for SharePoint Server 2010 and TFS 2010:
As prescribed in the TFS installation guide, back up all TFS data -- including the TFS databases, SharePoint databases, Reporting Services encryption key, and the TFS Web.config file.
Using the configuration steps provided in the TFS installation guide (How to: Install SQL Server 2008), install SQL Server 2008 (Database Engine and Analysis Services) on the TFS database server (BEAST). Then run Windows Update to install SQL Server 2008 Service Pack 1.
In order to install SharePoint Server 2010, you must also install SQL Server 2008 SP1 CU2 (or later):
Using the configuration steps provided in the following TechNet article, install SharePoint Server 2010 using the installation parameters specified in Table 3:
Complete the deployment procedures in the following sections:
Important Do not run the Farm Configuration Wizard (the TFS Web application and service applications will be configured in the following steps).
Adding the Central Administration site to the Local intranet zone (and using the default settings for this zone) enables single sign-on when accessing the site. This is discussed in more detail in the following blog post:
Append C:\Program Files\Common Files\Microsoft Shared\web server extensions\14\BIN to the PATH environment variable (in order to run stsadm.exe from various folder locations without having to specify the full path).
To add the SharePoint administrators group to the local WSS_ADMIN_WPG group, on the SharePoint server:
To add the SharePoint administrators group to the database role, on the database server:
Using the configuration steps provided in the following TechNet article, configure the outgoing e-mail settings for SharePoint using the values specified in Table 4:
Using the configuration steps provided in the following TechNet article, create a new Web application using the configuration settings specified in Table 5:
Note that the SharePoint Central Administration v4 Web application listed in Table 5 was already created by the SharePoint Products Configuration Wizard.
In order to avoid errors in the Windows event log (e.g. Event ID 10016), grant the WSS_ADMIN_WPG and WSS_WPG group appropriate permissions on the IIS WAMREG admin Service, as described in KB 920783. This is discussed in more detail in the following blog post:
In order to avoid errors in the Windows event log (e.g. Source: SharePoint Foundation, Event ID: 7043), edit the TaxonomyPicker.ascx file to fix the assembly specified in the Control directive.
To fix the TaxonomyPicker.ascx file:
Update (2011-04-14) The TaxonomyPicker.ascx file is fundamentally broken in SharePoint 2010. Instead of trying to fix the assembly name, just rename the file (since it apparently isn't used by SharePoint).
In order to avoid errors in the Windows event log (e.g. Source: SharePoint Foundation, Event ID: 7043), rename the out-of-the-box TaxonomyPicker.ascx file.
Important This task must be completed on each SharePoint server in the farm.
To rename the TaxonomyPicker.ascx file:
Note Changing the file extension causes the problematic file to be skipped by ASP.NET when compiling the controls in the folder.
Using the configuration steps provided in the TFS installation guide (How to: Install SQL Server 2008), install Reporting Services on the TFS application server (CYCLOPS) using the configuration settings specified in Table 6.
Run Windows Update on the TFS application server (CYCLOPS) to install the recommended patches (including SQL Server 2008 SP1 -- for Reporting Services) and, if necessary, reboot the server.
If upgrading to TFS 2010 from a previous version, skip this step (Reporting Services is configured later when restoring data).
If performing a new installation of TFS 2010 (not upgrading from a previous version), then use the configuration steps provided in the TFS installation guide to configure Reporting Services. Verify the Reporting Services configuration has been restored successfully by browsing to the Report Manager URL (e.g. http://cyclops/Reports).
The steps for configurating SharePoint Server 2010 for TFS dashboards are provided in following blog post:
Note that the blog post is based on the Beta 2 version of SharePoint Server 2010 and there were a few changes in the RTM version.
To start the Excel Calculation Services and Secure Store Service in SharePoint Server 2010:
To avoid warnings before refreshing external data in Excel Services:
To configure the Secure Store Service for TFS dashboards:
To set credentials for the TFS target application:
To add the TFS service account to the SharePoint Farm Administrators group:
If necessary, restore the TFS and SharePoint databases from the backups taken at the beginning of the upgrade process.
To connect to the existing ReportServer and ReportServerTempDB databases on the TFS database server:
To verify that the Reporting Services configuration has been restored successfully, browse to the Report Manager URL (e.g. http://cyclops/Reports) to confirm the TFS reports appear as expected.
You may encounter the following error:
The feature: "Scale-out deployment" is not supported in this edition of Reporting Services. (rsOperationNotSupported)
To resolve this error, remove the duplicate server using one of the following methods:
Confirm that the error no longer occurs when browsing to the Report Manager URL and the TFS reports appear as expected.
Attach the content database with the existing TFS project sites (from the previous version of SharePoint) to the new SharePoint farm.
To attach the SharePoint content database by using Windows Powershell:
More information on attaching SharePoint content databases is provided in the following TechNet article:
Note that if you browse to a TFS project site at this point, an error is displayed on the home page in the Remaining Work Web Part, as shown below. This occurs because the TFS extensions for SharePoint have not been installed yet.
There are also a couple of other issues with the upgraded TFS project site:
To reset the home page for a TFS project site:
Tip If you need to do this for a number of sites, you should consider using PowerShell instead, as described in the following blog post: Use PowerShell to "Reset to Site Definition" in SharePoint Server 2010 http://blogs.msdn.com/jjameson/archive/2010/05/18/use-powershell-to-reset-to-site-definition-in-sharepoint-server-2010.aspx/
To remove obolete links from the top link bar of a TFS project site:
Using the steps provided in the TFS installation guide (How to: Install Team Foundation Server), install TFS on the application server (CYCLOPS).
Using the steps provided in the TFS installation guide (How to: Upgrade Team Foundation Server Using the Team Foundation Server Configuration Tool), upgrade TFS using the parameters specified in Table 8.
Browse to one of the upgraded TFS project sites to confirm the Remaining Work Web Part on the home page renders as expected (now that the TFS extensions for SharePoint have been installed).
Note that a different error may be shown int the Remaining Work Web Part:
Reporting Services Error An error has occurred during report processing. (rsProcessingAborted) Get Online HelpQuery execution failed for dataset 'DefaultIterationParam'. (rsErrorExecutingCommand) Get Online HelpFor more information about this error navigate to the report server on the local server machine, or enable remote errors SQL Server Reporting Services
This error typically occurs when the TFS data warehouse (i.e. the OLAP cube) has not yet been processed. Wait for the warehouse database to be updated.
Refer to the following blog post for some helpful reports that display details about TFS warehouse jobs:
Once the warehouse database has been updated, an upgraded TFS project site should appear similar to the following:
Tip To significantly improve the appearance of the upgraded TFS project home page, edit the Remaining Work Web Part and set the Height to 600 pixels and the Width to 900 pixels.
For more information on updating a team project, refer to the following MSDN article:
There appears to be a bug in SharePoint Server 2010 when the service account for the Web application is different from the service account for the service applications (e.g. Excel Calculation Services and the Secure Store Service). This is discussed in more detail in the following blog post:
To avoid this error, add the the second service account to the underlying content databases. On the database server:
Update (2011-04-14) I should have updated this post long ago based on the comment added by "todh2" regarding granting access to the database. Instead of using SQL Server Management Studio to configure permissions on the content database for the service account, use a little PowerShell to invoke the SPWebApplication.GrantAccessToProcessIdentity method: Add-PSSnapin Microsoft.SharePoint.PowerShell -EA 0 $webApp = Get-SPWebApplication "http://cyclops" $webApp.GrantAccessToProcessIdentity("TECHTOOLBOX\svc-spserviceapp")
I should have updated this post long ago based on the comment added by "todh2" regarding granting access to the database. Instead of using SQL Server Management Studio to configure permissions on the content database for the service account, use a little PowerShell to invoke the SPWebApplication.GrantAccessToProcessIdentity method:
Add-PSSnapin Microsoft.SharePoint.PowerShell -EA 0 $webApp = Get-SPWebApplication "http://cyclops" $webApp.GrantAccessToProcessIdentity("TECHTOOLBOX\svc-spserviceapp")
Using the configuration steps provided in the TFS installation guide (Configure the Enterprise Application Definition), configure the Secure Store target application for TFS dashboards using the Target Application ID specified in Table 7.
In order to create a new TFS project, you must install either Team Explorer 2010 or Visual Studio 2010. If you want to be able to create new team projects (or browse existing projects) directly from the TFS application server, install Team Explorer 2010.
Important If you need to access TFS 2010 from a VSTS 2008 client (for example, to continue to use the source control integration features in Expression Web 3), you must download and install an update: Visual Studio Team System 2008 Service Pack 1 Forward Compatibility Update for Team Foundation Server 2010 (Installer) http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=cf13ea45-d17b-4edc-8e6c-6c5b208ec54d Refer to KB 974558 for more information on the compatibility update.
If you need to access TFS 2010 from a VSTS 2008 client (for example, to continue to use the source control integration features in Expression Web 3), you must download and install an update:
Refer to KB 974558 for more information on the compatibility update.
To connect to the upgraded TFS instance, you need to change the URL specified in Visual Studio from the TFS 2008 format (e.g. http://cyclops:8080) to the TFS 2010 format (e.g. http://cyclops:8080/tfs).
If connecting from a Visual Studio 2008 client (with the compatibility update installed), you must also specify the TFS project collection in the URL (e.g. http://cyclops:8080/tfs/DefaultCollection).
To verify the TFS upgrade, create a new team project in TFS (for example, a new project named Test) using the MSF for Agile Software Development v5.0 process template.
Note In order to create a new team project (with the default project options) using Team Explorer on a server that hosts SharePoint Server 2010 and SQL Server Reporting Services, you need to run Visual Studio as an administrator.
For more information on creating a new TFS project, refer to the following:
To enable additional check-in policies and other access additional tools (TFS 2010 Best Practices Analyzer), download and install the new version of the Visual Studio Power Tools for TFS 2010:
Using the steps provided in the TFS installation guide (How to: Install Team Foundation Build Service), install the Team Foundation Build Service on the build server (DAZZLER) using the parameters specified in Table 9.