Microsoft Exchange is a complex and powerful platform - and a highly critical system for many organizations. These tips will help you stay ahead of problems and optimize performance.
Microsoft Exchange servers are among the most critical systems IT professionals administer. While many organizations can make do by implementing temporary workarounds for different failed processes, email and calendaring aren't among them. If you support Exchange servers, review these 10 steps to keep Exchange running smoothly.
Note: This article is also available as a PDF download.
1: Create proper backups
Ensure good backups are in place. Exchange, due to its continuous transaction logging and multiple storage group nature, is among the more difficult platforms to properly back up.
Be sure to deploy an Exchange-aware backup mechanism. Exchange-aware backups know how to work with Exchange's transaction logs to properly back up store databases and transaction log files. In addition, Exchange-aware backup operations delete log files after backing up appropriate data, which prevent slog files from filling hard disks.
Once an Exchange-aware backup is deployed, and you're confident System State backup operations are completing properly, disable Exchange's circular logging feature. Circular logging is enabled by default on Small Business Server 2008 servers. However, configuring the SBS Backup Wizard disables circular logging, as the SBS Backup Wizard is Exchange-aware and backs up Exchange stores and processes log files as required.
Organizations leveraging Local Continuous Replication (LCR), which enables copying the Exchange database automatically to another volume to aid in disaster recovery, must be particularly careful backing up Exchange data. Windows' native backup utility does not support backing up Exchange stores when LCR is in use. Instead, a third-party Exchange-aware backup application must be used. Microsoft notes the limitations of Windows Backup when backing up Exchange 2007 data.
2: Run Microsoft's Exchange Best Practices Analyzer
The Microsoft Exchange Best Practices Analyzer utility, also known as ExBPA, assists administrators in gauging the overall health and configuration of Exchange servers. The utility collects information from Active Directory, the registry, performance monitor, and other locations before presenting recommendations for repair and improvement.
Administrators should run the tool immediately upon deploying a new Exchange server. It's also a good idea to periodically run the ExBPA when performing routine Exchange maintenance, as the utility helps spot non-default operating parameters and identifies configuration issues that could adversely affect the email server's performance.
3: Review defragmentation operations
Exchange servers include default online maintenance operations, which are typically scheduled during off hours. Among the tasks the automated maintenance operations perform are transaction log management and database integrity checks and defragmentation.
When database checks begin, Exchange notes the event using ID 700 within application log files. When full online defragmentation passes complete within allotted time, Event ID 701 is recorded. If a full online defragmentation is interrupted, such as by a backup operation, Event ID 704 is recorded. When interrupted maintenance operations ultimately complete, Event ID 703 is written within the server's application log.
Administrators should regularly review the server's event logs to confirm that these operations are completing without error. While failures typically appear within daily performance reports, manually reviewing these records helps ensure failures are not overlooked.
4: Confirm storage requirements
A common error I've frequently inherited as an IT consultant is a failure to properly size disk partitions housing Exchange stores. When volumes exhaust available disk space, Exchange cannot store additional mail. This often turns into a critical issue for small and medium businesses.
The best defense is proper planning. The Microsoft Exchange Team Blog maintains a complex (six-part) worksheet you can use to calculate proper storage requirements. You can download the actual calculator spreadsheet from the Microsoft Exchange Team Blog, aka "you had me at EHLO."
How do you know if you are headed for trouble? Other than trends indicating that available free space is decreasing unacceptably due to mail storage, Microsoft warns against average read and write latencies exceeding 20 milliseconds and sustained latency spikes that exceed 50 milliseconds for even a few seconds. Multiple high-performance disk spindles, and aligned disk partitions, are recommended best practices.
5: Review mailbox quotas
It's an easy trap to fall into. You're busy recovering a failed Web server when a director calls. Having bumped up against his Exchange mailbox quota, the user can no longer send/receive email, and he's on deadline for an important project. So you log on to the server and temporarily remove the director's mailbox size restrictions.
Ever have that happen? Maybe a couple of times a year? Then what happens when you finally get a chance, 10 months later, to review those users' mailboxes? If you're like me, you've seen a few of their accounts grow to 6 gigabytes or more.
Police user mailbox sizes. Just because mailbox quotas are in place doesn't mean you or another administrator didn't make changes to buy time -- and then forgot. Make sure all user mailboxes are sized within reason (typically 2GB or less). While newer Exchange releases perform much better when supporting larger mailboxes, huge accounts are still recipes for disaster.
6: Implement mailbox quotas
Maybe mailbox quotas were disabled or never configured. That's easy to fix; enable mailbox restrictions.
Default limits are easily set. Just open the Exchange Management Console, expand Server, choose the Mailbox container, select the Mailbox Database within the First Storage Group, and open its Properties. Click the Limits tab and configure the storage limits (in KB) you want to use as universal defaults.
What restrictions should you set? Windows Small Business Server 2008, which includes Microsoft Exchange 2007, sets default mailbox sizes of 2.3GB for each user. Warnings are set to trigger whenever a user's mailbox reaches 1.9GB. Sending is prohibited when the mailbox reaches 2GB. Larger organizations may want to configure maximum mailbox sizes of just a few hundred megabytes for their users.
7: Tune virtual memory configurations
Few services are as memory hungry as Exchange. This is true whether running Exchange 2003 or Exchange 2007.
When configuring page file settings for Exchange 2007, Microsoft's rule of thumb is to use the amount of RAM times 1.5, if the server has less than 8GB of memory. But if an Exchange 2008 server has more than 8GM of RAM, the rule changes to the amount of memory plus 10MB.
On older 32-bit Exchange 2003 servers, all administrators can do is employ the /3GB switch, when appropriate. First, the server must have more than 1GB of RAM. But the switch should not be employed on certain server configurations, including front-ends, dedicated bridgeheads, and domain controllers that also host Exchange services. Microsoft provides a number of other rules and recommendations dictating the /3GB switch on its Web site.
8: Review SMTP logs and queues
Often, SMTP logs and queues hold the key to solving messaging failures. But monitoring and reviewing SMTP logs and queues can also help administrators keep tabs on an Exchange server's performance.
All mail, ultimately, is transported through Exchange's SMTP queues. If problems occur, the messages become stuck in the queue. Microsoft lists queue names, descriptions, and error causes on its Web site. It also provides simple steps for enabling and understanding SMTP.log files. Regularly reviewing SMTP logs can help administrators better understand their Exchange server and isolate trouble when issues do arise.
9: Defragment database stores using Eseutil
Not necessarily for the faint of heart, Eseutil is Microsoft's utility for manually defragmenting Exchange information stores and directories offline, going all the way back to Exchange version 5.5. The utility should not be used before first creating and verifying an Exchange backup.
Defragmenting an Exchange store typically improves performance by contiguously locating storage data, eliminating unused storage, and compacting the Exchange database. I've even seen Eseutil recover failed or corrupted Exchange stores on Small Business Servers.
Running the Eseutil command with the /c switch performs a restore operation, while running the command with the /d switch instructs the system to defragment the .edb database and leave the new defragmented database in a temporary location without overwriting the original database. Using the /d switch with the /p switch adds repair operation. Running the command with the /g switch simply verifies the logical integrity of the Exchange database. Numerous other switches are available, and you can research them online.
10: Check Exchange-compatible antivirus and anti-spam tools for errors
Administrators often make the mistake of installing Exchange-aware antivirus and anti-spyware tools on an Exchange server and then leaving them be. Frequently, I see third-party antivirus and anti-spyware applications in need of updates or even upgrades that require first uninstalling the existing version.
Unless you regularly review Exchange server antivirus and anti-spyware application logs to ensure that the security software isn't having trouble (failing to update, unable to perform scans, real-time engine disabled, stalled trying to remove an infection, or otherwise corrupted), the Exchange server's performance could be at risk.
Microsoft Exchange is a critical, complex, and powerful platform. While its complexity makes it intimidating to some, smart and diligent maintenance helps forward-thinking administrators prevent anxiety-provoking outages.
Check out 10 Things... the newsletter
Get the key facts on a wide range of technologies, techniques, strategies, and skills with the help of the concise need-to-know lists featured in TechRepublic's 10 Things newsletter, delivered every Friday. Automatically sign up today.
Erik Eckel owns and operates two technology companies. As a managing partner with Louisville Geek, he works daily as an IT consultant to assist small businesses in overcoming technology challenges and maximizing IT investments. He is also president of Eckel Media Corp., a communications company specializing in public relations and technical authoring projects.