[string]$Cluster_str = "WINDOWS1" #ForEach ($Cluster_str in (Get-Cluster | Sort-object Name).Name) { Write-Warning $Cluster_str $x=Get-View -ViewType ClusterComputeResource -Property Name, Summary -Filter @{"Name" = $Cluster_str } | Foreach-Object { $viewThisCluster = $_ Get-View -ViewType VirtualMachine -Property Name, Runtime.PowerState, Summary.Runtime.MinRequiredEVCModeKey -SearchRoot $viewThisCluster.MoRef | Foreach-Object { $z = $_ New-Object -Type PSObject -Property ([ordered]@{ Name = $_.Name PowerState = $_.Runtime.PowerState VMEVCMode = $_.Summary.Runtime.MinRequiredEVCModeKey ClusterEVCMode = $viewThisCluster.Summary.CurrentEVCModeKey ClusterName = $viewThisCluster.Name #VMHost = (Get-VM $_.Name | Get-VMHost).Name }) } } #} $x | where-object { $_.VMEVCMode -eq 'intel-broadwell' -or $_.VMEVCMode -eq 'intel-haswell' } | Format-Table