vCenterサーバ 仮想マシンの名前から検索してMACアドレス情報をPowerCLIコマンドで取得する方法

vCenterサーバ 仮想マシンの名前から検索してMACアドレス情報をPowerCLIコマンドで取得する方法に関する情報です。

 

情報は海外のVMwareのフォーラムにありました。

 

Ansibleとか使わずにPowerCLIを使って簡単に取得できます。


以下は質問の抜粋です。

 

3 つの列 (VM 名、@MAC のタイプ (手動または割り当て済み)、@MAC) を持つ html ドキュメント (convert-html を使用) を提供するための助けが必要です。

フォーラムで検索したところ、すべての VM のすべての MAC アドレスを取得するコマンド ラインが見つかりました。名前を選択、@{Name="MAC"; expression={foreach($nic in (Get-View $_.ID).guest.net) {$nic.macAddress}}} ただし、パラメーターは手動または割り当て済みか、表示されません。

私たちを手伝ってくれますか ?

ご協力ありがとうございました。

 

 

続いて、回答の抜粋です。

 

$report =@() 
Get-VM "*production*" | Get-View | %{ 
 $VMname = $_.Name 
 $_.Config.Hardware.Device | where {$_.DeviceInfo.Label -match "Network Adapter"} | %{
        $row = "" | Select VM, MAC, Type 
        $row.VM = $VMname 
        $row.MAC = $_.MacAddress 
        $row.Type = $_.AddressType 
        $report += $row 
  } 
  } 
$report 


参考までに。

 

「引用元」
Get Mac address for Guest-VM
https://communities.vmware.com/t5/VMware-PowerCLI-Discussions/Get-Mac-address-for-Guest-VM/td-p/1182601

 

【Amazon.co.jp限定】 Dell S2421HS 23.8インチ モニター (3年間無輝点交換保証/フルHD/IPS非光沢/DP・HDMI/縦横回転・高さ調節/AMD FreeSync)