Andrew Babiec Manager, Development Services Tallan BIZTALK SERVER 2006 HIGH AVAILABILITY, FAULT TOLERANCE, AND SCALABILITY Tallan Company Overview Founded in 1985 Headquartered in Rocky Hill, CT Offices in Santa Ana, Manhattan, Tampa, and Boston Over 100 technology consultants with a wide range of expertise and knowledge Over 20 consultants located in the Southern California (LA/OC) area Emphasis on current technology trends and talent Tallan Clients Since 1985, Tallan has worked at over 400 clients, including, Walt Disney Internet Group Ingram Micro Experian Oakwood Worldwide ING Bank of America Lincoln Financial • • • • • • • • • Talbots Best Buy Ann Taylor eBay Barnes & Noble CVS Columbia House Dell uBid.com Tallan Solution Areas Custom Application Development J2EE and .NET Web Development Web 2.0/Community/Social Media E-Commerce Internal System Development Business Intelligence (BI) SOA / BPM / EAI (BizTalk) Portals, Collaboration, and Content Management Agenda High availability concepts BizTalk Server 2006 “Farm” demo BizTalk Server database disaster recovery Performance tips and best practices Prerequisite Knowledge Microsoft® BizTalk® Server administration, development, and deployment Microsoft® Windows® security Microsoft® SQL Server™ administration BizTalk Server High Availability Concepts and goals Fault tolerant server infrastructure Eliminate single points of failure High performance and scalability Avoid resource bottlenecks Security Reduce downtime due to breaches Backups and disaster recovery Recovering from catastrophic failures BizTalk Server High Availability Distributed Architectures Purpose of Distributed Architectures (“Farms”) High availability High performance “Active-Active” configuration by virtue of use of the BizTalk MessageBox Messages and state are persisted at predetermined persistence points No Hardware affinity Microsoft Cluster Services support For very specific components MSMQ, MQ Series adapters Enterprise SSO redundancy BizTalk Server 2006 host process is cluster aware Zero Availability Architecture Single Server High Availability Architectures Small BizTalk Server deployment SQL Server Cluster options SQL Server Cluster options High Availability Architectures Medium-sized BizTalk Server deployment High Availability Architectures Large scale BizTalk Server deployment Multiple MessageBox Databases High Availability with SQL Clustering Multiple MessageBox Databases Minimum of 3 – otherwise no benefit One Master messagebox Used for Routing Disable new message publication (be careful if using MSMQT) Multiple secondary messageboxes Used for Processing Load Balancing is automatic and handled by BizTalk automatically BizTalk Server Farm Demo This demo assumes familiarity with BizTalk messaging and orchestration BizTalk MSI deployment procedures DOMAIN: EBIS-LAB EBILABDC1 2 Hosts running on a laptop 1 x SQL Server node 2 x BizTalk Servers (one in a VM) BTS06-1 BTS06-2 SQLCLUST1 BizTalk Server Farm Demo Scenario will illustrate BizTalk Server farm deployment Publish/subscribe and architecture of the MessageBox Hosts and host instances Message Flow HOST: MySendHost Host Instance Host Instance Host Instance C:\Tutorial \FileDrop Send to Endpoint C:\Tutorial \FileDrop sc ri b Send to Endpoint Su b e ri b i sh i sh sc Send Port BTS2004SQL01 BTS2004SQL01 Shared File Location ibe i sh e Pub l scr ri b Host Instance b Su sc Receive Port b Su sh MessageBox MessageBox Host Instance BTS06-2 bl Pu bl Pu Receive Port e HOST: MyOrchestrationHost Su b BTS06-1 HOST: MyReceiveHost Pub li Host Instance Send Port BizTalk Server 2006 “Farm” Providing High Availability for the BAM Databases Cluster the BAM Primary Import database and the BAM Analysis database Define an online window. Schedule DTS packages to run periodically Carefully choose small sets of data items (checkpoints), and avoid including unnecessary data items when defining an activity Providing High Availability for the BAM Databases (continued) Understand the trade-offs between scheduled and real-time aggregations when you design your aggregations. If you choose scheduled aggregations, make sure you schedule the cubing DTS to run more frequently than the archiving DTS. Enable the BAM Event Bus Service in multiple computers to obtain failover functionality Behavior of BizTalk Host Instances during SQL Server Failover Behavior of In-process host instances during SQL failover Will be recycled until the connection to the SQL Server is restored. Once restored, document processing resumes normally. Behavior of Isolated host instances during SQL failover Will pause and disable receive locations. Wehn databases become available, the receive locations will be automatically enabled. SQL Server Database Mirroring Not supported Use log shipping instead. BizTalk Database Disaster Recovery Steps Backup Configure Scheduled Backups Store Backup files offsite Log Shipping Configure destination (backup) SQL server Restore Restore to SQL Server Reconfigure BizTalk Servers Test your restore procedures! Troubleshooting MessageBox Latency Issues The Biztalk Host instance that has the "allow Host tracking" option set is stopped SQL Server Agent is not running or SQL Server Jobs are disabled BizTalkDTADb database grows excessively Excessive Disk I/O Latency Retain minimal data in the BizTalkDTADb database so that runtime performance is not sacrificed BizTalk Server Administration Deployment Options Prescribed method: MSI Files Batch files and WMI scripts BTSTask (previously BTSDeploy) BTSDeploy will remain supported in 2006 for forward compatibility 3rd party and unsupported tools NAnt (http://www.traceofthought.com) BizTalk Assembly Checker (ships with 2006) Community development (http://www.codeplex.com) BizTalk Server High Availability Best Practices Design Robust Infrastructures Microsoft® SQL Server™ Cluster BizTalk Distributed Architecture (Farm) Multiple MessageBoxes for higher volumes Plan Hosts and host instances carefully Understand the BizTalk development life cycle BizTalk Server 2006 “applications” concept Allocation of BizTalk artifacts into separate assemblies BizTalk Server High Availability Best Practices Plan and test your disaster recovery strategy Backing up your BizTalk Databases BizTalk Log Shipping Archiving and Purging Document Tracking DB Documentation Hardware Architecture Server Operations Implemented Solution Architectures Deployment procedures Session Summary Role of the administrator High availability concepts BizTalk Server 2006 “Farms” – Scale Out! BizTalk Server Data DR – Test restores Best practices and recommendations For More Information Read http://www.microsoft.com/biztalk/en/us/white-papers.aspx http://technet.microsoft.com/en-us/biztalk/default.aspx BizTalk Documentation (Help File) Learn http://www.microsoft.com/biztalk/techinfo/virtual-labs.mspx Blogs and Newsgroups http://www.blogbiztalk.com/ http://blogs.msdn.com/biztalk_server_team_blog/ http://blogs.msdn.com/Biztalk_Core_Engine Community Developed Tools http://www.codeplex.com/ (search for “BizTalk”) Contact Information Tallan Microsoft Gold Certified Partner Andrew Babiec Manager, Development Services Tallan ababiec@tallan.com Q&A Thank You