VMware Cloud Community
Bacon_Phat
Contributor
Contributor
Jump to solution

vROps 6.0.1 - Track changes to individual VMDKs (e.x. VMDK I/O)

DISCLAIMER: I am new to vRealize, please be gentle- use big pictures and small words.....

During my latest run at VMWorld, I spent time with the vRealize Operations Engineers and we were trying to get details on how I can monitor for IOPS of a VMDK.  I realize that a TON has changed in v6 so I am hoping this is an option.

Scenario: Multiple VMs on a single datastore, I am trying to isolate a single VM running 5 VMDK's within the shared Datastore- 4 VMDK's are used for databases/transaction logs, on high speed storage.  I am also able to allocate a dedicated amount of IOPS to a Datastore, 15,000 IOPS, from the array.

Discussion question: How do I generate a report (preferably via vRealize) on if I am actually utilizing or able to utilize the full 15,000 IOPS per VMDK? How can I report on each VMDK's use/utilization?

Reply
0 Kudos
1 Solution

Accepted Solutions
greco827
Expert
Expert
Jump to solution

From the VM object level, you can view each individual .vmdk's performance.  VM --> Troubleshooting --> All Metrics --> Virtual Disk --> scsix:x

Aside from coming up with a clever super metric, you'd have to manually take inventory of which VM's have which .vmdk's on which datastore and what those .vmdk's scsi target number is, and then look at each one and create an aggregate manually.  There may be better ways to do this, through powershell or super metrics, but the data is there to be collected one way or another.

vROps_DiskIO_VM.jpg

If you find this or any other answer useful please mark the answer as correct or helpful https://communities.vmware.com/people/greco827/blog

View solution in original post

7 Replies
mark_j
Virtuoso
Virtuoso
Jump to solution

You can report on the Virtual Disk substantiations 0:0,0:1, 0:2, etc to show cmd/sec. That'd show you the per-disk or per-VMDK breakdown of the IOPs. Datastore don't have instantiations of VM perf metrics, however VMs have datastore instantiations that track per stats per Datastore. You'd have to build the view or workflow leveraging the datastore instantiation of the VM object and work around that.

If you find this or any other answer useful please mark the answer as correct or helpful.
Reply
0 Kudos
Bacon_Phat
Contributor
Contributor
Jump to solution

mark.j

   Thanks for the direction!  Can you point me at where I can do this?  I am excited that it can be done, but am overwhelmed with the various options/variables to build with.  Being a newb, what options do I use to get the virtual disk substantiations of the scsi ID's?

Thanks!!

Reply
0 Kudos
mark_j
Virtuoso
Virtuoso
Jump to solution

Here is an example of this:, with instantiations enabled under the Group By tab.

Screen Shot 2015-10-14 at 10.58.01 AM.png

If you find this or any other answer useful please mark the answer as correct or helpful.
Reply
0 Kudos
toprockRS
Enthusiast
Enthusiast
Jump to solution

Is there also a Solution for getting Information which VMDK is causion IOs from the Datastore side of view?

If a VM is spread over multiple datastore I only managed to get the summation displayed but not IOs for VMDKs that reside on a datastore.

Regards

Johannes

Reply
0 Kudos
greco827
Expert
Expert
Jump to solution

From the VM object level, you can view each individual .vmdk's performance.  VM --> Troubleshooting --> All Metrics --> Virtual Disk --> scsix:x

Aside from coming up with a clever super metric, you'd have to manually take inventory of which VM's have which .vmdk's on which datastore and what those .vmdk's scsi target number is, and then look at each one and create an aggregate manually.  There may be better ways to do this, through powershell or super metrics, but the data is there to be collected one way or another.

vROps_DiskIO_VM.jpg

If you find this or any other answer useful please mark the answer as correct or helpful https://communities.vmware.com/people/greco827/blog
toprockRS
Enthusiast
Enthusiast
Jump to solution

I know this but this is not helping if i have a Datastore where different VMs reside on but any of the VMs do have VMDKs on other datastores additionally and i only know that this Datastore is under Heavy load.

Sometimes there are 20 and more VMs on a Datastore and it´d be very hard do go through any of the SCSI Instances and check on which Datastore they are on and see if they are causing heavy load.

Regards

Johannes

Reply
0 Kudos
greco827
Expert
Expert
Jump to solution

I could be wrong, but I'm not sure that what you are looking to do can be done automatically because the .vmdk's themselves are not brought in as child objects to the VM or to the datastore.  If they were , you could build an obejct relationship.  Since there isn't one, I'm not sure there is a way to combine them within vROps.

If you find this or any other answer useful please mark the answer as correct or helpful https://communities.vmware.com/people/greco827/blog
Reply
0 Kudos