360 likes | 497 Views
Enhancing Scalability and Availability of the Microsoft Application Platform. Damir Bersinic Ruth Morton IT Pro Advisor IT Pro Advisor Microsoft Canada Microsoft Canada http://blogs.technet.com/canitpro http://blogs.technet.com/cdnitmanagers.
E N D
Enhancing Scalability and Availability of the Microsoft Application Platform Damir Bersinic Ruth Morton IT Pro Advisor IT Pro Advisor Microsoft Canada Microsoft Canada http://blogs.technet.com/canitprohttp://blogs.technet.com/cdnitmanagers
Where Are We Now? Developer IT Professional
Agenda • Application Infrastructure • The Web Tier (IIS 6) • The Middle Tier (BizTalk Server 2006) • The Data Tier (SQL Server 2005)
Availability and Scalability • Availability • “It’s there when I want it” • Scalability • “It performs the same with 1000 users as with 100 users”
The Web Tier • Content and Configuration Management • IIS Configuration Replication • Content Storage Options • Content Replication
Content Replication NAS Storage1 Cluster1 DFS Replication NAS Storage2 Cluster2
Demonstration • Using IISCnfg.vbs for Configuration Replication • Xcopy Deployment of Contoso Store Content
The Web Tier • Dealing with Web Traffic Scalability and Availability • DNS Round Robin • 3rd Party Load Balancers • Windows Server 2003 Network Load Balancing
Demonstration • Set-up Network Load Balancing on Front-End Web Servers
ASP.NET 2.0 Considerations • ASP.NET 2.0 Considerations • View state • Forms authentication • Webresource.axd • Machine key common value • Caching • ASP.NET Session State • Cannot use default InProc
The Middle Tier • BizTalk Server 2006 functionality can be distributed across several machines • Hosts are running process on a machine • Hosts can be factored across BizTalk server machines • Hosts can be clustered • NLB can also be used to scale some adapters • Also need to consider BizTalk databases
The Data Tier • Key element in the application architecture • Used by web application to store and retrieve data • May also be used to store session state info • Used by BizTalk Server 2006 for all operations • Data tier must be available and perform well
SQL Server Always On Technologies • Technologies supporting mission critical applications that demand the highest level of availability • Increased availability during planned downtime • Application, OS, hardware upgrade, maintenance & operations • Protection & fast recovery from unplanned downtime • Human and system errors, data corruption, natural disasters • Available today in SQL Server 2005 Enterprise Edition
Online Management Downtime Scenarios Applying a patch or upgrade Moving a table as part of system maintenance Deploying a new version of an application Recovering from a corrupted data file Always On Solutions Rolling Upgrades and Hotfixes utilizing Database Mirroring, Log Shipping, or Replication Online alter table, index create, index rebuild Online granular restore Enterprise Edition Enterprise Edition
Recovery from User or Application Errors Downtime Scenarios A table is accidentally dropped An application makes incorrect updates to data A user possibly made unauthorized changes to data Always On Solutions View point in time snapshots of the system Take database snapshots at intervals Log ship to another site using restore delay/standby options Log marks taken at key points in time Compare table to older version using tablediff utility Track history of DML statements Use SQL Trace or customized replication
Local Protection - Microsoft Clustering • Local server hardware redundancy • Using a shared disk subsystem • Entire instance virtualized and fails over as a unit • Can include other non-SQL Server resources • Clustering can also be combined with Database Mirroring, Log Shipping, or Replication
Site Disaster Protection • Downtime Scenarios • Earthquake, fire, or flood causes datacenter outage • Always On Solutions • Database Mirroring to a secondary site • Optimized solution - allows very fast failover times to the secondary site • Optionally add log shipping for additional site protection • Cannot be used for BizTalk Server 2006 databases • Third party geo-clustering solutions for data center storage level redundancy • Find SQL Server Always On reviewed solutions at the Microsoft Always On website: www.microsoft.com/SQL/AlwaysOn
Log Log Data Data Synchronous Database Mirroring Client 7. Acknowledgement Witness 1. Commit 2. Transfer to mirror 6. Acknowledgement 4. Write to Log 2. Write to Log 5. Log written 3. Log written Principal Mirror
Database Mirroring Client Setup • Add the failover partner property to the connection string • OLE DB IDBInitialize::Initialize and DBPROP_INIT_PROVIDERSTRING uses “…;FailoverPartner=serverName;…” • OLE DB IDataInitialize::GetDataSource and pwszInitializationString parameter use “…;Failover Partner=serverName;…” • ODBC “…;Failover_Partner=serverName;…” • ADO and ADO.Net “…;Failover Partner=serverName;…” • JDBC SQL Server 2005 Driver 1.1 “…;failoverPartner=servername;…” • Specify the default database in the connection string • Don’t rely on “use mydb” in your application logic • Ensure you have re-connect logic. • The client does not automatically re-connect, it re-directs
Demonstration • Configuring synchronous database mirroring • Configuring the application for database mirroring and failover
Database Scale Out with Redundancy • Scenario • Real time reporting on one or more secondary servers that can also be used for disaster recovery • Tier of identical databases for scaling out applications which are partitioned by site • Solutions • Transactional Replication • Peer to Peer Replication Enterprise Edition
Database Scale Out with Redundancy Transactional Replication Reporting + Redundancy Peer to Peer Replication Scale Out* + Redundancy Toronto Toronto England Calgary Mississauga Halifax Vancouver *Application data modifications must be partitioned by site to prevent conflicts
Demonstration • Configuring Peer to Peer Replication
Putting it all together… Database Scale Out For Queries • Database Mirroring • Primary disaster site for databases • Log Shipping • Additional disaster sites for databases • Logical Recovery • Replication • Database reporting and read scale out with redundancy • Clustering • Local server redundancy Replication Database Mirroring Hot Standby Clustering Production Database Log Shipping Warm Standby Log Shipping With Restore Delay Logical Recovery Standby
Session Summary • Web Tier • Configuration and content replication • Network Load Balancing • Middle Tier • Clustering • Data Tier • Most important to protect and have perform well • Leverage SQL Server Always On technologies
What’s Next? Developer IT Professional