VMware Cloud Community
vmhyperv
Contributor
Contributor
Jump to solution

Need Help in modifying Script for finding No of vCPU and Memory reservation in VC

Hi,

Need help for modifying the script  so that its can exctract the report at entire vc center level instead of  each Cluster level.

Thanks

Kr

0 Kudos
1 Solution

Accepted Solutions
Zsoldier
Expert
Expert
Jump to solution

Try this instead:

$vmsInfo = Get-VM
#Creating array to place new object
$reportdata = @()
Foreach ($vm in $vmsInfo)
{
#Creating new object
$vmInfo = "" | Select Name, CPUReservationMHz, MemoryReservationGB
$vmInfo.Name = $vm.Name
$vmInfo.CPUReservationMHz = $vm.ExtensionData.ResourceConfig.CpuAllocation.Reservation
$vmInfo.MemoryReservationGB = $vm.ExtensionData.ResourceConfig.MemoryAllocation.Reservation / 1024;
#Inserting data into new object.
$reportdata += $vminfo
}
$reportdata

Chris Nakagaki (中垣浩一)
Blog: https://tech.zsoldier.com
Twitter: @zsoldier

View solution in original post

0 Kudos
4 Replies
Zsoldier
Expert
Expert
Jump to solution

Just change the script to this:

$vmsInfo = Get-VM | % {
$vmInfo = New-Object PSObject -Property @{Name = ''; MemoryReservationGB = 0; CPUReservationMHz = 0;};
$vmInfo.Name = $_.Name;
$vmInfo.CPUReservationMHz = $_.ExtensionData.ResourceConfig.CpuAllocation.Reservation
$vmInfo.MemoryReservationGB = $_.ExtensionData.ResourceConfig.MemoryAllocation.Reservation / 1024;
return $vmInfo;
}

Chris Nakagaki (中垣浩一)
Blog: https://tech.zsoldier.com
Twitter: @zsoldier
vmhyperv
Contributor
Contributor
Jump to solution

Thanks for Prompt response.But its generating  blank output.Its shows zero CPU and Memory Reservation though  the previous attached script genrate report with  CPu and Memory reservation

but each time we need to enter Cluster name.Kindly Suggest.

Thanks

Kr

0 Kudos
Zsoldier
Expert
Expert
Jump to solution

Try this instead:

$vmsInfo = Get-VM
#Creating array to place new object
$reportdata = @()
Foreach ($vm in $vmsInfo)
{
#Creating new object
$vmInfo = "" | Select Name, CPUReservationMHz, MemoryReservationGB
$vmInfo.Name = $vm.Name
$vmInfo.CPUReservationMHz = $vm.ExtensionData.ResourceConfig.CpuAllocation.Reservation
$vmInfo.MemoryReservationGB = $vm.ExtensionData.ResourceConfig.MemoryAllocation.Reservation / 1024;
#Inserting data into new object.
$reportdata += $vminfo
}
$reportdata

Chris Nakagaki (中垣浩一)
Blog: https://tech.zsoldier.com
Twitter: @zsoldier
0 Kudos
vmhyperv
Contributor
Contributor
Jump to solution

Thanks !! It worked perfectly this time

0 Kudos