VMware storage admins are usually most concerned about storage performance of their storage system. There are many storage performances tools to choose from, and today we’ll have a look at a new one from VMware.
VMware has released recently a new free utility called Storage Performance Tester via their lab of Office of the CTO. VMware Flings are free tools that usually make their apparition at the VMware labs website and some of them if they’re good that they’re later integrated into VMware vSphere.
A while back this was the case for example with a HTML 5 host client that was released first as a Fling and then integrated slowly into the ESXi hypervisor that is base part of the vSphere suite.
Storage Performance Tester is a performance test tool allowing you to measure IOPS, latency and CPU cycles per I/O for ESXi storage stack.
The tool is able to automate all the testing steps with a customized VMs deployment, I/O workload running and storage performance analysis. All this is fully customizable via config.ini file.
Yes, the best storage performance tools for virtualization usually deploy a small VM that is actually measured the performance for. The performance is displayed through different graphical charts via web server on a port 8000.
The use of this tool is very simple as the user needs just to enter a one command line and wait for the performance report displayed via the HTTP server.
Storage Performance Tester is developer friendly tool that can be used to test the maximum performance of your storage with different drivers/firmware combinations and setups for vSphere.
VMware Storage Performance Tester Architecture
You can find the Storage Performance Tester product page at VMware Flings site.
VMware Storage Performance Tester Installation and test
The steps
First step – Download the zip file from VMware and uncompressed it to a temp folder.
Second Step – Install a Debian, RedHat, Fedora or Ubuntu Linux VM.
Third step – Install sshpass
Use this command for Ubuntu (my lab case):
1 |
sudo apt install sshpass |
Install SSHpass helper tool
Then make sure that python3 is already installed.
The VMware Performance Tester leverages Flexible IO tester tool (FIO) which is a third party tool. The FIO is an open-source synthetic benchmark tool first developed by Jens Axboe. FIO can generate various IO workloads such as sequential reads or random writes, synchronous or asynchronous, all based on the options provided by the user.
check if the third-party tool, fio, could work well by executing those commands:
1 |
#./fio --version |
And also, you’ll need to check if ovftool could work as this one is used to deploy the VM to the ESXi host to perform the test, in automated maner.
1 |
#./ovftool/ovftool --version |
Make sure there is at least 2Gb of Disk free space.
Additionally, make sure that the host you willing to test for a storage performance is not managed by vCenter as the tool will throw a warning.
There is a detailed video on how to use this tool so we won’t go into further details here. Additionally, the developer also provides a detailed PDF where you can find
The Config File can be modified
The tool can get quick performance results. In fact, according to the developer, you can get the performance results in 2 min. Additionally, there is a config file within the directory that can be modified to keep only the tests you wish.
The tool is developer friendly so users only need to download it to a Linux machine and run it via a single command against a VMware ESXi host.
Storage test results
The test results are presented via HTTP server. If you don’t have http server within your environment, there are also instructions on how to quickly setup one.
In my case I wasn’t able to perform the whole setup including the tests due the lack of hardware to test the tool on.
The test results look like this one below (image from the VMware labs product page).
SPerf reporting screen
Final Words
VMware Storage Performance Fling tool is a tool which you run on a Linux machine. You only need a single line that executes the tests. Storage performance tester executes remotely against ESXi host and deploys a VM on target datastore.
Yes, that’s all it’s needed. You only specify an ESXi host (via IP or FQDN) and a datastore to where you want to deploy the test VM and execute the tests.
You can specify multiple datastores at the same time which gives you a possibility to test several datastores that are visible to the host.
The tool seems very light weight and easy to use when you follow the PDF and the video. I’d definitely highly recommend it if you’re looking quickly to test storage performance of your ESXi host.