Migrating an Enterprise Microsoft Product (TFS) on to Windows Azure

Download Report

Transcript Migrating an Enterprise Microsoft Product (TFS) on to Windows Azure

Migrating an Enterprise
Microsoft Product (TFS) on to
Windows Azure
Sriram Dhanasekaran
SDE II, Microsoft
Agenda
• Microsoft Visual Studio Team Foundation
Server 2010 – Architecture
• Migration – steps and challenges
• Lessons
– What aspects made the migration easier?
• Demo
• Q&A
MICROSOFT VISUAL STUDIO
TEAM FOUNDATION SERVER 2010
TFS 2010 - Architecture
TFS on Azure
SQL Azure
Windows Azure
Worker Role
VM/Worker Role*
Web Role
* Not in current release
MIGRATION
SQL Server => SQL Azure
• No OPENXML
– Moved to using TVP instead.
• No ‘SELECT INTO’
• No SysMessages
– Developed own mechanism
• Mandatory Clustered Indexes
• No full text index
Identities
• No Windows Identities in Azure. Need to use
internet identity system.
• Use App Fabric Access Control Services as
federation system
–
–
–
–
Open ID compatible
Multiple providers – Live, Yahoo, Google, Facebook
Supports Active Directory Federation
Provides service identities for various co-operative
services to authenticate each other.
• Clients now need to prompt a web page to accept
credentials
Storage
• In On-premise version, all data was stored in
SQL Server – work item attachments, source
code files, test attachments
• Disadvantages of SQL Azure
– Cap on size of database
– About x50 expensive
• Moved all blob data to Windows Azure Blob
Storage.
– Cheap
– Scalable
Communication Protocol
• Made all components behave like pure
clients
– Having no peer-peer relationship enables
simple trust relationship
– Allows easy support for multiple topologies
Security
• Centralized authentication and
authorization system
– Server handles all security aspects
– Enables simpler trust relationships
– Data hidden
Tuning for WAN access
• TFS always on WAN
– Think hard on hitting the server
– Calls to server needs to be Async and
cancellable
– Minimize round trip, payload etc.,
• Streaming data
• Offline cache
• Compression
Running as a service
• COGS
– Storage
– Bandwidth
• Upgrade
– No downtime
– Upgradeable at a tenant level
– Client upgrades
• Diagnostics
• Operations team becomes an integral part of
product team
• Billing
LESSONS LEARNT
What makes migration simpler?
• Web friendly protocols
– ASP.NET web services
– WCF
•
•
•
•
Stateless services
3-tier application model.
Support for scaling any tier independently.
Multi-tenant notion
– Unit of operation
– Delegation of administration
DEMO
TFS on Azure
Q&A
© 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.