43
The Accidental Team Foundation Server Admin Martin Woodward Senior Program Manager Microsoft DEV327

DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Embed Size (px)

Citation preview

Page 1: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

The Accidental Team Foundation Server Admin

Martin WoodwardSenior Program ManagerMicrosoft

DEV327

Page 2: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Martin Woodward

[email protected]

@martinwoodward

http://www.woodwardweb.com

http://www.radiotfs.com

Page 3: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

I work here

Page 4: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

On this

Page 5: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

I also co-authored these

http://tinyurl.com/protfs

Page 6: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Why are we here?

tag – you’re it!

Page 7: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Architecture

Application Tier (AT)

Data Tier (DT)

ConfigurationDatabase

RelationalWarehouse

OLAP CubeDatabase

CollectionDatabases

Client Tier

Page 8: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Protocol Architecture

Client Tier

Application Tier (AT)

TFS Proxy

Build Drop Server

Symbol Server

Data Tier (DT)

SharePoint Portal

BuildAgent

Analysis Services

HTTP(S)

HTTP(S)

HTTP(S)

Page 9: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Team and Project Overload

Team Foundation Server (TFS)

Team Project Collection (TPC)

Team Project Collection Team Project Collection

Team Project (TP)

Team Project

Team Project

Team Project

Team Project

Team Project

Team Project

Team Project

Team Project

Branch

Solution

Solution

ProjectProjectProject

Page 10: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

TFS 2010 Topology

TFS AT HR Applications

Single Server TFS

Page 11: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

TFS 2010 Topology

TFS AT HR Applications

Data Tier

Clustered SQL Server

Dedicated Admin Tools App Tier

Page 12: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

TFS 2010 Topology

TFS AT HR Applications

Finance Applications

Team Project Collection

Company Web site

Another SQL Server

TFS AT

TFS AT

NLB

VIP

Network Load

Balancing

Team Project Collection

Page 13: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

TFS 2010 Topology

TFS AT HR Applications

Finance Applications

Company Web site

TFS AT

TFS AT

NLB

SharePoint Farm

DataWarehouse

Project Server

TFS Build Farm

Virtual Machine Manager

TFS Proxies

Test Rig

Page 14: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Recommended Hardware Configurations

# Users Configuration CPU Memory Storage

< 250 Single-Server 1 single core 2.13GHz

2GB 1x125GB 7.2k rpm

250-500 Single-server 1 dual core2.13GHz

4GB 1x300GB 10k rpm

500-2,200 Dual Server

AT 1 dual core Xeon2.13GHz

4GB 1x500GB 7.2 rpm

DT 1 quad core Xeon2.33GHz

8GB SAS disk array2TB 10k rpm

2,200-3,600 Dual Server

AT 1 quad core Xeon2.13GHz

8GB 1x500GB 7.2 rpm

DT 2 quad core Xeon2.33GHz

16GB SAS disk array3TB 10k rpm

Capacity Planning: http://vs2010quickref.codeplex.com/

Page 15: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Case Study: Teamprise

25 Total Users (7 Very Active)

1 Single Server Instance (one core Xeon 2Ghz, 4GB)2x160GB 10K SCSI Drives (RAID1)Backups to Tape

1 Build Server

1 Project Collection

1 Team Project

In place upgraded since TFS 2005 Beta 2

Page 16: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Case Study: CodePlex

2.5 million users worldwide15,000 Team Projects

Upgrade from TFS 2008 to TFS 2010

TCO down 88%Hardware down 55%Capacity doubled

10 Application-Tier Virtual Machines on 4 Physical Servers

Mirrored SQL Server Pair (5 instances on each)

Mirrored SQL Server Pair (5 instances on each)

3 Failover Application-Tier Virtual Machines on 1 Physical Server

4 Virtual Machine Application-Tier Farm with 10 Team Foundation Server Instances

on 2 Physical Servers

Mirrored SQL Server Pair (1 SQL Server Instance on Each)

Page 17: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Team Foundation Server @ Microsoft

42 instances19,700 unique users 6,154 team projects7.9 million work items

Page 18: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Administration ToolsAdministration Console

Command-Line ToolsTFSConfig.exeTFSSecurity.exeWITAdmin.exetf.exeTFSServiceControl.exetfpt.exe

TFS Power Tools ( tinyurl.com/tfspt )

TFS Admin Tool ( tfsadmin.codeplex.com )

Team Foundation Sidekicks ( tinyurl.com/tfssidekicks)

Page 19: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Administration Tools

demo

Page 20: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Installing / Upgrading TFS

Start from clean machine if possible (64-bit)

Use VM’s to practiseBe careful when imaging TFS instances

Only use Reporting / SharePoint if you need them

Run BPA before upgrade and fix any issues

Client Compatibility Matrix – tinyurl.com/tfsCompatMatrix

Page 21: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Post Upgrade Steps

Upgrade Team Projects to enable 2010 FeaturesTest managementAgile Planning WorkbooksNew reports (tfpt addprojectreports)New portal (tfpt addprojectportal)Update work item typesAdd work item categories

tinyurl.com/tfsUpgrade

Page 22: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Recommended Hardware Configurations# Users Configuration CPU Memory Storage

< 250 Single-Server 1 single core 2.13GHz

2GB 1x125GB 7.2k rpm

250-500 Single-server 1 dual core2.13GHz

4GB 1x300GB 10k rpm

500-2,200 Dual Server

AT 1 dual core Xeon2.13GHz

4GB 1x500GB 7.2 rpm

DT 1 quad core Xeon2.33GHz

8GB SAS disk array2TB 10k rpm

2,200-3,600 Dual Server

AT 1 quad core Xeon2.13GHz

8GB 1x500GB 7.2 rpm

DT 2 quad core Xeon2.33GHz

16GB SAS disk array3TB 10k rpm

Capacity Planning: http://vs2010quickref.codeplex.com/

Page 23: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Managing Users

Team FoundationServer

SharePoint ReportingServices

TFS ServerAdmin

Team Foundation Administrators

Site Administrator Content Manager,Site Administrator

ProjectAdmin

Project Administrators

Project site-level Administrator

Project site-level Content Manager

ProjectContributor

ProjectContributors

Project site-level Contributors

Project site-level Browser

ProjectReader

ProjectReaders

Project site-level Readers

Projects site-levelReaders

Page 24: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

demo

Users and Permissions

Page 25: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Disaster Recovery Planning

Define goalsCost of downtimeWhat data loss is acceptableBackup retention, storage and security

Define responsibilities

Test and practise backup plan

Page 26: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

The Crown Jewels

Application Tier (AT)

Data Tier (DT)

ConfigurationDatabase

RelationalWarehouse

OLAP CubeDatabase

CollectionDatabases

Client Tier

Page 27: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Back-up Components

• Configuration Database• Collection Databases• Warehouse Database• Reporting Services database• Reporting Service encryption key

Data Tier

• SharePoint products configuration databases• Site collection custom controls• Encryptions Keys database

SharePoint

• Configuration settings• Usernames and passwords• Any customizations

Application Tier

• Server configurations• Custom Activities

Team Build

• SCVMM Configuration• Virtual Machines• Lab Environments• VM Templates

Lab Management

• Shelving of version control changes

Clients

• Software versions• Installation Media• License Keys

General

Page 28: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

demo

Backing up TFS

Page 29: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Further Reading (Backup)

SQL ServerHA & DR Architectures – tinyurl.com/SQLDRFull Database Backups – tinyurl.com/fullSqlBackupDifferential Backups – tinyurl.com/diffSqlBackupTransaction Log Backups - tinyurl.com/tlogBackup

SharePoint – tinyurl.com/SharePointBackupLab Management – tinyurl.com/vmmBackupTFS Backup/Restore - tinyurl.com/tfsBackupBackup/Restore Wizard - tinyurl.com/tfsptPro TFS 2010 Book, Ch 19 - tinyurl.com/protfs

Page 30: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Looking for Performance Bottlenecks

Client Tier

Application Tier (AT)

TFS Proxy

Build Drop Server

Symbol Server

Data Tier (DT)

SharePoint Portal

BuildAgent

Analysis Services

HTTP(S)

HTTP(S)

HTTP(S)

Page 31: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Monitoring System Health and Performance Bottlenecks

demo

Page 32: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Calls to Action

Take backups

Check configuration using BPA

Monitor your Server Health

Listen for perf issues from users

Look for evidence in logs

Hardware and SQL Perf is No.1 Suspect

Don’t mess with TFS Database Schema

Page 33: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

thank you

Page 34: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Thanks

TFS Developer Support Escalation Team

Grant Holiday, Brain Keller, Ed Blankenship

Visual Studio ALM Rangers

Visual Studio ALM MVP’s & Inner Circle Partners

Page 35: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Martin Woodward

[email protected]

@martinwoodward

http://www.woodwardweb.com

http://www.radiotfs.com

http://tinyurl.com/protfs

Page 36: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Related Content

Breakout SessionsDEV202: Team Foundation Server for EveryoneDEV306: Branching and Merging for Parallel DevelopmentDEV310: Team Build 2010: From Build Definition to Custom Workflow Activities in 75 MinutesDEV311: Deep Dive into Microsoft Visual Studio Team Foundation Server 2010 ReportingOSP203: Application Lifecycle Management: Microsoft Project Server 2010 and Microsoft Team Foundation Server 2010, Better Together

Interactive SessionsDEV271INT: Would You, Could You with TFS?

Page 37: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Related Content

Hands-on LabsDEV366HOL: Branching and Merging Visualization with Microsoft Visual Studio Team Foundation Server 2010DEV367HOL: Planning Your Projects with Microsoft Visual Studio Team Foundation Server 2010

Product Demo Stations TLC-DEV: Team Foundation Server

Related Certification Exam70-512: Visual Studio Team Foundation Server Administration

Find Me Later At…

Page 38: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

DEV Track Resources

http://www.microsoft.com/visualstudio http://www.microsoft.com/visualstudio/en-us/lightswitch http://www.microsoft.com/expression/http://blogs.msdn.com/b/somasegar/http://blogs.msdn.com/b/bharry/http://www.microsoft.com/sqlserver/en/us/default.aspxhttp://www.facebook.com/visualstudio

Page 39: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Resources

www.microsoft.com/teched

Sessions On-Demand & Community Microsoft Certification & Training Resources

Resources for IT Professionals Resources for Developers

www.microsoft.com/learning

http://microsoft.com/technet http://microsoft.com/msdn

Learning

http://northamerica.msteched.com

Connect. Share. Discuss.

Page 40: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Complete an evaluation on CommNet and enter to win!

Page 41: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

Scan the Tag to evaluate this session now on myTech•Ed Mobile

Page 42: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to

be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS

PRESENTATION.

Page 43: DEV327. tag – you’re it! Application Tier (AT) Data Tier (DT) Configuration Database Relational Warehouse OLAP Cube Database Collection Databases