I was curious to learn how many IOPS our VM's and Hosts were using and started looking at how to calculate this... manually the best way seems to be to use the Performance Charts and the values disk Read Requests and Write Requests and divide by the sample rate (20 seconds by default)... I have seen some scripts around which will take the values over a longer period so I may look to use these at some point...
First quick question, is the Commands Issued value the total of Read and Write?
The other question is, when I set the Chart up at the VM level I have two objects to pick, one is blank and the other is the name of the VM... if I pick just the one with the VM name the charts do not seem to load, is this normal?
Also when doing this at the host level I end up with 6 objects to choose from:
When I select them all I only get 5 (Not the one with the hostname)... I have 4 LUNs so are the blanks the LUNs? (They do have actual values in the latest, maximum and minimum columns...) if they are how can I match them with the actual LUN's???
Finally! just trying to understand the affect of virtualization here... what is exactly a read or write? Is it a literal translation of guest activity, or is it adjusted?
For example if I have a guest using an application that has a 4kb block size, is a Read Request as seen by VMware a single 4kb read? And obviously at the other extreme a guest which has an application that uses a 128kb block size, is a Read Request seen for that single block? Or does it depend upon the VMFS block size etc?!
Check out the following post for an example of how to pull the maximum IOPS data per virtual machine using PowerShell and vSphere PowerCLI:
Yes, Commands is the sum of reads + writes. Those can be per virtual machine, so yes that is the amount of read and write operations that each virtual machine is generating (depending on what counter you're looking at).
Although a bit more work, I've always liked using esxtop to view IOPS data on a per volume or per virtual machine basis. You can run esxtop in batch mode and export the data back to tools like Perfmon for easy viewing and manipulation.