Skip to main content
  1. Posts/

Identifying storage intensive VMs in Hyper-V 2016 Clusters

·271 words·2 mins

We’ve all had the case where there was a volume running hot on your cluster and you spend ages wrestling with perf counters to try to find that VM that’s causing your storage to burn. Well let me introduce you to a magical new command in Windows Server 2016

Get-StorageQoSFlow

This miracle command can give you insights on all the VHD(x)s running on your cluster, revealing IOPS, Latency and Bandwidth stats for them all without the need for large-scale monitoring solutions.

Let’s look at a few examples of how we can use this to our advantage, starting with the top 5 busiest VHD(x)s

Get-StorageQoSFlow -CimSession ClusterName | Sort-Object InitiatorIOPS -Descending | select -First 5
Get-StorageQoSFlow Top 5

In my example above, we can see straight away both the busiest machine, and exactly which of its disks is creating the load.

Next let’s move on to checking the performance of a specific VM, which would look like this

Get-StorageQoSFlow -InitiatorName VMName -CimSession ClusterName
Get-StorageQoSFlow Specific VM

Now these two uses of the command alone have already helped a fellow admin find several VMs that were thought to be idle, actually consuming around about 15,000 IOPS due to a few rough processes. These were precious IOPS that were better served being available to more critical services.

For bonus points, here are a few more commands to look at when looking for storage stats

# Get stats for any CSV
Get-StorageQoSVolume -CimSession ClusterName

# Get stats for a Storage Spaces Direct Cluster
Get-StorageSubSystem clu*  | Get-StorageHealthReport

# Get stats from the health service for all CSVs
Get-Volume -CimSession ClusterName | ?{$_.FileSystem -eq 'CSVFS'} | Get-StorageHealthReport -CimSession ClusterName

Until next time!

Ben Thomas
Author
Ben Thomas

Ben Thomas is a Senior Solutions Engineer at Veeam with a deep passion for community, virtualization, and cloud technologies.

Prior to joining Veeam, he spent over 13 years at Datacom, where he progressed from the service desk to a senior advisory role specializing in Hybrid and Private Cloud solutions. His long-standing contributions to the tech community have been recognized with both the Microsoft MVP and Veeam Vanguard awards.

It was his passion as a Vanguard that ultimately led him to his role at Veeam, allowing him to work on the technology he advocates for every day. This blog is where Ben shares his hands-on experiences and real-world solutions from his work and home lab.

Related