Wednesday, July 15, 2009

Installing Team Foundation Server 2008

The installation of TFS 2008 can be a daunting task if the right documentation is not used. This post will cover the installation of Team Foundation Server 2008 and all of its prerequisites.

To preface, this post will document a single server installation of Team Foundation Server 2008 on a Windows Server 2008 server using SQL 2008 on the backend.

Here’s the quick rundown of what will be done.
1.) Install IIS 7.0
2.) Install SQL Server 2008
3.) Install SharePoint
4.) Install Team Foundation Server 2008

*NOTE* Before the install of Team Foundation Server you must have service pack one integrated into your install media. Microsoft has outlined how to integrate SP1 into your install media here.

To save text space on each installation process, I will be simply saying where to go to install the specified software rather than doing a step-by-step tutorial.
Lets get started


Installation of IIS 7.0

Here’s a good one. To install this one, head to the Server Manager window. From there, go to install the IIS 7.0 Role (it is called Web Server (IIS) in the wizard). When you select it to be installed, you will be prompted to install two more features additionally, assuming this is a clean install. Accept the install of the two additional features and continue.
The role services that need to be installed are:
1.) HTTP Redirection
2.) ASP.NET (Add required role services as well)
3.) IIS 6 Management Compatibility
Click through the windows until IIS 7.0 is installed. Though it is not required, I always do a restart after the installation of a new role or service, just to be safe.


Installation of SQL Server 2008

Yet another exciting step (like every step in this process) is the installation of SQL Server 2008. Insert the DVD (or mount the iso) and run the setup.exe on the disk. Select the New SQL Server stand-alone installation or add features to an existing installation option under the Installation page.
Enter your license key on the window that comes up and proceed through the various prompting windows until you get to the Feature Selection screen.
The features that need to be installed are:
1.) Database Engine Services
2.) Full-Text search
3.) Analysis Services
4.) Reporting Services
5.) Management Tools – Basic
For the Instance Configuration, the Named instance field can be anything. I personally use the default instance and Instance ID for simplicity.
For Server Configuration I used the NT AUTHORITY\NETWORK SERVICE “account” for all of the services. Also make sure that SQL Server Agent starts up automatically and not manually. The other three should be automatic startup by default.
On the Database Engine page the Microsoft documentation suggests Windows Authentication. I believe that that method for authentication has it’s purposes but for my purposes, I use Mixed Mode authentication. Don’t forget to add the user(s) you want to have sysadmin access to your SQL instance. If you forget this step, you won’t be able to get into your instance unless you find a way to enable the SQL SA account without having to authenticate.
Add the users you want to have access to the analysis services on the Analysis Services Configuration page and continue.
For the Reporting Services Configuration page, select to Install, but do not configure the report server. The Team Foundation Installer will do this for you later.
For the last few pages, just click through them (make sure to check if you want Microsoft to receive usage reports from your instance). Review your install to make sure everything is as it should be and install SQL server.

Popcorn anyone?


Installation of SharePoint Products and Technologies

Before the installation of SharePoint, we need to do a prerequisite install. Head to the Server Manager and add the .NET Framework 3.0 feature. On my server instance, this was actually already installed so I didn’t need to install it. Simply make sure that you have it installed or you will run into problems later on.
Now, for the installation of SharePoint Products and Technologies.
Head to the appropriate link to download download Windows SharePoint Services 3.0 with Service Pack 2.
x86
http://www.microsoft.com/downloads/details.aspx?familyid=EF93E453-75F1-45DF-8C6F-4565E8549C2A&displaylang=en
*NOTE* The link to the x64 version of this is not listed because there is not a 64 bit version of TFS 2008.

*NOTE* If you choose to go with an alternative installation package, it must at least have service pack 1 already integrated.

Run the SharePoint.exe file to get started with the installation.
After accepting the license agreement, we find ourselves at a fork in the road. Select Advanced to do a customized install. The server type should be Web Front End. On the Feedback tab decide whether or not to share usage reports with Microsoft. Click Install Now.
After the installation has completed, Make sure the Run the SharePoint Products and Technologies Configuration Wizard now is checked and click Close.
In the Configuration Wizard, Select No, I want to create a new server farm and click Next.
For Database server type the name your database is hosted on. In the case of a single-server install of TFS, this will be the hostname of the server that you are installing SharePoint on.
*NOTE* If you chose a name for your SQL instance other than the default instance name, type <ServerName>\<InstanceName>
Choose the name of the SharePoint database or leave it default (I used default).
Input the username and password for the service account (can be the TFSService account) and click Next.
On the next page, be sure to remember the port you choose for your Central Administration web application. It can be recovered relatively easily but it’s just best to remember now. Select NTLM and click Next.
Review your settings and finalize the install.
Finally, we need to run a few command line commands.
Open a command prompt as admin and navigate to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\bin\.
First, run
stsadm.exe -o extendvs -exclusivelyusentlm -url http://<ThisServersName>:80 -ownerlogin Domain\Username1 -owneremail "admin@localhost" -sitetemplate sts -description "Default Web Site"
Domain\Username1 should be the account you want to have admin privileges on the port 80 SharePoint web application. I used mixed authentication so I gave this the service account for TFS and SQL.
Next, run
stsadm.exe -o siteowner -url http://<ThisServersName>:80 -secondarylogin Domain\Username2
In this case, Domain\Username2 represents the user you want to be your secondary administrator for your SharePoint port 80 web application.


Installation of Team Foundation Server 2008

*NOTE* Once again, Before the install of Team Foundation Server you must have service pack one integrated into your install media. Microsoft has outlined how to integrate SP1 into your install media here

Welcome to the final step in this installation process (TFS 2008 configuration will be in a different post). I won’t slow us down with any detailed intros. With that, let’s get started.
Insert your installation medium (once again, I used an iso mounted through Hyper-V). Start up the installation, agree to the TOS (if you actually do) and head on to the next screen. After clicking Next a few times, you’ll find yourself at the Team Foundation Database Server page. As I mentioned earlier in the post, I’m doing a single server install this time which means my TFS database is hosted on a local instance of SQL. The installer should fill out the local server name for you. Since we’re doing a single server install, click Next. Sit back and relax for a few minutes while the installer runs a System Health Check.
Once the health check is complete, click Next to head to the Team Foundation Server Service Account screen. Once there, specify the account you want TFS to run as. In my case I chose a domain account for access reasons. Click Next.
On the Reporting Services Data Source Account screen, input the information for the account you want TFS to run reports as. In my case, I elected to go with Use Team Foundation Server service account since my SQL reporting runs as that user. Click Next.
The installer should automatically fill in the information for you on the Windows SharePoint Services screen. In my case though, the Central Administration URL was incorrect for some reason (the port was one number off) so make sure that everything is right before continuing. Click Next.
Here we are at the Specify Alert Settings page. If you wish TFS to notify you (or anyone else) of various build events (this is configurable), check the Enable Team Foundation Alerts checkbox and fill in the information for SMTP server and From e-mail address fields. Click Next.
On the Ready to Install page, review your settings. If everything is correct, click Install.


There you have it…a fresh install of Team Foundation Server 2008.


10 comments:

  1. Thanks a lot Susan. It's good to hear I have some faithful readers out there. I have quite a few more posts to write on Team Foundation server 2008 and various other miscellaneous server administration tasks so keep reading. Also let me know if you have any questions. I'd be more than happy to help out.

    ReplyDelete
  2. SMTP server is also needed to be installed.
    1. Select Features at the left pane, and then Add Feature.
    2. Check "SMTP Server" and accept the required role services.
    3. Click OK and OK and then install.
    4. Restart the computer and then configure it via IIS 6.0 Manager.

    ReplyDelete
  3. Another suggestion:
    By default, the "Startup Type" of "SQL Server Browser" is set to "Disable" instead of "Automatic" in "Server Congiguration" tab of the "Server Configuration" dialog. I think it's better if you change it too, otherwise you will be asked to change the startup type and turn on the service (SQL Server Browser) when you install TFS 2008.

    ReplyDelete
  4. I just came upon your post here. I am looking to do the exact same thing (single server TFS 2008 build). Did you run into any other caveats you'd like to share? Ours will be 2008 Enterprise Edition 32 bit server, with SQL 2008. We have 2005 everywhere so we'd prefer that unless there's some big reason to use 2008.

    ReplyDelete
  5. Hi Blake,

    It's actually been some time since I've worked on TFS but if my memory serves correctly, all the issues I've mentioned in the post are what you should run into unless you're trying to create systems outside of the specifications I gave.
    That being said, I did creat an instance of TFS using SQL 2005 successfully. TFS 2010 however won't work with 2005 and you may encounter issues if you're crossing processor architectures (x64 vs x86). That's about all I've got for you.
    Thanks for reading!

    ReplyDelete
  6. Thanks Aaron. That helps. Below are some questions I've posted in other forums without response. If you have any thoughts I'd love to hear.

    1. Any reason to use SQL 2008 vs SQL 2005. The DBA's here are used to 2005, but there's the thought that SQL is better since it's TFS 2008 (logic, not experience makes them think this).
    2. Any reason to use Server 2008 vs Server 2003? Any upside to either?
    3. Any reason to use TFS 2008 vs TFS 2005? There's very little resources out there regarding 2008 which makes me hesitant.
    3. In the creation of domain service accounts, what makes it a "service" account? Just not tied to a user or are there other steps to lock it down (please be specific)
    4. In looking at the Msft documentation there's a TFSInstall CMD file and a TFSAdmin CMD file.
    5. What permissions can I give our TFS admin without giving him local server admin rights?
    6. Is doing a dual server deployment easier and best practice? We're only talking about a dozen developers using TFS.
    7. Lastly, what books and what training courses do you recommend for a server admin to take/read regarding TFS. Again I'm not doing any development, more management of the software for the developers.

    ReplyDelete
  7. Hi, in the command stsadm to sharepoint i can't use "admin@localhost" to owner mail, I have an error in the command line, there is a diferent account to use...

    please, help me...

    ReplyDelete
  8. Hi Lizbeth,

    As I mentioned to Blake, I haven't worked on SharePoint for some time (that was at my last job).
    That being said, what is the error it's giving you?

    ReplyDelete
  9. hi...
    when i'm trying to install TFS...
    i have the error

    "Error 29000. The Team Foundation databases could not be installed. For more information, see the Microsoft Windows Installer (MSI) log."

    can you help with this error

    ReplyDelete
  10. hi in the error of sherepoint i make the configuration using the Central Administration and now it's working fine, thanks for asking, now my error is during the installation with the error 29000...

    "Error 29000. The Team Foundation databases could not be installed. For more information, see the Microsoft Windows Installer (MSI) log."

    hope you can help me...

    ReplyDelete