我想要监控我们 Hyper-V 上所有虚拟机的复制状态。
我们所有的虚拟机都进行了复制。当复制失败或虚拟机从复制中移除时,我想知道。我找到了以下链接:
https://www.experts-exchange.com/articles/33961/Monitoring-Hyper-V-and-Hyper-V-Replica.html
到这里,我的工作已经完成了 90%。我可以获得完整的复制详细信息并自动收到电子邮件。但只有一个问题:获取虚拟机复制信息仅提供已启用复制的所有虚拟机的状态。
我想要了解未启用复制的虚拟机列表。
您能帮我使用 PS 脚本来生成该列表吗?
答案1
使用 ChatGPT 得到答案:
# Get all Hyper-V VMs
$vmList = Get-VM
# Output header
Write-Host "VM Name`tReplication Status"
# Iterate through each VM
foreach ($vm in $vmList) {
$vmName = $vm.Name
# Get replication status
$replication = Get-VMReplication -VMName $vmName -ErrorAction SilentlyContinue
if ($replication -eq $null) {
$replicationStatus = "NOT REPLICATING"
} else {
$replicationStatus = $replication.ReplicationHealth
}
# Output VM name and replication status
Write-Host "$vmName`t$replicationStatus"
}