クラスター内のすべての VM のプロビジョニングされたディスク サイズを含む html レポートを取得しようとしています。クラスター内のすべての VM を次のように一覧表示しようとしています。
$VMs = get-ClusterGroup | ? {$_.GroupType -eq "VirtualMachine" } | Get-VM
そして、これは魅力のように機能します。ただし、ループを作成しようとすると:
foreach ($VM in $VMs)
{
Get-VM -VMName $VM.Name | Select-Object VMId | Get-VHD
}
これを実行しているときに、現在のクラスター ノードに配置されていない VM ごとにエラーが発生します。したがって、各ノードごとに次のコマンドを実行しています。
Get-VM -VMName * | Select-Object VMId | Get-VHD | ConvertTo-HTML -Proprerty path,computername,vhdtype,@{label='Size(GB)');expression={$_.filesize/1gb -as [int]}} > report.html
そして、これも魅力のように機能します。ただし、これはクラスター内の各 Hyper-V ホストにログインするために必要です。1 つのノードからクラスター内のすべての VM を使用して HTML で出力を取得するにはどうすればよいですか?