Link to home
Start Free TrialLog in
Avatar of keno44
keno44

asked on

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

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.


Avatar of chakko
chakko
Flag of United States of America image


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

ASKER CERTIFIED SOLUTION
Avatar of Danny McDaniel
Danny McDaniel
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of keno44
keno44

ASKER

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.
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.