Solved

Exchange 2010 on VSphere 4.0 Consuming Memory and CPU; Memory Leak?

Posted on 2011-03-13
4
709 Views
Last Modified: 2012-05-11
Environment: 2 VMWare VSphere 4 ESXi Hosts each have 2x 6-core CPUs and 48GB RAM
VMW hosts connected through 4GB fiber to FC Disk on EMX CSX3 Clariion.
Problematic Guest: Exch 2010 on Windows 2K8R2 VMDK lives in storage group A (104/134GB consumed)
Exchange vitrual disk lives in storage group B (250GB/270GB consumed)

On Saturday we began migrating mailboxes from Exchange 2003 on a physical machine to a virtual Exchange 2010 on VSphere 4. Just before the migration, we expanded the amount of RAM on the virtual Exchange 2010 server from 4GB RAM to 12GB of RAM.

Started the migration and the CPU pegged and memory was consumed. VMotioned all other VMs off the guest hosting the Exch2010 and increased RAM to 20GB and CPUs to 4. Still the Exch server became unresponsive.

Colleagues are pointing at disk IO not being able to handle the load.

My backup Exchange server which is hosted on identical storage and ESX environment runs smoothly with 4GB Ram.

Any ideas on what is causing my prod Exch server to crawl at snails pace? I noticed that by adding more RAM on the prod environment, the VMSW file has aldo grown to 20GB, but the Exch server is the only guest on a host with 48GB Ram.


0
Comment
Question by:keno44
  • 2
4 Comments
 
LVL 22

Expert Comment

by:chakko
ID: 35125475

Do you mean that the Desktop interface (explorer.exe) on the Exchange 2010 server is unresponsive, or is it the whole server?  

Exchange will use as much RAM as it can and I have seen some servers become 'sluggish' from the console side (desktop or remote desktop), but the services underneath all worked OK

Are you using the Move Mailbox command/feature that is built-in to Exchange?  If yes, then I wouldn't think Disk IO should be a problem.

I adjusted the RAM usage by Exchange and this dramatically improved the responsiveness of the server desktop.  This works for Exchange 2010.

http://mostlyexchange.blogspot.com/2007/08/restricting-ram-usage-in-exchange-2007.html

To restrict the amount of RAM that Exchange is using, you need to use ADSIEdit (from the Windows 2003 Support Tools) and you need to logon as someone that has permissions to edit the Exchange configuration. Navigate down through the Configuration container as follows, the organization name is Somorita and the server name is HNLEX04:
Configuration -> Services -> Microsoft Exchange -> Somorita -> Administrative Groups -> Exchange Administrative Group (FYDIBHOHF23SPDLT) -> Servers -> HNLEX01 -> Information Store.

Right click on CN=Information Store and choose Properties; locate the msExchESEParamCacheSizeMax property.


Actually, there is a calculation here. If you want to restrict the size to 10GB. Convert that into KBs(10GB = 10485760 KB) and devide that by 8(10485760/8 = 1310720) and keep that value in msExchESEParamCacheSizeMax.

1024 * 1024 * 10 (GB) / 8 (bits) = setting to use

Reference : http://technet.microsoft.com/en-us/library/bb691304.aspx

0
 
LVL 16

Accepted Solution

by:
danm66 earned 500 total points
ID: 35125481
edit settings on the VM's and check the resource tab.  Make sure you don't see that the box for 'unlimited' un-checked for processor and, especially, memory.

If you look at the performance tab for the VM's, check the latency on the storage, too.  If you see that latency is above 25ms for more than a brief peak, then you might have some storage concerns depending on how long and how high the latencies go.
0
 
LVL 3

Author Closing Comment

by:keno44
ID: 36977215
Sorry, this happened a while ago. I modified setting the memory setting, hard coded it to not go above the desired amount of memory and this turned out to be the solution for our issue.
0
 
LVL 16

Expert Comment

by:danm66
ID: 36977740
I just leave it at unlimited because VM can't use more memory than what it's configured with at boot time.  So, if you assign it 4GB, the most it can use is 4GB plus a small amount for overhead.  The problem with hard setting the resource limit is that you might increase the RAM at some point in the future and not remember to lift the ceiling and windows doesn't like it when you tell it that there's a certain amount of memory available and it can't go out and touch all of it to create pointers.  That's what causes the slowness of performance.
0

Featured Post

Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
This article explains how to install and use the NTBackup utility that comes with Windows Server.
This tutorial will walk an individual through the steps necessary to enable the VMware\Hyper-V licensed feature of Backup Exec 2012. In addition, how to add a VMware server and configure a backup job. The first step is to acquire the necessary licen…
how to add IIS SMTP to handle application/Scanner relays into office 365.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question