Installing TFS Beta 3

I alluded to the fact that it took us a couple of tries to get the TFS Beta 3 install right in a prior post.  Here’s the full story…

If at first you don’t succeed…

To begin, we chose to implement a dual-server deployment, because we anticipated the most area for feedback in this scenario.  We also chose to isolate TFS on a VLAN in our lab, because it seemed like the prudent thing to do with pre-release software.  The dual-server deployment requires Active Directory.  So, the actual servers looked like this:

  • Active Directory (AD)
  • TFS Data Tier (DT)
  • TFS Application Tier (AT)

The installation procedure is very well documented.  At a high level, it looks like this:

  • Create service accounts and grant permissions
  • Install IIS 6.0 on DT
  • Install SQL Server 2005 on DT
  • Install TFS databases on DT
  • Install IIS 6.0 on AT
  • Install Windows SharePoint Services (WSS) on AT
  • Install TFS services on AT
  • Install Team Explorer on AT
  • Using Team Explorer, add users to the TFS Admin group

There were no major hang-ups in the process.  The guys in our lab were able to build the servers in a few days.  (They’re busy!)  The only feedback I received from them was this:

  • In Beta 2, the installation checklists included instructions to “verify the installation.”  In the Beta3 help file, the instructions are gone.  After doing a little digging, I think the guys are referring to a couple of bullets in the Beta2 help file that describe how to verify that SQL Server and the Reporting services are running.  In Beta3, the help file references the SQL Server Books Online for this content.
  • The topic “To add a user to the Team Foundation Administrators security group using the TFS Group Security Client Tool (GSSUTIL.EXE)” is misleading since the VS SDK is no longer installed with Beta 3.  I verified that the file is not installed on either server.

At this point, we had a fully functional, albeit empty, TFS Beta 3 server running in our lab.  Unfortunately, once we tried to migrate data from our internal work item tracking and source control servers, we realized that the migration would be a whole lot easier if both the source and destination servers were on the same network.  (Doh!)  Rather than moving the existing servers to the corporate network, we installed TFS a second time.

Try again...

This time, I wanted to get a better understanding of the process.  So, the lab paved a couple of servers for me, and I took it from there.  Since the servers were on the corporate network this time, I used the corporate Active Directory server.  Just as the lab did before me, I followed the Dual-Server Deployment Checklist in the installation guide (TFSInstall.chm).  Not being a sysadmin by trade, I did hit a couple of snags:

  • After successfully installing SQL Server and the TFS Data Tier on one server, the TFS Application Tier installation failed when it was unable to detect the SQL Reporting Services web site running on the data tier server.  This was a blocking issue for me.  But, a more experienced sysadmin would have known to check that ASP.NET was enabled.  Turns out it wasn’t.  So, turning it on allowed the install proceeded normally.  (If I had taken the time to read the “verify” steps in SQL Server Books Online, I might not have hit this problem.)
  • The only other issue I had was with the service accounts.  The documentation clearly explains that you will need three service accounts: one administrator account used for setting up TFS, and two non-administrator accounts for running the TFS and reporting services.  But, I did not have three service accounts, and creating them on the corporate network would have taken a few days.  So, I tried to use the one service account that I did have.  Unfortunately, setup prevented me from using this account multiple times.  To complete the installation, I used my account and the account of one of my coworkers until we could request real service accounts.  (No big deal, since these are not production servers.)

Again, nothing earth-shattering to write home about.  In all, I spent about a day on the installation (not counting the time to pave the servers).  But, considering the number of moving parts involved, and my lack of experience with many of them, that was pretty darn good. 

Merrily, merrily, merrily, merrily…

I am happy to report that these same two servers have been running now since early October.  We’ve moved forward successfully with work item and source code migration.  And, I am starting to play with the new build server.  I plan to install it tomorrow.  I’ll post more installation notes once I’m done.