This document guides you through the deployment of edge servers in your Microsoft Office Communications Server 2007 topology.
We all know that Exchange 2003 doesn’t scale up at all and anything over 4000 mailboxes on a single back-end creeps into the realm of non-support for Microsoft. Let’s face it, Exchange 2003 doesn’t scale well at all. With the 4GB RAM limitation this has often led to adding more Exchange servers and all the hardware, software and licensing that goes with it. It is common to see large enterprise deployments with double digit Exchange 2003 servers.
Then along comes Exchange 2007 with 64-bit support. With the memory limitation of 4GB removed and the many I/O improvements we’ve all been wondering just how many users will one Mailbox server support?
One key to this puzzle is concurrent MAPI connections. Exchange 2007 has a hard coded limit of 64k RPC connections per message store. Since each MAPI session consumes an RPC connection and Outlook opens multiple connections to a server, the limit for the number of connected client will be equal to 64k divided by the average number of connections that Outlook opens. You’ll want to define just what percentage of your user’s will be connected to the system at any one point in time. This is defined as User Concurrency. By adding more stores you can add more users and since Exchange 2007 now supports 50 message stores and 50 storage groups you do the math…
RAM is no longer a hard limit. Microsoft only recommends a 32 GB limit because:
- At the time of the release of RTM, 4 GB DIMMS were expensive.
- There isn’t much savings in the area of I/O above 32 GB. Extensive internal testing by Microsoft has shown that 5 MB/user is the sweet spot. The cost of adding more RAM often does not justify the need.
Understanding and controlling I/O is everything. The more users you add to your stores the more I/O you are going to require. When designing your storage configuration for large deployments a good rule to follow is to try not to share spindles among the stores. If you haven’t already downloaded the Exchange 2007 Storage Calculator…do so now. It will help you calculate how many stores you’ll need and how much I/O you’ll need to support. Keep in mind your backup schedules when using the calculator…this setting will determine just how many LUNs you’ll need to deploy. CCR and LCR deployments double the number of LUNs. Store size is limited to how fast you can backup the database and how quickly you can restore. I would recommend looking into Microsoft’s newly released Data Protection Manager 2007.
I want to make special note on the following. Mailbox and Message Size Limits!!! Mailbox size plays a huge role in the performance of your server. I have personally witnessed powerful servers brought to their knees because the CEO opened his 10 GB mailbox with over 50,000 items in his Inbox.
Also, keep the message count of any one folder to less than 5,000. Creating more top level folders, or sub-folders underneath the Inbox and Sent Items folders, will greatly reduce the costs associated with this index creation, so long as the number of items in any one folder does not exceed 5,000. Don’t forget about the Calendar folder as well.
See what the Exchange Team has to say on Mailbox Size Limits. Though written a while ago this information is still valuable.
If it’s absolutely necessary that some user’s have their HUGE mailboxes (President, CIO, CEO, etc..) consider giving these users their own Mailbox server and store.
Three words…Messaging Records Management.
Taking all this information into account the scalability potential of Exchange 2007 is nothing short of amazing. I know of one Microsoft Exchange 2007 customer that has deployed this monster: (they are not an ISP)
- 70,000 mailboxes.
- Over 30 mailbox databases.
- Six node cluster (AAAPPP) using HP Blade Class-P hardware.
- Each node is equipped with 32 MB of RAM each.
- Mailbox databases are stored on a NetApp FAS3050 using iSCSI!!!!
- Two HUB Transports, two Client Access Servers and two Edge servers.
So the next time you are designing your Exchange 2007 organization keep these things in mind:
- RAM is not an issue, cost is.
- Controlling the I/O is vital to building a robust and scalable architecture.
- User concurrency percentage.
If you’re an administrator of an Exchange 2007 organization then you should familiarize yourself back pressure.
So what is Back Pressure?
“Back pressure is a system resource monitoring feature of the Microsoft Exchange Transport service that exists on computers that are running Microsoft Exchange Server 2007 that have the Hub Transport server role or Edge Transport server role installed.“
I got a call from a client the other day and they were panicking because their Exchange 2007 server stopped sending and receiving external mail. I remembered from a previous incident involving the back pressure feature and had them check their Application Event Log for Event ID: 15002. There it was…Back pressure strikes again. Back pressure was activated when their disk utilization climbed above 84%. Even though they had over 4 GB of disk space free on the C drive…the percentages are what Back Pressure takes into account.
In a multi-server configuration back pressure is less likely to come into play. This feature often activates in single server designs where all the roles are installed on one server or there is only one HUB server.
Keep this in mind the next time you are building your Exchange 2007 organization with only a single server or single HUB Transport server.
For some more information on Exchange 2007 Back Pressure click here.120 views