Virtu-Al.Net

Virtually everything is poshable

PowerCLI: Host Hardware One-Liner

A quick one-liner which gives you an outline of your Host hardware information:

Get-VMHost |Sort Name |Get-View |
Select Name,
@{N
=Type;E={$_.Hardware.SystemInfo.Vendor+ + $_.Hardware.SystemInfo.Model}},
@{N
=CPU;E={PROC: + $_.Hardware.CpuInfo.NumCpuPackages + CORES: + $_.Hardware.CpuInfo.NumCpuCores + MHZ: + [math]::round($_.Hardware.CpuInfo.Hz / 1000000, 0)}},
@{N
=MEM;E={“” + [math]::round($_.Hardware.MemorySize / 1GB, 0) + GB}} | Export-Csv c:\hostinfo.csv

Output Example:

Name Type CPU MEM
prod01.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2993 32 GB
prod02.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2993 32 GB
prod03.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2993 32 GB
prod04.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 4 MHZ: 2993 16 GB
tst10.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2660 16 GB
tst11.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2660 16 GB
tst12.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2660 16 GB
tst13.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2992 32 GB
tst14.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2992 32 GB
tst15.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2992 32 GB
tst16.domain.local Dell Inc. PowerEdge 2950 PROC: 2 CORES: 8 MHZ: 2992 32 GB

, ,

7 Responses to “PowerCLI: Host Hardware One-Liner”

  • Mark M says:

    How can I get the datacenter where the hardware resides?

  • Virtu-Al says:

    @Mark M
    Not in front of my VI at the moment but try this:

    Get-VMHost |Sort Name |Get-View |
    Select @{N=“DataCenter“;E={Get-VMHost $_ | Get-Datacenter}}, Name,
    @{N=“Type“;E={$_.Hardware.SystemInfo.Vendor+ “ “ + $_.Hardware.SystemInfo.Model}},
    @{N=“CPU“;E={“PROC:“ + $_.Hardware.CpuInfo.NumCpuPackages + “ CORES:“ + $_.Hardware.CpuInfo.NumCpuCores + “ MHZ: “ + [math]::round($_.Hardware.CpuInfo.Hz / 1000000, 0)}},
    @{N=“MEM“;E={“” + [math]::round($_.Hardware.MemorySize / 1GB, 0) + “ GB“}} | Export-Csv c:\hostinfo.csv

  • WB says:

    Can we return the hosts hardware serial number too?

  • Virtu-Al says:

    Unfortunatly the serial number is a bit of a pain as different vendors put it in different places, have you checked Carters CIM script ?

  • Daryl says:

    Anyone figure out how to get the host’s serial number? I can see it in VC under the hosts’ ‘Hardware Status’ ‘System summary’ information.

  • chad king says:

    Hey man,
    Saved again by your amazing scripts. You should really add this to the vmware community powerpack. Hell I would would If I knew how. I really need this information for “socket” licensing stuff. lol.

Leave a Reply

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

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>