I changed this around in my last script to verify the operational status of a host via SCVMM instead of the Hyper-V server itself. function CheckHostStatus { $HostState = Get-VMHost $VMHost if (($HostState.ComputerState -match "Responding") -and ($HostState.ClusterNodeStatus -match "Running") -and ($HostState.VirtualServerState -match "Running") -and ($HostState.VirtualServerStateString -match "Running") -and ($HostState.CommunicationStateString -match "Responding") -and ($HostState.CommunicationState -match "Responding")) [...]