Skip to content

VirtuallyThatGuy

Anything VMware , PowerCLI, PowerShell, Automation and some Windows

Menu
  • Home
  • PowerCLI
  • VMware
  • Automation
  • Windows
  • About
Menu

How to find the number of VMs running on a Datastore Using PowerCLI – VirtuallyThatGuy

Posted on May 19, 2018December 19, 2025 by VirtuallyThatGuy

I wanted to check the heavy hitters on my Datastores and redistribute the load accordingly. I could use datastore cluster (you need enterprise plus license for this)…. Or alternantively vRealize Operation Manager… but thought why not use powercli? Below is what I came up with… In a larger environment (not my homelab) SDRS is your best bet. I will cover that in a future post.

####​​ Connect to vCenter Server

$vCenters​​ =​​ "uk3p-vc01.lab.local",​​ "hdcp-vc01.lab.local"

 

Connect-VIServer​​ $vCenters

 

####​​ Get Datastores and How many VMs run on them

Get-Datastore​​ |​​ Select​​ Name,​​ @{N="NumVM";E={@($_​​ |​​ Get-VM).Count}},​​ Datacenter,​​ FreeSpaceGB,​​ CapacityGB,​​ Type,Id​​ |​​ Sort​​ Name​​ |​​ Ft​​ -a​​ 

 

#### Get the VMs that run in the those Datastores

Get-Datastore​​ |​​ get-vm​​ |​​ select​​ Name,​​ @{N="Datastore";E={Get-Datastore​​ -VM​​ $_}},​​ @{N="Cluster";E={Get-Cluster​​ -VM​​ $_}}​​ |​​ ft​​ -a

 

​​ 

#### Connect to vCenter Server
$vCenters = "uk3p-vc01.lab.local", "hdcp-vc01.lab.local"

Connect-VIServer $vCenters

#### Get Datastores and How many VMs run on them
Get-Datastore | Select Name, @{N="NumVM";E={@($_ | Get-VM).Count}}, Datacenter, FreeSpaceGB, CapacityGB, Type,Id | Sort Name | Ft -a 

#### Get the VMs that run in the those Datastores
Get-Datastore | get-vm | select Name, @{N="Datastore";E={Get-Datastore -VM $_}}, @{N="Cluster";E={Get-Cluster -VM $_}} | ft -a

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • vROps: Management Pack Troubleshooting
  • Windows AD {Active Directory} (PowerShell) samples
  • Migrate VMs Between vCentres Using Powershell or PowerCLI
  • Set VM Tools to Update Automatically on VM Reboot using powershell
  • Windows Administrator Must Have Powershell Commands

Recent Comments

  • JB on Script: How to get VM with Tag Assignment and export results to csv using PowerCLI or Powershell
  • DL on How to change VCSA root password and bypass BAD PASSWORD: it is based on a dictionary word for vCenter VCSA root account warning
  • 360coolp on How to change VCSA root password and bypass BAD PASSWORD: it is based on a dictionary word for vCenter VCSA root account warning
  • Yogesh on ESXi 8.x, 7.x, 6.x Service sfcbd-watchdog Not Running / Fails to Start – VirtuallyThatGuy
  • VirtuallyThatGuy on ESXi 8.x, 7.x, 6.x Service sfcbd-watchdog Not Running / Fails to Start – VirtuallyThatGuy

Archives

  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017

Categories

  • Automation
  • PowerCLI
  • VMware
  • Windows
© 2026 VirtuallyThatGuy | Powered by Superbs Personal Blog theme