How to: Move Your Team Foundation Server from One Environment to Another

In contrast to restore-based moves, environment-based moves do not involve moving Team Foundation Server data from one set of hardware to another. Instead, an environment-based move involves changing the environment of the Team Foundation Server itself. The most common environment-based move scenario is moving from a Team Foundation Server deployment in a workgroup to a Team Foundation Server deployment in a domain. The procedures in the following section specifically support this scenario.

Before you move your Team Foundation Server deployment, you must plan and prepare for the environment-based move. There are many steps that must be completed in an environment-based move, and some of them are linked to through this topic. Read through and consider whether you want to print all the steps that are required before you start the move. To complete an environment-based move, you must be able to perform steps such as stopping and starting services, re-creating or migrating user accounts and service accounts, and reconfiguring your servers.

Required Permissions

To complete these procedures, you must be a member of the Administrators group on the old and new servers and a member of the Team Foundation Administrators group, and you must have permissions to join a server to the Active Directory domain. If you are creating new domain security groups, you must have appropriate domain permissions in the Active Directory domain.

To stop services on Team Foundation Server

  1. Click Start, click Administrative Tools, click Services, select the TFSServerScheduler service, and then click Stop, if not already stopped.

  2. Select the SharePoint Timer Service and then click Stop.

    Important

    To move user accounts and service accounts in an environment-based move, Team Foundation Server must be in a stopped state.

  3. Click Start, click Administrative Tools, and then click Internet Information Services (IIS) Manager.

  4. In the Explorer pane, expand the Application Pools node, right-click TFS App Pool, and then click Stop.

  5. In the Explorer pane, under the Application Pools node, right-click Report Server, and then click Stop.

  6. Click Start, click Programs, click Microsoft SQL Server 2005, click Configuration Tools, and then click Reporting Services Configuration.

  7. In Report Server Installation Instance Selection, make sure that the computer name is the name of the Team Foundation Server and that the instance name is MSSQLSERVER, and then click Connect.

  8. In the Explorer pane, click Server Status. In the Report Server Status pane, in Instance Properties, click Stop.

To join the Team Foundation Server to a domain

  1. On the Team Foundation Server, click Start, right-click My Computer, and then click Properties.

  2. In System Properties, click the Computer Name tab, and then click Change.

  3. In Computer Name Changes, in Member of, select Domain. Type the name of the domain you want the Team Foundation Server to join, and then click OK. If prompted to provide the user name and password of an account that has permissions to join this computer to the domain, provide the appropriate credentials, and then click OK.

  4. Restart the Team Foundation Server for the domain change to take effect.

To move user accounts and service accounts

  1. On the Team Foundation server, click Start, click Run, type MMC, and then click OK.

  2. On the File menu of the Console window, click Add/Remove Snap-in.

  3. On the Add/Remove Snap-in dialog box, click Add.

  4. On the Add Standalone Snap-in dialog box, double-click Group Policy Object Editor in the Available Standalone Snap-ins pane.

    The Group Policy Wizard starts.

  5. On the Select Group Policy Object page, click Browse.

  6. On the Browse for a Group Policy Object dialog box, locate the policy object you want to modify, and then click OK.

  7. Click Finish on the Select Group Policy Object page.

  8. On the Windows taskbar, click Start, point to Administrative Tools, and then click Local Security Policy.

  9. Expand Local Policies in the Explorer pane of the Local Security Settings window.

  10. Click User Rights Assignment.

  11. Double-click Log on as a service on the viewing pane.

  12. Click Add User or Group on the Log on as a service Properties dialog box.

  13. Type the name of the new service account in the Enter the object names to select box.

  14. Click OK.

  15. Open a Command Prompt window and connect to drive**:\%ProgramFiles%\Microsoft Visual Studio 2005 Team Foundation Server\Tools**.

    Note

    When you move accounts from one environment to another, the account names created on the new Team Foundation Server deployment must match the names of the accounts from the original Team Foundation Server deployment. This includes both user and service accounts. These account names are used to identify and update the Team Foundation Server database records as part of the move process.

  16. At the command line, type the following command:

    TfsAdminUtil ChangeAccount OldComputerName\OldTFSServiceAccount NewDomain\NewTFSServiceAccount NewPassword

    Note

    Ignore any warnings about the service account not existing or being a member of the data warehouse role.

  17. At the command line, type the following command:

    TfsAdminUtil ChangeAccount OldComputerName\OldTFSReportingServiceAccount NewDomain\NewTFSReportingServiceAccount NewPassword

    Note

    Ignore any warnings about the service account not being a member of the data warehouse role or reminding you to add the account to the service accounts group.

  18. Open a Command Prompt window and connect to drive:\%ProgramFiles%\Microsoft Visual Studio 2005 Team Foundation Server\Tools.

  19. At the command line, type the following command:

    TfsAdminUtil Sid

  20. Note or print the list of users generated by the TFSAdminUtil Sid command. This is the list of the users you might need to re-create on the Team Foundation Server in its new domain as domain accounts, if you want to use domain accounts instead of local accounts.

  21. On the Team Foundation Server, open Active Directory and create domain accounts to replace the old local computer accounts in the workgroup deployment of Team Foundation Server. For more information about how to create accounts, see the Microsoft Web site (https://go.microsoft.com/fwlink/?LinkId=63542).

  22. Open a Command Prompt window and connect to drive:\%ProgramFiles%\Microsoft Visual Studio 2005 Team Foundation Server\Tools.

  23. At the command line, type the following command:

    TfsAdminUtil Sid /Change OldComputerName NewDomain

    Note

    This command will update all user accounts on the Team Foundation Server that uses SIDs for the new domain. For more information, see Sid Command.

    Important

    When Team Foundation Server is restarted, you might have to wait for up to an hour before the Group Security Service will re-synchronize with Active Directory to update user account information in the TFSIntegration database. Do not put Team Foundation Server back into production before this synchronization is finished.

To restart Reporting Services and update connection information

  1. Click Start, click Administrative Tools, and then click Internet Information Services (IIS) Manager.

  2. In the Explorer pane, under the Application Pools node, right-click Report Server, and then click Start.

  3. Click Start, click Programs, click Microsoft SQL Server 2005, click Configuration Tools, and then click Reporting Services Configuration.

  4. In Report Server Installation Instance Selection, make sure that the computer name is the name of the Team Foundation Server in the domain, and that the instance name is MSSQLSERVER, and then click Connect.

  5. In the Explorer pane, click Server Status. In the Report Server Status pane, in Instance Properties, click Start.

  6. Open Internet Explorer and connect to https://localhost/reports. In Contents, click TfsReportDS.

  7. In Connection string, update the Data source parameter with the full Team Foundation Server name that includes the new domain. In Connect using, select Credentials stored securely in the report. Update the user name and password to reflect the new reporting services service account, and then click Apply.

  8. Under SQL Server Reporting Services, click Home.

  9. In Contents, click TfsOlapReportsDS.

  10. In Connection string, update the Data source parameter with the new Team Foundation data-tier server name. In Connect using, select Credentials stored securely in the report. Update the user name and password to reflect the new reporting services service account, and then click Apply.

To restart Team Foundation Server services

  1. Click Start, click Administrative Tools, and then click Internet Information Services (IIS) Manager.

  2. In the Explorer pane, expand the Application Pools node, right-click TFS App Pool, and then click Start.

  3. Click Start, click Administrative Tools, click Services, select the TFSServerScheduler service, and then click Start, if not already started.

  4. Select the SharePoint Timer Service and then click Start.

Next Steps

Depending on your Team Foundation deployment, you might have to update TeamBuild.proj files with the new settings. Additionally, you might have to migrate Windows SharePoint Services and Reporting Services users and groups to the corresponding users and groups in the Team Foundation Server's domain. Finally, you will have to re-create any query-bound reports or documents, as pre-existing queries will not be able to connect to your Team Foundation Server deployment in the domain.

To update build computers with the new domain settings

  1. If you want to use an existing Team Foundation Build computer in your new deployment, you must update the settings for the new Team Foundation Build computer and provide a new drop location in the TeamBuild.proj file. For more information, see Administering Team Foundation Build.

  2. After you have updated the build computers to use the new settings, test the build settings by starting a test build.

To migrate Windows SharePoint Services and Reporting Services groups and users

  • Unfortunately there are currently no tools to automatically change Windows SharePoint Services and Reporting Services users and groups and their role memberships from local accounts (used in workgroups) to domain accounts. Although the local accounts will still work as local accounts, you might want to take advantage of the flexibility and management of Active Directory groups. Both Windows SharePoint Services and SQL Report Server will show the users and groups and their role memberships for each site or report folder. You can populate Windows SharePoint Services and Reporting Services to use new or existing Active Directory groups depending on your new deployment.

To create Microsoft Project or Microsoft Excel reports

  • As soon as you have finished moving your Team Foundation Server deployment to the domain, you will have to re-create any Microsoft Project or Microsoft Excel files that connect to Team Foundation Server. For more information, see Team Foundation Server Reporting.

See Also

Tasks

How to: Move Your Team Foundation Server from One Hardware Configuration to Another
How to: Move from a Single-Server to a Dual-Server Deployment

Concepts

Team Foundation Server Move Types
Application-Tier Server Requirements for Team Foundation
Data-Tier Server Requirements for Team Foundation
Managing Team Foundation Server in a Workgroup

Other Resources

Managing Team Foundation Server in an Active Directory Domain