This is a post of technet. Because it is so important, I have a copy on my blog.
Three of the most critical factors to consider when selecting hardware for use by Microsoft Exchange Server 2010 are choice of processor, amount of memory, and selection of storage. This topic provides guidelines for processor configurations that provide good performance and a strong platform for Exchange Server. For detailed guidance and recommended configurations for memory, see Understanding Memory Configurations and Exchange Performance. For more information on selecting storage, see Understanding Storage Configuration.
For production environments, you must choose a processor that will work with the x64-based version of Windows Server.
The release to manufacturing (RTM) version of Exchange 2010 is only supported in production environments when the x64 version of Exchange 2010 is installed on a computer with x64-compatible processors that is running the Windows Server 2008 x64 Edition or Windows Server 2008 R2 operating systems.
You can select processors from Intel that support Intel Extended Memory 64 Technology or processors from AMD that support AMD64. For more information about these processor options, see the Intel 64 Architecture Web site or the AMD Opteron Processor Family Web site at http://www.amd.com/us-en/Processors/ProductInformation/0,,30_118_8825,00.htm.
Exchange 2010 is designed to run only on x64-capable processors such as those listed previously, and it will not run on Itanium-based systems.
Regardless of which processor you choose, the server product must have the Designed for Windows logo to be supported. For more information, see Windows Logo Program: Overview. To ensure support, you must select a server that is listed in the Windows Server Catalog. If your server isn’t listed, you should verify with the hardware vendor that testing is in progress.
Hyper-threading causes capacity planning and monitoring challenges, and as a result, the expected gain in CPU overhead is likely not justified. Hyper-threading should be disabled by default for production Exchange servers and only enabled if absolutely necessary as a temporary measure to increase CPU capacity until additional hardware can be obtained.
You can use the following table to assist you in purchasing server hardware for Exchange 2010. This table provides minimum requirements, recommended requirements, and recommended maximum configurations for Exchange 2010.
|The following guidance assumes an average concurrency profile. Concurrency is defined as the percentage of the total number of users on a server that are connected and using the server at a specific peak period of time. For a fully utilized server, concurrency is generally in the 75 to 80 percent range.|
The following describes the minimum requirements, recommended maximum requirements, and recommended maximum configurations:
- Minimum This is the minimum processor and memory configuration suitable for specific server roles. The minimum hardware requirements must be met to receive support from Microsoft Product Support Services.
- Recommended Maximum This is the maximum recommended processor and memory configuration for specific server roles. Maximum is defined as the upper bound of viable processor and memory configurations based on price and performance. The recommended maximum configuration is a guideline. It isn’t a support criterion, and it doesn’t take into account the resource requirements of third-party applications that might access or be installed on the server. The recommended maximum configuration may change over time based on price changes and technology advancements.
Processor configurations for Exchange 2010 server roles
Exchange 2010 server role Minimum Recommended maximum Edge Transport 1 x processor core 12 x processor cores Hub Transport 1 x processor core 12 x processor cores Client Access 2 x processor core 12 x processor cores Unified MessagingNote Recommendations based on Unified Messaging being deployed with the default configuration which includes Voice Mail Preview enabled. 2 x processor core 12 x processor cores Mailbox 2 x processor core 12 x processor cores Client Access/Hub Transport combined role (Client Access and Hub Transport roles running on the same physical server) 2 x processor core 12 x processor cores Multiple role (Client Access, Hub Transport, and Mailbox server roles running on the same physical server) 2 x processor cores 24 x processor cores
|Some server virtualization platforms may not support the maximum number of processors identified in the preceding table. If you’re planning to deploy Exchange server roles on a virtualization platform, please check the documentation for that platform to determine the maximum number of supported virtual processors.|
|Ratings available at the Standard Performance Evaluation Corporation Web site may be used to rationalize unlike processor and server configurations.|
The recommended configuration for the Hub Transport server role is 8 x processor cores in organizations where Hub Transport servers are deployed with several Mailbox servers and thousands of mailboxes. Servers with larger processor cores can be efficiently used when the Hub Transport server is configured to use antivirus and anti-spam. Processor utilization is based on several factors such as message rate, average message size, number of enabled transport agents, antivirus configuration, and third-party applications.
Exchange 2010 architecture has moved most of the client-specific functions from the Mailbox server to the Client Access server. In Exchange 2010, messages are converted on the Client Access server when they are accessed by a non-MAPI client (for example, POP3 and IMAP4 clients). In addition, rendering for Microsoft Outlook Web Access is performed on the Client Access server, as opposed to the Microsoft Exchange Information Store service in previous versions of Exchange Server.
These architectural changes allow the Client Access server to offload significant processing from the Mailbox server and to effectively utilize 8 x processor cores. Servers with 2 x processor cores can be utilized for Client Access servers in organizations where there aren’t enough mailboxes or insufficient non-MAPI client traffic to warrant using 4 x processor core servers.
The recommended configuration for the Unified Messaging server role is 8 x processor cores. Multiple cores are used on the Unified Messaging server for several architectural functions such as .wav to Microsoft Windows Media Audio (WMA) conversions for voice mail messages. Servers with 2 x processor cores can be used for Unified Messaging servers in organizations where there aren’t enough mailboxes or insufficient Unified Messaging server activity to warrant using 4 x processor core servers.
The recommended configuration for the Mailbox server role is based predominantly on mailbox count and user profile. A 4 x processor core server provides a good balance between price and performance, and it should be able to host several thousand mailboxes. Sizing for the Mailbox server requires an understanding of the average client user profile. This profile can be collected using transport performance counters that indicate overall message throughput within an Exchange system. You can use the Microsoft Exchange Server Profile Analyzer or third-party tools.
For more information about processor requirements for specific user profiles (based on message throughput), see Mailbox Server Processor Capacity Planning.
As a general guideline, a multiple role server should be sized to use half of the available processor cores for the Mailbox role and the other half for the Client Access and Hub Transport roles. The maximum recommended processor core configuration is listed at 24 x processor cores for the multiple server roles configuration to indirectly provide guidance on the maximum number of users that should be hosted on a multiple role server. Although this configuration can use more than 24 processor cores, we don’t recommend this. For more information, see Understanding Multiple Server Role Configurations in Capacity Planning. For more information on the combined Hub Transport and Client Access server roles, see Understanding Client Access and Hub Transport Combined Role Configurations in Capacity Planning.
The CPU overhead associated with running a guest operating system in a virtual machine was found in testing to range between 9 and 12%. For example, a guest operating system running on a virtual machine typically had available 88-91% of the CPU resources available to an equivalent operating system running on physical hardware. We recommend reducing the user capacity of mailbox role servers by 10% to account for hypervisor processor overhead.