UNC309 - Getting the Most out of Microsoft Exchange Server 2010: Performance and Scalability


Published on

Selecting the right server hardware for an Exchange 2010 deployment becomes much easier when you know the product team's scalability and performance guidelines. This session provides a look at the product team's guidance for the processor and memory requirements of each server role in Exchange 2010. A number of key performance enhancements from this release are discussed, and you also learn about how to use related tools like the Exchange Storage Calculator, Exchange Profile Analyzer, Loadgen, and Jetstress to take the guesswork out of server sizing.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Disable HT
  • UNC309 - Getting the Most out of Microsoft Exchange Server 2010: Performance and Scalability

    1. 1.
    2. 2. Getting the most out of Exchange Server 2010: Performance and Scalability<br />Jeff Mealiffe<br />Senior Development Lead<br />Microsoft Corporation<br />Session Code: UNC309<br />
    3. 3. Agenda<br />High-level product direction for scale<br />Guidelines and ratios<br />Role specific details<br />Virtualization considerations<br />Toolkit for planning and sizing<br />
    4. 4. Product Direction For Scale<br />
    5. 5. Scale Out vs. Scale Up<br />Scale out is a strategic choice made by the product group<br />Scale out provides the following at low cost:<br />Large mailboxes<br />High availability<br />Rich feature set<br />Scaling up increases risk that an outage or failure affects more users<br />Scaling up usually costs more, and can force feature decisions due to hardware choices<br />Consider all factors in the equation, particularly storage<br />
    6. 6. Scale Up Options<br />Multiple Role Servers (“brick” deployments)<br />Likely the best option for big hardware (&gt; 2 socket) – best hardware utilization overall<br />Be aware of recommendations for max processor & memory<br />Virtualization<br />Evaluate whether potential added complexity & monitoring challenges make this a win<br />Single role<br />Product not engineered for single role high scale (&gt; 2 socket)<br />Extreme caution necessary – validate carefully in a test lab<br />
    7. 7. Supported vs. Recommended<br />Supported usually means well tested<br />Support statements define strict boundaries<br />Recommendations define the “best case” or the state that we want our customers to achieve<br />Understand risks of going outside of recommendations or support boundaries<br />
    8. 8. Guidelines & Ratios<br />
    9. 9. Processor Core Scalability<br />Single Role Servers<br />Recommend a 2-socket platform<br />4-core processors = 8 total cores<br />6-core processors = 12 total cores<br />Expect diminishing returns moving to 16+ cores on &gt;= 4 socket platform<br />Known issues updating memory across cores<br />Not Non-Uniform Memory Access (NUMA)-aware or optimized for scale around data locality<br />Code can take longer to execute; transaction costs rise<br />Multiple Role Servers<br />Recommend 24 cores maximum for high-scale “Enterprise Multiple Role Server”<br />Multiple processes from different roles help us scale better<br />Hyperthreading<br />Disable on production Exchange servers<br />Causes monitoring and capacity planning challenges<br />
    10. 10. Role Ratio Guidelines<br />Processor core ratios<br />CAS : Mailbox<br />= 3 : 4<br />HUB : Mailbox<br />= 1 : 7 (no A/V on Hub)<br />= 1 : 5 (with A/V Hub)<br />GC : Mailbox<br />= 1 : 4 (32-bit GC)<br />= 1 : 8 (64-bit GC)<br />
    11. 11. Processor and Memory Config<br />
    12. 12. Network Load Balancing<br />Exchange 2010 requires load balanced CAS for internal connections<br />Consider HA needs<br />Size for connection count spikes<br />Windows Network Load Balancing (NLB)<br />Not recommended above 8 nodes<br />Hardware Load Balancer<br />Recommended for larger environments<br />Multiple Role Server High Availability (HA) scenarios<br />
    13. 13. Role Specific Details<br />
    14. 14. Mailbox RoleGeneral guidance<br />I/O reduced by 70% from Exchange Server 2007<br />Improved performance for SATA (Tier 2 class) disks<br />Two socket platform still optimal<br />Storage performance improvements prioritized over processor scale improvements – larger TCO advantage<br />High availability improvements affect sizing<br />Sizing must account for failure scenarios<br />Use 4 – 12 total cores for Mailbox<br />16 core not expected to scale well but ok to deploy – consider TCO<br />4GB RAM w/3-30MB per mailbox recommended depending on profile<br />Size and prepare disks correctly<br />Use Exchange Storage Calculator<br />
    15. 15. Mailbox RoleMemory sizing<br />Design servers with large quantities of memory<br />Deep checkpoint depth + 32KB pages allow E2010 to benefit from larger memory configurations than E2K7<br />More database cache results in less IOPS/mailbox<br />
    16. 16. Mailbox RoleHigh availability sizing<br />Size for active users on DAG nodes, assuming the possibility of double failures<br />Do not overcommit resources<br />Spread node failure across all available nodes not one or two<br />Distribute database (DB) copies across nodes in a matrix<br />Improved DB seed/log shipping performance across WAN<br />Log Shipping compression/encryption (opt in)<br />New log shipping architecture (Transport Control Protocol (TCP) socket based as opposed to Server Message Block (SMB), connection/DB)<br />Improved high latency capability<br />Use multiple 1GB networks or 10GB network<br />Improves LAN re-seed/log replication queue drain performance<br />Especially with large servers and/or large databases<br />
    17. 17. Client Access Server RoleConnection scalability changes<br />Outlook Clients<br />Outlook Clients<br />Exchange 2007<br />(1 connection == 1 session, 64K RPC Context handle limit)<br />64K connections / MBX server<br />Exchange CAS Array<br />Exchange 2010<br />(1 connections != 1 session, 250K RPC Context handle limit on MBX)<br />1 MBX session :<br />1 client session<br />MBX<br />MBX<br />1 connection :1 client session<br />1 CAS session :1 client session<br />100 shared connections<br />
    18. 18. Client Access Server RoleGeneral guidance<br />Hardware requirements have increased vs. Exchange 2007<br />“Pay to play” for additional features and services (RPC Client Access Service, Address Book Service, Remote Powershell, etc.)<br />Possible to keep CAS count constant from 2007 to 2010, with hardware refresh<br />Use 4 to 12 cores<br />Recommend larger of 8GB RAM or 2 GB RAM/core<br />CAS : Mailbox = 3 : 4 Cores<br />
    19. 19. Hub Transport RoleGeneral guidance<br />Increased workload in Exchange 2010<br />Additional CPU required when compared to Exchange 2007<br />Not significant enough to result in a core ratio change<br />Use 4-12 cores<br />4-8 GB of RAM recommended<br />More than 8GB is not shown to improve TCO or scale<br />Use battery-backed write cache disk controller<br />Disk I/O can be a bottleneck on an un-tuned Hub<br />Log I/O becomes virtually free with a BBWC controller<br />
    20. 20. Hub Transport RoleQueue database changes<br />ESE changes:<br />ESE page size increased from 8KB to 32KB<br />ESE database page compression<br />Intrinsic long value record storage<br />ESE version store maintenance<br />DB cache size increased from 128MB to 1GB<br />Checkpoint depth increased from 20MB to 512MB<br />Logging buffer size increased from 512KB to 5MB<br />With transport dumpster changes and ESE improvements, transport IOPS requirements have been reduced by more than 50%<br />
    21. 21. Unified Messaging RoleGeneral guidance<br />Use 8 core for Voice Mail Preview<br />CPU-intensive workload<br />4 core recommended for other scenarios<br />4-8 GB of RAM recommended<br />More than 8GB is not shown to improve TCO or scale<br />Not recommended combining with other roles<br />Audio quality can be affected<br />Ensure low latency to mailbox servers associated with UM-enabled accounts<br />
    22. 22. Multiple Role Server General guidance<br />Mailbox, CAS, and Hub Transport roles only<br />Available solution for high core configurations<br />Half of cores for Mailbox, half for CAS+Hub<br />Use 8-24 cores<br />8GB RAM plus 3-30MB/mailbox recommended (follow mailbox database cache sizing guidance)<br />
    23. 23. Multiple Role ServerDeployment scenarios<br />Simple unit of scale (brick) model<br />Each multi-role server represents a building block<br />Servers with on-board SATA storage (10-16 disks) are optimal<br />Small organization/branch office – server consolidation<br />Minimize the number of physical servers, operating system instances, and Exchange server instances to manage<br />Risk mitigation scenarios <br />Policies that limit the amount of mailboxes per server<br />
    24. 24. Virtualization Considerations<br />
    25. 25. Support Guidelines<br />TechNet is the single source: http://technet.microsoft.com/en-us/library/cc794548.aspx<br />SVVP Support Policy Wizard is a great tool:http://www.windowsservercatalog.com/svvp.aspx?svvppage=svvpwizard.htm<br />Always confirm SPW results with our TechNet article<br />Check back for updates<br />Clarifications published frequently<br />
    26. 26. Supportability Quick Reference<br />Supported<br />Root: Hyper-V or SVVP<br />Guest:<br />Exchange 2010<br />Windows 2008 SP2 or R2<br />Mailbox, Client Access, Hub Transport, Edge roles<br />Meets basic Exchange system requirements<br />Storage is fixed VHD, SCSI pass through, or iSCSI<br />Not Supported<br />Combination of Exchange Mailbox HA and hypervisor-based clustering or migration technologies<br />Snapshots, differencing/delta disks<br />VSS backup of root for passthrough disks or iSCSI disks connected to initiator in guest<br />Unified Messaging role<br />Virtual/logical proc ratio greater than 2:1<br />Applications running in root partition<br />
    27. 27. Deployment Recommendations<br />Virtualization isn’t free<br />Hypervisor adds processor overhead, must account for this when sizing - ~12% in our Exchange 2010 tests<br />Workload costs rise as well, though this is more difficult to characterize<br />Virtualization doesn’t change Exchange design requirements from an application perspective<br />Design for Performance, Reliability and Capacity (MBX/Hub/Edge)<br />Design for Usage Profiles (CAS/MBX)<br />Design for Message Profiles (Hub/Edge)<br />
    28. 28. Exchange 2010 TestingTypical 16-core deployment<br />Goal: Examine Exchange performance on Hyper-V in a typical deployment scenario<br />Test configuration:<br />HP ProLiant BL680 G5, 4 x Quad-Core Intel Xeon E7340<br />Root: 16 core host, Windows 2008 R2 (build 7100)<br />Guests: 4 VMs (1 CAS, 1 Hub, 2 Mailbox), Exchange 2010 DF7 (582.10)<br />Mailbox 1 on Windows 2008 RTM, Mailbox 2 on Windows 2008 R2<br />4,000 users per mailbox server<br />Loadgen, 75% Outlook 2007 Cached Heavy + 25% OWA (modified enterprise script) + 10% default EAS workload<br />Observations:<br />Logical processor guest runtime higher with 2008 RTM guest vs. 2008 R2 (~13%)<br />Acceptable performance across all roles<br />Hub CPU 52.3%, CAS CPU 33.4%<br />MBX CPU 53.3%, RPC Averaged Latency 6.5ms, RPC Operations/sec 1818<br />
    29. 29. Points To Consider<br />Accuracy of Perfmon counters in a Guest OS might be a concern for monitoring<br />CPU cycles in a VM are relative to the CPU slices provided from the virtualization layer<br />May skew results<br />Investigating the impact on production monitoring<br />Comprehensive comparison of physical resources and application consumption is difficult to achieve<br />Application counters are only available in the Guest OS<br />Root OS only provides view of resources it owns and Hyper-V counters<br />
    30. 30. Toolkit For Planning & Sizing<br />
    31. 31. Capacity Planning Tools<br />Profiling<br />Exchange Profile Analyzer 2010 (EPA)<br />Performance Monitor (Perfmon)<br />Sizing<br />Exchange Server 2010 Storage Calculator<br />Validation<br />Jetstress 2010<br />Exchange Load Generator 2010 “Loadgen”<br />
    32. 32. Exchange Profile Analyzer 2010<br />Generates statistical profile of user actions<br />Messages sent and received/day<br />Rule counts<br />Item size and counts<br />Inputs<br />Crawls mailboxes with MAPI (previously DAV) <br />OWA log analysis tool and “summarizer”<br />Accuracy somewhat dependent on how users manage their mailbox<br />Availability planned for Q3CY10<br />Version that works with Exchange 2003 & 2007 available here: http://tinyurl.com/233by6<br />
    33. 33. Storage Calculator 2010<br />Follows Product Group recommendations on:<br />Storage<br />Memory<br />Mailbox sizing<br />Goal of the calculator is to output:<br />I/O requirements <br />Capacity requirements <br />Logical user number (LUN) design<br />Available today via the Exchange team blog: http://msexchangeteam.com/<br />
    34. 34. Jetstress 2010<br />Exchange I/O simulator<br />Uses Jet (ESE) database engine<br />Analyzes server I/O performance for Exchange requirements<br />What can Jetstress be used for?<br />Storage performance validation<br />Storage reliability testing<br />End-to-end testing of storage components<br />What can’t Jetstress be used for?<br />Validation of client experience<br />Integration testing with third party software solutions<br />Availability of 2010 version planned for December 2009, will be announced on Exchange team blog: http://msexchangeteam.com/<br />
    35. 35. Jetstress 2010What’s new<br />Updated with Exchange 2010 Mailbox I/O Profile<br />This profile is not yet final and is subject to change between now and Exchange 2010 release<br />Database duplication is now multi-cast<br />Dramatically reduces the time to prepare databases for testing<br />Now using MSExchange Database I/O counters for I/O measurement<br />Allows placing databases and logs on the same volume<br />Log replication I/O is simulated based on Exchange 2010 HA architecture<br />Background Database Maintenance (Checksum) is now simulated<br />
    36. 36. Exchange Load Generator 2010<br />The only supported multi-protocol load generator for Exchange<br />Replaces Loadsim and ESP<br />Windows UI interface as well as a command-line interface<br />Both task-based and scripted simulation modes<br />Consumed both internally at Microsoft and externally<br />Existing modules include: Outlook 2003/2007 (online and cached), Post Office Protocol (POP), Internet Message Access Protocol (IMAP), Simple Mail Transfer Protocol (SMTP), OWA, ActiveSync… others in development<br />Availability planned for December 2009, use beta until then:http://tinyurl.com/yhvpwbf (32-bit)http://tinyurl.com/yk5vfl7 (64-bit)<br />
    37. 37. Exchange Load Generator 2010What’s new<br />Requires Vista, Windows 7 or Windows 2008 OS (SP2/R2)<br />No longer requires Exchange Management Tools<br />ActiveSync Module<br />Dynamic mail generator<br />No need for message files, available in 5 languages, supports attachments<br />NSPI connections<br />
    38. 38. Tools Process Flow<br />User<br />Profile<br />Exchange Load Generator<br />Mailflow& Other Stats<br />Exchange Profile Analyzer<br />User<br />Profile<br />Exchange Storage Calculator<br />IOPS<br />Performance Monitor<br />Exchange Jetstress<br />
    39. 39. Key Takeaways<br />Exchange continues to reduce I/O requirements, reducing overall system TCO<br />New features in Exchange 2010 may require additional hardware resources, server count increases can be minimized<br />Virtualization is a great way to take advantage of underutilized hardware<br />Take advantage of the planning & testing toolset for successful deployments<br />
    40. 40. Related Content<br />Required Slide<br />Speakers, <br />please list the Breakout Sessions, TLC Interactive Theaters and Labs that are related to your session.<br />UNC301– Microsoft Exchange Server 2010 Upgrade and Coexistence with Exchange Server 2007 and 2003<br />UNC307 – Microsoft Exchange Server 2010 High Availability<br />UNC314 – Microsoft Exchange Server 2010 Storage Architecture<br />UNC315 – Microsoft Exchange Server 2010 Unified Messaging<br />UNC01-IS– Microsoft Exchange Server 2010 Archiving Q&A<br />UNC06-IS – Site Resilience in Microsoft Exchange Server 2010<br />UNC03-IS – Microsoft Exchange Server Virtualisation: Does It Make Sense?<br />
    41. 41. UNC Track Call to Action!<br />Learn More!<br />Related Content at TechEd on “Related Content” Slide<br />Attend in-person or consume post-event at TechEd Online<br />Check out learning/training resources at Microsoft TechNet<br />Exchange Server and Office Communications Server<br />Check out Exchange Server 2010 atVirtual Launch Experience (VLE) at thenewefficiency.com<br />Try It Out!<br />Download the Exchange Server 2010 Trial<br />Take a simple Web-based test drive of UC solutions through the 60-Day Virtual Experience<br />
    42. 42. Complete an evaluation on CommNet and enter to win an Xbox 360 Elite!<br />
    43. 43.
    44. 44. question & answer<br />
    45. 45. Required Slide<br />© 2009 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.<br />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.<br />