Hyper-V Powershell Quick Tips SCVMM

SCVMM DataSize Property

Quick Tip!!

So I was asked to create a custom property that gives a quick overview of the total size for the virtual disks on a VM

So, leveraging of my DataStore script, I came up with the below..

Enjoy Smile

Note: This assumes you have created your custom property already

$VMS = Get-scvirtualmachine 
Foreach ($VM in $VMS)
    $DZ = $null
    $dzprop = Get-SCCustomProperty -Name Datasize
    $DataSize = Get-SCCustomPropertyValue -CustomProperty $dzprop -InputObject $VM
    IF ($DataSize.Value -eq $null) 
        $VHDS = Get-SCVirtualHardDisk -VM $VM 
        $storage = 0
        $DZ = 0
        ForEach ($VHD in $VHDS)
            $Storage += $VHD.Size
        $storage = $storage/1GB
        $storage = [math]::Round($storage)
        $DZ =  [string]$storage
        $DZ = $DZ + "GB"
        Write-Host -ForeGroundColor Green "Setting DataSize property for $VM to $DZ"
        Set-SCCustomPropertyValue -CustomProperty $dzprop -InputObject $VM -Value $DZ
        $DSV = $DataSize.Value
        Write-Host -ForegroundColor Yellow "DataConfig exists for $VM with value '$DSV'"

Leave a Reply