Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've setup a a pre-production ESXi server and I'd like to do some load testing on the guest operating systems I have on it.

Specificly what I'm interested in is

  1. Disk access, will the guest OS's be fighting for disk access, read & write
  2. Processor use & sharing between the guest OS's
  3. Memory use & sharing between the guest OS's
  4. Load on an SQL server within a Guest OS
  5. Load on an Exchange server within a Guest OS

I'm pretty new to load testing like this so I really don't even know what to ask?

I'd like to be able vary the options, so I can show at 1000 exchange users we need another Exchange VM created sort of thing.

Are they any standard bench marks?

share|improve this question
up vote 1 down vote accepted

Try VMWare's own VMMark - Start here: It's probably not as specific as what you are looking for but it is a good broad measure of the performance of your underlying hardware setup and how it will scale under increasing load which is sort of what you are looking for.

share|improve this answer

From a linux perspective there's bonnie++ for disk benchmark/load generation, and cpuburn for CPU wasting.

Don't know any good memory thrashers off-hand, but for VMware that's not a good idea anyway as vmware assumes a certain amount of memory overlap between VMs and deliberatly breaking that assumption will just result in bad performance.

share|improve this answer
Memory wasn't going to be the primary item I was looking at. I'm more concerned with disk I/O Its easy enough to add more memory when needed – SpaceManSpiff Jun 26 '09 at 13:54

Check out unix bench, if you are using *nix based guests.

Ideally you wont be putting guests on the system that need lots of disk IO. They are not good candidates for virtualisation.

Memory and CPU use can limited easily enough either via resource groups or on a per VM level.

I've found having limits on mhz and ram, even high limits can stop a run away process from impacting other VMs alot.

"I'd like to be able vary the options, so I can show at 1000 exchange users we need another Exchange VM created sort of thing."

Loading up one VM to the point the host is strugling doesnt prove squat, since the underlying hardware is already maxing out. You're just giving yourself an upper bounds to what you can service on the existing hardware.

In VMware you should keep an eye on disk read/write latency. Once you start seeing latency figures in the 500ms-1000ms+ range you know you are starting to hit your disk alot.

Are you going to be using direct attached storage or NFS/iSCSI boxes?

Virtualising lots of low load servers into one bigger box makes alot of sense, trying to virtualise a heavily loaded system typically results in worse performance than just buying a decent dedicated box for the job.

share|improve this answer
We're not sure how we want to use them yet, part of the reason we want to test. All our current server's seem very under utilized which is why we are looking at this. Since this is our first project like we'll be going with pretty basic server grade hardware from Dell,8 gigs RAM, Hardware based RAID 1, likely 750 gigs HDD and a single processor. The less critical servers will be the first like the print server, one of the DC's & backup server. Hence the I/O concern when the backup job runs. And maybe the 4 development servers the programmers use for their testing. 12 programmers total – SpaceManSpiff Jun 26 '09 at 15:37

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.