Troubleshooting Exchange Server 2003 Installation

A few reasons for an Exchange Server 2003 installation failing are listed here:

  • The permissions being used for the installation are incorrect: To install Exchange Server 2003, the following permissions are needed:
    • To initially run ForestPrep in a forest to update/extend the Active Directory schema – Member of the Schema Admins group and Enterprise Admins group.
    • To run ForestPrep in a forest after the initial instance – Exchange Administrator permissions at the Exchange organization level.
    • To run DomainPrep to prepare for Exchange Server 2003 installation – Member of the Domain Admins group in the specific domain.
    • To install the initial server in the domain – Exchange Administrator permissions at the Exchange organization level.
    • To install any additional servers in the domain – Exchange Administrator permissions at the administrative group level. The machine account must be included in the Exchange Domain Servers group.
    • To install a server with Site Replication Service (SRS) – Exchange Administrator permissions at the Exchange organization level.
  • Exchange Server 2003 hardware requirements are not met on the server: The minimum hardware requirements for installing Exchange Server 2003 are listed here:
  • Processor – Pentium 133.
  • Operating system – Windows 2000 Server with Service Pack 3.
  • Memory – 256 MB RAM.
  • Disk space – 200 MB on system drive.Troubleshooting Exchange Server 2003
  • Disk space – 500 MB on partition being used for Exchange installation.
  • File system requirements: Exchange Server 2003 must be installed on a NTFS partition. This includes the following partitions and files:
    • System partition.
    • Partition being used for the Exchange database files, Exchange transaction logs, Exchange binaries, and all  other Exchange files.
  • Drive – CD-ROM drive.
  • Display – VGA at least.
  • Exchange Server 2003 software requirements are not met on the server: For the Exchange Server 2003 installation to work, the following requirements have to be met:
  • The machine has to be running Windows Server 2003 or Windows 2000 Server with Service Pack 3.
  • If you are planning to implement Exchange clusters, then you should be running Windows Server 2003 Enterprise Edition or Windows 2000 Advanced Server.
  • If you want to use Network Load Balancing, you have to be running Windows 2000 Server or Windows Server 2003 Standard Edition.
  • The services which Exchange Server 2003 requires is not running: Because of Windows and Exchange integration, there are a number of Windows Server 2003 components and services that have to be installed and enabled before you can install Exchange Server 2003. These Windows services are:
  • Simple Mail Transfer Protocol (SMTP) service.
  • Network News Transfer Protocol (NNTP) service.
  • World Wide Web service.
  • Microsoft ASP.NET.
  • Microsoft .NET Framework.
  • Active Directory and the DNS service is unavailable: : In order to install your first Exchange 2003 server, the Active Directory infrastructure and DNS has to be running, and running correctly and efficiently, that is, with no errors. Exdeploy can be utilized to move through all the necessary pre-installation health checks before you run the Exchange Server 2003 Setup program.
  • ForestPrep has not been run to prepare the Active Directory: One of the first steps that you need to perform for an Exchange Server 2003 deployment is to extend or update the Active Directory schema. The Active Directory schema defines what types of objects can be stored in Active Directory. To extend the Active Directory schema, you will need to run ForestPrep. ForestPrep extends or updates the Active Directory schema so that the necessary Exchange 2003 classes and attributes are added. You have to extend the Active Directory schema on the server assuming the Schema Master Flexible Single Master Operations (FSMOs role.
  • DomainPrep has not been run to prepare the Active Directory: Before you install Exchange Server 2003, you have to prepare the Windows 2000 domain or Windows Server 2003 domain that will be used to host the Exchange 2003 servers. The account which you use to prepare the domains by running DomainPrep, must be a member of the Domain Admins group in the specific domain. DomainPrep creates the necessary Active Directory groups and permissions that Exchange Server 2003 will change. DomainPrep must be run in the Forest root domain, in each domain which will host Exchange Server 2003, and in each domain that will host Exchange mailbox-enabled objects. Whether the domain hosts an Exchange Server 2003 server is irrelevant.

Troubleshooting Exchange Server 2003 Servers

Exchange Server 2003 server performance, like all other servers is associated with standard server processes. It is obviously also determined by Exchange specific processes. A key component to monitoring and optimizing server performance is to identify bottlenecks. A bottleneck can be described as a condition which is created by a particular resource that in turn prevents other resources from operating optimally.

Bottlenecks occur when:

  • Certain settings are not configured correctly.
  • A resource is faulty and not functioning as it should be.
  • Insufficient resources exist, and a resource is being overused.
  • Where many instances of the same particular resource exist, the resources may not be handling load equally or efficiently.
  • A particular application(s) is hogging a resource.

To monitor counters and resources on an Exchange Server 2003 server, you can configure diagnostic logging and a performance log.

A few of the main counters used to identify server health issues are listed here:

  • MemoryAvailable Bytes: The counter indicates what your available memory capacity is. To efficiently run a server, you need to have at least 4MB of memory available. When the memory drops below 4MB, you might need to consider immediately adding more memory.
  • MemoryPages/Sec: This counter indicates the rate at which pages are written to disk, or read from disk. The counter should generally be beneath 20.
  • Processor% Processor Time: This counter should be tracked if you want to detect a process which is utilizing over 85 percent of the processor time. In this case, you might have to consider either upgrading the processor, or installing an additional processor.
  • Physical Disk Avg. Disk Sec/Transfer:  The counter indicates the time duration which the disk uses to deal with a request. A counter value of 0.3 seconds or above means that a high average disk transfer time exists.
  • Physical Disk Avg. Disk Bytes/Transfer: This counter tracks the average number of bytes which are either moved to or from a disk when disk reads and writes occur. A program is typically accessing the drive ineffectually when the counter’s value is over 2KB.
  • MSExchangeISRPC Requests: The MSExchangeIS object can be used to monitor and view events pertaining to the service that enables access to the mailbox and public folder stores. Remote Procedure Call (RPC) Requests represents how many client requests are currently being processed. This counter needs to be monitored in conjunction with the MSExchangeISRPC Packets/sec counter and MSExchangeISRPC Operations/sec counter to determine whether any bottlenecks exist.
  • MSExchangeISRPC Packets/sec: Indicates the rate at which RPC packets are being processed.
  • MSExchangeISRPC Operations/sec: Indicates the rate at which RPC operations are being performed.
  • MSExchangeIS MailboxLocal Delivery Rate: Indicates the rate at which messages are being delivered (locally).
  • SMTP ServerLocal Queue Length: Indicates how many messages exist in the local queue on an SMTP server. You can also use the Queue Viewer utility to monitor this counter. The Queue Viewer utility is found in the Exchange System Manager Administration tool. You can use Queue Viewer to maintain and manage your Exchange organization’s messaging queues.

One of the most common issues that affect server performance is memory leaks which are caused by incorrect application code. A few strategies which you can use to rectify this are:

  • Ensure that your memory intensive applications are executed on those higher performing computers.
  • Use Task Manager to determine the minimum memory requirement necessary for the applications to execute, and then ensure that the available memory surpasses this figure.
  • To enable faster disk access between the disks, configure multiple paging files on multiple disks.
  • Ensure that the paging file size is 1.5 times the physical RAM.

To optimize the processor subsystem:

  • In cases where multithreaded programs are being run, you should:
  • Replace any failing processors.
  • Upgrade your existing processors to faster processors.
  • Add any necessary additional processors.
  • You should spread programs effectively over your existing servers so that the workload is spread efficiently.
  • Consider scheduling programs to run during off peak hours.

To solve disk performance related issues:

  • Consider installing additional disks.
  • If you upgrade a disk to a faster one, upgrade both the disk controller and bus simultaneously.
  • To balance the workload, distribute applications between your servers.
  • You can also distribute your applications over multiple disks.
  • To improve disk access, install the most up-to-date driver software for the host adapters.
  • To improve throughput, create striped volumes on a number of physical disks.
  • To optimize disk performance and minimize disk access time, run Disk Defragmenter frequently

How to configure a queue alert:

  1. Open the Performance console.
  2. In the console tree, expand Performance Logs And Alerts.
  3. Right-click Alerts and sleet New Alert Settings from the shortcut menu.
  4. The New Alert Settings dialog box opens.
  5. In the name box, enter a name for the alert. Click OK.
  6. Enter a name for the alert file when the New Alert Settings dialog box displays. Click OK.
  7. On the General tab, indicate the counters that should be tracked. Use the Add button for this. Indicate that the alert has to be initiated when the counter exceeds or falls beneath the specified counter setting.
  8. O the Action tab, configure the action that should be initiated when the alert is triggered.
  9. Use the Schedule tab to set when the scans of the counters should start and stop.
  10. Click OK.

Troubleshooting Exchange Clusters

A few strategies for troubleshooting Exchange clusters and Cluster Service issues are summarized below:

  • If the Quorum disk failed and you are unable to start Cluster Service, then start Cluster Service with no Quorum resource. Once Cluster Service starts specify a new Quorum resource.
  • If the Quorum resource fails to start:
  • Ensure that all connections and cables are connected.
  • Ensure that SCSI devices are properly terminated.
  • Ensure that the devices on the SCSI bus are connected and operational.
  • If the Quorum log is corrupt, Cluster Service first tries to automatically reset the log. If Cluster Service fails to start because of the corrupt Quorum log, you have to manually reset the Quorum log.
  • If the cluster is down, first attempt to bring one node online. Next, examine the log information to obtain more information on the problem.
  • If a node fails after operating poorly, check whether the CPU is running close to 100 percent. You might have an overloaded CPU.
  • If one node cannot access all drives:
  • Check the cabling between the drive and the node.
  • Check the shared drive from another node.
  • Check the configuration of the cluster.
  • Check whether you can access the drive from a different node.

Virtual memory fragmentation can be considered as one of the bigger problems associated with clusters. A few virtual memory counters that you can monitor on each server node in the cluster are listed below. This should assist you in determining whether or not an Exchange virtual server should be restarted.

  • MSExchangeISV Largest Block Size: Exchange logs a warning in the Event Viewer application log when the MSExchangeISV Largest Block Size counter falls beneath 32 MB. Exchange logs an error in the Event Viewer application log when the counter falls beneath 16 MB.
  • MSExchangeISVM Total 16MB Free Blocks: When the value of this counter falls beneath 3, then you have to restart all services on the cluster node.
  • MSExchangeISVM Total Free Blocks: When the average block size is smaller, it is indicative that fragmentation is greater. Use this counter to determine the level of fragmentation of available virtual memory.
  • MSExchangeISVM Total Large Free Block Bytes: When the counter’s value falls beneath 3, then you should:
  • Failover your Exchange virtual servers.
  • Restart the Exchange services on the cluster node.
  • Failback your Exchange virtual servers.

Troubleshooting Data Storage Issues

To effectively maintain Exchange storage groups and databases consider the factors listed here. These recommendations could assist in preventing unnecessary Exchange data issues:

  • You should never use circular logging.
  • Use only four databases for each storage group.
  • When creating additional storage groups, create the databases that are needed before you create the additional storage groups. This prevents overhead on the server for log file management.
  • To ensure short maintenance and restore times, you should strive to keep the size of the databases small.
  • When you configure your storage group limits, it is recommended that you do not enable the prohibit-send option.
  • You should not change the online system maintenance default setting of enabled.
  • It is recommended that you perform a full backup each day, if feasible.
  • Verify that backups have occurred successfully.
  • You should retain deleted mailboxes for a minimum of thirty days.
  • You should retain deleted items for a minimum of seven days.
  • Ensure that the logs are purged.
  • For your mailboxes, you can configure storage limits for:
  • Configure storage limits for a mailbox.
  • Configure storage limits for a mailbox store.
  • Configure storage limits through mailbox store policies.
  • Configure delivery restrictions on a mailbox.
  • Limit access to a mail-enabled group.
  • Configure mailbox cleanup tasks.
  • Schedule Mailbox Manager Tasks.
  • For public folders; you can configure storage limits at the following levels:
  • Public store level.
  • Public folder level.
  • Create a public store policy and apply the policy to public store.

Troubleshooting Virtual Servers

To troubleshoot virtual server issues, you can use configure diagnostic logging. Diagnostic logging is recorded by the Windows Server 2003 event log on the Exchange server on which the virtual server resides.

When enabled, diagnostic logging records events pertaining to the following:

  • Connections.
  • Authentication.
  • Client Action.
  • Configuration.

For all virtual servers, other than HTTP virtual servers, you configure diagnostic logging through Exchange System Manager. The IIS Manager is used to configure diagnostic logging for HTTP virtual servers.

For the services listed below, you can configure the level of diagnostic logging:

  • IMAP4SVC: Enables users to access mailboxes and public folders through IMAP4.
  • MSADC: Runs connection agreements when the Active Directory Connector is installed.
  • MSExchangeAL: Enables users to address e-mail using address lists.
  • MSExchangeDSAccess: Enables Exchange Server 2003 to access Active Directory.
  • MSExchangeIS: Enables access to the Information Store.
  • MSExchangeMTA: Enables X.400 connectors to access the message transfer agent (MTA).
  • MSExchangeMU: Replicates Exchange configuration changes to the IIS metabase.
  • MSExchangeSA: Logs an event when Exchange accesses Active Directory to store and share information.
  • MSExchangeSRS: Logs an event when Site Replication Services replicate computers running Exchange 2000 Server or later with Exchange Server 5.5 computers.
  • MSExchangeTransport: Logs an event when SMTP is used to route messages. Enable this counter when troubleshooting SMTP virtual servers.
  • POP3SVC: Logs an event when POP3 is used to access e-mail. Enable this counter when troubleshooting POP3 virtual servers.

How to enable and configure diagnostic logging:

  1. Open Exchange System Manager.
  2. Locate the Exchange server that you want to configure.
  3. Right-click the Exchange server and select Properties from the shortcut menu.
  4. Click the Diagnostics Logging tab.
  5. In the Services area of the tab, click service.
  6. Select the appropriate entry in the Category area of the tab.
  7. Select between the following logging levels:
    • None; only critical events and error events are recorded.
    • Minimum; one entry is logged for each key task performed by the service.
    • Medium; for each action needed to execute a task, entries are logged.
    • Maximum; entries are logged for each line of code.The Maximum logging level should be enabled only when you need comprehensive debugging information. This is due to the impact this logging level has on server performance.
  8. Click OK.
  9. To view logged information, access Event Viewer.

Using Microsoft Operations Manager (MOM) to monitor Exchange for Problems

You can use the Microsoft Operations Manager (MOM) tool to monitor your Exchange Server 2003 environment for existing issues or problems. MOM can discover the smaller problems that can result in more serious ones. Through Microsoft Operations Manager, you can monitor Exchange specific system health indicators.

With Microsoft Operations Manager, you can perform a number of activities:

  • Monitor system resources and protocols.
  • Monitor server availability.
  • Verify that services are running and that databases are mounted.
  • Monitor server health by checking performance thresholds and free disk space thresholds.
  • Monitor mail queues.
  • Report on security specific events.
  • Obtain resource usage statistics.
  • Determine capacity.
  • Perform trend analysis for system performance.
  • Perform trend analysis for usage.