$AllVMs = Get-VM | Where-Object { $_.ExtensionData.summary.config.ManagedBy.Type -ne "placeholderVm" } $VMs = $AllVMs | select Name, ` @{n = 'ProvisionedSpaceGBr'; e = { [math]::round($_.ProvisionedSpaceGB, 2) } }, ` @{n = 'UsedSpaceGBr'; e = { [math]::round($_.UsedSpaceGB) } } $BisResult = [System.Collections.ArrayList]@() $Clusters = Get-Datacenter Primary* | Get-Cluster ForEach ($Cluster in $Clusters) { $VMs = $Cluster | Get-VM -Tag "Test" | Where-Object { $_.ExtensionData.summary.config.ManagedBy.Type -ne "placeholderVm" } $Sum = $VMs | Measure-Object -Sum UsedSpaceGB, ProvisionedSpaceGB $obj = [PSCustomObject]@{ Name = $Cluster.Name; UsedSpaceGB = [math]::round(($Sum | Where-Object Property -eq UsedSpaceGB).Sum, 2) ProvisionedSpaceGB = [math]::round(($Sum | Where-Object Property -eq ProvisionedSpaceGB).Sum, 2) } $BisResult.Add($obj) } $MdnResult = [System.Collections.ArrayList]@() $Clusters = Get-Datacenter Secondary* | Get-Cluster ForEach ($Cluster in $Clusters) { $VMs = $Cluster | Get-VM -Tag "Test" | Where-Object { $_.ExtensionData.summary.config.ManagedBy.Type -ne "placeholderVm" } $Sum = $VMs | Measure-Object -Sum UsedSpaceGB, ProvisionedSpaceGB $obj = [PSCustomObject]@{ Name = $Cluster.Name; UsedSpaceGB = [math]::round(($Sum | Where-Object Property -eq UsedSpaceGB).Sum, 2) ProvisionedSpaceGB = [math]::round(($Sum | Where-Object Property -eq ProvisionedSpaceGB).Sum, 2) } $MdnResult.Add($obj) } $MdnTotal = $MdnResult | Measure-Object -Sum UsedSpaceGB, ProvisionedSpaceGB $BisTotal = $BisResult | Measure-Object -Sum UsedSpaceGB, ProvisionedSpaceGB