Requirements
Team Foundation Server 2008 (TFS)
Production Application Tier (PAT)
Standby Application Tier (SAT)
Assumptions
This guide assumes that the standby application tier is already installed as per the article entitled
“Configuring a Standby Application Tier” in the TFS Installation Guide
(http://go.microsoft.com/fwlink/?LinkId=79226) and that your domain is available across multiple
sites.
Overview
This premise of this plan is that the two pairs of servers are separated to different sites and a backup
of the production databases are present at the same site as the second site. Both sites would be a
member of the same domain and that domain should have domain controllers available if Site 1
were to go offline.
For example:
Site 1
Production Application Tier
Production Data Tier
Site 2
Standby Application Tier
Backup Data Tier
In case of a disaster, the databases would be restored to the backup data tier and the DNS entry for
the production data tier would be pointed towards the hostname or IP address of the backup data
tier server in the same manner that the DNS entry for the application tier would be pointed towards
the Standby Application Tier.
Once the databases are restored, the steps to activate the standby application tier would be
followed. Once the clients have cleared their client side cache for TFS and flushed their DNS cache
you should be back up and running.
This section will walk you through the steps required to reconfigure Team Foundation Server to be in
a state to facilitate disaster recovery. This guide assumes that you have already configured a
standby application tier. If you have not yet installed Team Foundation Server, create the DNS
entries and install using them rather than the machine names then follow the following guide to
configure the data tier.
1. Use the following guide to backup the reporting services encryption key
http://msdn.microsoft.com/en-us/library/ms400729.aspx
2. Use the following guide to create a scheduled backup plan for your TFS databases
http://msdn.microsoft.com/en-us/library/ms253151.aspx
3. Ensure that the above files are available to the backup data tier in case of emergency
1. Install WSS 3.0 SP1 as per the instructions in the TFS 2008 Installation Guide but do not
configure Sharepoint at this stage as that will be done as a part of the failover process.
2. TFS Templates will be added once the server is configured
Note that you will need to disable “Internet Explorer Enhanced Security” to complete some of the
next tasks. You can do this via “Windows Components Wizards” in “Add/Remove Items” then
uncheck the “Enhanced Security for Internet Explorer” checkbox and enable it once this process is
completed.
Any command lines should be typed as copy and paste will likely cause the commands to fail.
1. Have your domain administrator change the DNS entries to point towards the backup
servers:
APPTIER -> Standby Application Tier
DATATIER -> Backup Data Tier
2. Restore the TFS databases to the backup data tier using the following guide
http://msdn.microsoft.com/en-us/library/ms252458.aspx
Do not restore WSS_Config or WSS_AdminContent, only WSS_Content and as the services are
stopped skip to the restoration procedures
3. Open a command prompt and run the following command on the SAT and BDT
ipconfig /flushdns
This will ensure the new IP addresses are used rather than the cached entries
5. Once configuration completes the Central Admin Site should be displayed and we can attach
the content database to Sharepoint to give access to the Team Portals and project document
libraries
a. Click on the “Application Management” tab then “Create or extend Web
Application”
b. Select “Create a new web application” then use the following settings:
“Use an existing IIS Web Site” and “Default Web Site”
Select NTLM
Leave the URL for the local hostname present
Select the “Team Foundation Server” application pool
Click OK
c. Click on “Application Management” then “Content Databases”
d. There should be one database listed. Click on it, scroll down and check “Remove
Content Database” then OK.
e. Open a command prompt to the following path:
C:\Program Files\Common Files\Microsoft Shared\web service extensions\12\bin”
f. Run the following command:
“stsadm.exe –o addcontentdb –url http://STANDBYAPPTIER:80 –databaseserver
DATATIERDNS –databasename WSS_Content”
g. Click on the “Operations” tab then “Alternate Access Mappings”
h. Click on “Add Internal URLs” then use the following settings:
Alternate Access Mapping Collection: Central Admin”
URL: http://APPTIERDNS:17012 (or whichever port admin uses)
Save
i. Click on “Add Internal URLs” then use the following settings:
Alternate Access Mapping Collection: Central Admin”
URL: http://APPTIERDNS:17012 (or whichever port admin uses)
Save
j. Click on “Add Internal URLs” then use the following settings then click “Save”:
Alternate Access Mapping Collection: “Default Web Site”
URL: http://APPTIERDNS:80
k. Install the “Sharepoint Extensions for Team Foundation Server” on the Standby
Application Tier
6. Open “Report Server Configuration Manager” on the Standby Application Tier to configure
Reporting Services for use with your restored databases
a. Connect to the machine hosting Reporting Services using the Report Services
Configuration Manager
b. In “Report Server Virtual Directory” and “Report Manager Virtual Directory” check
“Apply Default Settings” then “Apply”
c. In “Windows Service Identity” select “Network Service” or enter the same
credentials SSRS was running as prior to DR then click Apply
d. In “Web Service Identity” select “ReportServer” as the application pool for both
Server and Manager then click Apply
e. In “Database Setup” enter the virtual DNS name for the data tier then “Connect”,
select the “ReportServer” and “Credentials Type” of “Service Credentials” then
“Apply”
f. In “Encryption Keys” select restore, locate the backup file you created earlier then
enter the password
7. Connect to the backup data tier using SQL Server Management Studio, we will now add
rights to a number of stored procedures to the RS Exec Role to enable team project creation
a. Expand the Master database, Security, Roles and Database Roles then right click on
RSExecRole
b. Click on Securables and add the following “Extended Stored Procedures” and grant
all three “Execute” permissions:
xp_sqlagent_enum_jobs
xp_sqlagent_is_starting
xp_sqlagent_notify
1. Close Visual Studio and delete the “Cache” folder from the following path:
Application Data\Microsoft\Team Foundation\2.0\
2. “ipconfig /flushdns” on the client machine
3. Open Visual Studio
Failover Complete
After completing the steps above your instance of Team Foundation Server should be fully
operational once more.