Simple VM reporting in vCloud with PowerCLI

Table of Contents


Its clear that many people are having a challenge of not having a great view of  VMs and their location in the organization. This is all due to the unique requirement of VMs to exist inside vApps in vCloud director, this can be solved with a Get-CIVM command,which returns information about your VMs, but still it’s missing the storage assignment . Here is a straightforward script to report on the VM resources currently in use inside your vCloud organization:

$vms = get-civm

$objects = @()

foreach($vm in $vms)


 $hardware = $vm.ExtensionData.GetVirtualHardwareSection()

 $diskMB = (($hardware.Item | where {$.resourcetype.value -eq “17”}) | %{$.hostresource[0].anyattr[0].”#text”} | Measure-Object -Sum).sum

 $row = New-Object PSObject -Property @{“vapp” = $vm.vapp; “name”=$vm.Name;”cpuCount”=$vm.CpuCount;”memoryGB”=$vm.MemoryGB;”storageGB”=($diskMB/1024)}

 $objects += $row



# Use select object to get the column order right. Sort by vApp. Force table formatting and auto-width.

$objects | select-Object name,vapp,cpuCount,memoryGB,storageGB | Sort-Object -Property vapp | Format-Table –AutoSize

This can be exported to a CSV by using Export-CSV or just run the report.  

More posts

Dedicated Servers Quick Guide

What is a Dedicated Servers? Why bother using a dedicated server over a VPS or Shared Hosting?A dedicated server is a server 100% dedicated to your website/project or business needs.

Enhanced Storage Features on 5.1

Enhanced Storage Features on 5.1 SESMATEnhanced Storage features introduced by 5.1 VMFS File Sharing Limits In previous versions of vSphere, the maximum number of hosts which could share a read-only

VMware trademark guide

VMware trademark guide a very important resource for bloggers, technical writer .VMware employees and partners who have less interest in blogs .the guide is intended to provide guidance regarding the