As a general storage nerd, I'm always interested in new benchmarking tools, especially if they can make it easy to help get the numbers people need.
VMware’s new fling (e.g. unsupported experimental software) called IO Analyzer is pretty cool. Quickly, its a preconfigured virtual machine that gives you a web interface to run performance benchmarks using IOmeter (excellent software) and collect the relevant performance statistics, all in 1 clean interface. I like it.
While it does come with instructions, I thought I'd put up a post on how to install it and run through a first benchmarking session.
- First, download the IO analyzer OVA from VMware’s Flings site.
- Next, deploy the OVA just like any other Virtual Appliance:
As the installation instructions state, select thick provisioned disks for the best performance evaluation:
- Once the virtual machine appliance has been uploaded and powered on, give it about 2 minutes to properly boot for the first time. Then, open the virtual machine’s console:
If you are like me, you don’t have a DHCP server on your network, so you will need to setup manual networking. If you do have a DHCP server and the VM picked up a reasonable IP address that can access your ESXi hosts, then skip ahead :). If not, follow along:
After the networking is configure, you MUST login to the console of the VM, or nothing will work. Do so now using the default password and username (root / vmware). You will end up with a grey screen – this is normal:
Now, open up your web browser and shoot over to the IP address of your VM (note, don’t use the URL that the text GUI spits out, it doesn’t work):
Click on the Setup/Run section:
Add the hostname or IP address of the host that your appliance is running on, along with credentials to access. IO Analyzer needs to used this in order to run resxtop against that host during the test to collect data. Then, add the VM’s information:
The key here is to select a Workload spec that matches your needs. I tend to like the ones listed at the bottom, specifically the 8k and 4k OLTP workloads – they are reasonable realistic for server type workloads. If you have a different workload (e.g. VDI), you'll need to choose something else. Developing a workload spec is something we'll tackle in a future article).
Enter a reasonable run duration (at least 2 minutes – preferably more like 30 minutes) and hit Run
While the test is running, if you are super curious, you can take a look at the VM’s console and watch IOmeter running:
I'd advise against playing with it while its running :)
When it completes, the appliance will let you know:
Do as it says and click the results tab:
And click View Summary for your test:
Excellent! As you can see, my LUN was able to support 25,000 IOPs at about 100MBit on a Database workload. Great to know! Also, we can see that it basically only used vmhba3, which is a good hint for me that I need to check my patching and ensure I've got proper balancing setup (PowerPath/VE to the rescue!).
Hope you enjoy!