Solved

Poor Exchange 2003 performance on ESX4.1

Posted on 2011-02-15
12
1,629 Views
Last Modified: 2012-05-11
I have recently moved 900 mailboxes from this physical server
Dell Blade PE1955 2 x Dual Core Intel Xeon PROC 5050 2x2MB 3.00GHz
4GB RAM

To this VM
Dell PE R710 4 x vCPU Intel Xeon X5560 L3 8 MB(2x4MB) 2.8GHz
4GB RAM

CPU utilization on the physical server with >1000 mailboxes was 20-40%(during peak hours)
CPU utilization on the VM with 900 mailboxes is now 100%(during peak hours)
I have stopped the AV totally, and it is still 100%(during peak hours)
Storage IOPS/network/latency/etc were all healthy

Anyone knows how to fix this? CPU utilization of VM
0
Comment
Question by:silterra
  • 6
  • 5
12 Comments
 

Author Comment

by:silterra
ID: 34903210
Exchange version:
2003 STD SP2 (on physical and VM servers)

OS version:
Windows 2003 ENT SP2 on physical server
Windows 2003 STD R2 SP2 on VM server

VMware version:
ESX 4.1
0
 
LVL 5

Expert Comment

by:Marinertek
ID: 34903250
Can you post any of the performance monitoring data from vSphere related to the virtual machine? Looking at the task manager in the VM can be a skewed view of what's really going on. A few other points to consider:

1. How many vCPU's have you assigned to the VM?
2. How many other VM's are on the R710
3. If resource pools exist, what is your resource pool structure?
0
 

Author Comment

by:silterra
ID: 34903564
1. 4 vCPU assigned to VM.
2. As far as I can see the Host is <50% average CPU utilization, pls see attached images.
3. 8 host, all <50% CPU utilization, DRS enabled, fully automated, resource is not a problem. Host resource Host CPU utilization VM resource VM CPU utilization
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 11

Expert Comment

by:yelbaglf
ID: 34903871
Things to look at...

1) Ensure that your total number of vCPUs assigned to all the virtual machines is equal to or less than the total number of cores on the ESX host.
2) What type of disks are you using?  SATAII or SCSI?  Fibre Channel or iSCSI?
3) Is Exchange on its own datastore/LUN?  What about the page file, log files, and database?
4) What type of SCSI controller are you using for your virtual disk?
5) Disk read/write performance?
6) What does the network utilization look like during this time?
0
 

Author Comment

by:silterra
ID: 34903933
1. The host server have 8 physical cores, that means I can only have 8 VMs with 1 vCPU each? Doesn't sound right to me..
2. iSCSI Dell Equallogic PS6000x 10k SAS 16 x 600GB
3. Exchange shares the datastore/LUN with many other VMs, however it is not a problem on Dell Equallogic PS6000x as all disks are utilized and auto-managed by the storage firmware.
4. Dell Equallogic PS6000x
5. R/W 21%/79%, I/O Load=medium, IOPS R/W 1200/1500, Latency R/W 11ms/<1ms - in general the storage is healthy
6. Pls see picture below
VM network utilization
0
 
LVL 11

Accepted Solution

by:
yelbaglf earned 500 total points
ID: 34906200
The above are VMware recommended best practices, when virtualizing Exchange.  This was true with ESX 3.5 and Exchange 2003, and it's still true with Exchange 2010 and ESXi 4.1.

If the Exchange server is a production server, then it is recommended to NOT over allocate cpu and memory for the host running the Exchange vm/s.  Also, the more i/o intensive the app, the better candidate for a separte LUN, even though your SAN auto-manages.

Also, take advantage of the paravirtual scsi controller for your Exchange database and logs, which should be moved from the primary virtual disk for your vm.  The pvscsi controller provides greater throughput and reduced cpu utilization. (up to 25% for iscsi)
0
 
LVL 11

Expert Comment

by:yelbaglf
ID: 34906415
If you put it in place and you have issues, you can always change it back.  Options for this, if things go south:

1) copy your startup config to your run config (because you'll want to test the changes in the run config first, meaning your startup config is unchanged until you write the changes)
2) remove the service policy from the interface, make the changes, and add it back
0
 
LVL 11

Expert Comment

by:yelbaglf
ID: 34906423
I apologize for this last post, please disregard, since I was posting in the wrong window. :-)
0
 

Author Comment

by:silterra
ID: 34913477
Thank you for the paravirtual scsi controller suggestion, I will need to study how to get that done first.
In the mean time I have actually created a resource pool for the Exchange VM, blocking 4 vCPU equivalent of CPU resource, and it seems to have improved a lot. I'm monitoring its performance for a few days now.
Thank you ..
0
 
LVL 11

Expert Comment

by:yelbaglf
ID: 34915068
You are most welcome!  I think you'll be most pleased with it!
0
 
LVL 11

Assisted Solution

by:yelbaglf
yelbaglf earned 500 total points
ID: 34915795
If you run into any snags, just let me know.  I can certainly help with adding the pvscsi controller.
0
 

Author Closing Comment

by:silterra
ID: 34922726
I have resolved it myself.
0

Featured Post

What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

Question has a verified solution.

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

In this article, I will show you HOW TO: Perform a Physical to Virtual (P2V) Conversion the easy way from a computer backup (image).
This article explains how to install and use the NTBackup utility that comes with Windows Server.
Teach the user how to use create log bundles for vCenter Server or ESXi hosts Open vSphere Web Client: Generate vCenter Server and ESXi host log bundle:  Open vCenter Server Appliance Web Management interface and generate log bundle: Open vCenter Se…
The basic steps you have just learned will be implemented in this video. The basic steps are shown to configure an Exchange DAG in a live working Exchange Server Environment and manage the same (Exchange Server 2010 Software is used in a Windows Ser…

815 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

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now