Enhancing Scalability and Availability of the Microsoft Application

Download Report

Transcript Enhancing Scalability and Availability of the Microsoft Application

Enhancing Scalability and Availability of
the Microsoft Application Platform
Damir Bersinic
IT Pro Advisor
Microsoft Canada
http://blogs.technet.com/canitpro
Ruth Morton
IT Pro Advisor
Microsoft Canada
http://blogs.technet.com/cdnitmanagers
Where Are We Now?
Designing Architecture
Building, Deploying and Maintaining the Application
Developer
IT Professional
Developing Web Applications on the
Microsoft Application Platform
Enhancing Scalability and Availability of
the Microsoft Application Platform
Building a Strong Data Foundation to Your
Application
Managing and Monitoring the Microsoft
Application Platform
Agenda
Application Infrastructure
The Web Tier (IIS 6)
The Middle Tier (BizTalk Server 2006)
The Data Tier (SQL Server 2005)
Microsoft Application Platform Stack
Application Infrastructure
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
IIS Configuration Replication
Local Content Storage
`
Firewall(s)
Internet
Load Balancer(s)
Web and
Content
Web and
Content
Web and
Content
Web and
Content
Web and
Content
Remote Content Storage
Content Replication
NAS
Storage1
Cluster1
DFS
Replication
Cluster2
NAS
Storage2
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
SQL Server 2005 Always On Solutions
High Availability
Requirement
Solution
System Administration
Online management
Recovery from application
or user errors
Logical recovery
Site disaster protection
Database or storage mirroring
Database workload scale
out with redundancy
Replication
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 tablediffutility
– 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
Synchronous Database Mirroring
Client
7. Acknowledgement
Witness
1. Commit
2. Transfer to mirror
6. Acknowledgement
2. Write to Log
4. Write to Log
3. Log written
5. Log written
Data
Principal
Log
Data
Mirror
Log
Database Mirroring Client Setup
1. Add the failover partner property to the connection string
OLE DB IDBInitialize::Initialize and DBPROP_INIT_PROVIDERSTRING uses
“…;FailoverPartner=serverName;…”
OLE DB IDataInitialize::GetDataSourceand pwszInitializationStringparameter
use “…;Failover Partner=serverName;…”
ODBC “…;Failover_Partner=serverName;…”
ADO and ADO.Net “…;Failover Partner=serverName;…”
JDBC SQL Server 2005 Driver 1.1 “…;failoverPartner=servername;…”
2. Specify the default database in the connection string
Don’t rely on “use mydb” in your application logic
3. 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
Peer to Peer Replication
Reporting + Redundancy
Scale Out* + Redundancy
Toronto
Toronto
England
Calgary
Mississauga
Vancouver
Halifax
*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
Replication
Primary disaster site
for databases
Log Shipping
Additional disaster
sites for databases
Logical Recovery
Database Mirroring
Hot
Standby
Replication
Database reporting
and read scale out
with redundancy
Clustering
Production
Database
Log Shipping
Warm
Standby
Clustering
Local server
redundancy
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
resources
www.microsoft.ca/technet/unify/resources
What’s Next?
Designing Architecture
Building, Deploying and Maintaining the Application
Developer
IT Professional
Developing Web Applications on the
Microsoft Application Platform
Enhancing Scalability and Availability of
the Microsoft Application Platform
Building a Strong Data Foundation to Your
Application
Managing and Monitoring the Microsoft
Application Platform
Thanks! Please Fill Out Your Evaluations!