我们需要一种方法来从代码中确定应用程序集群的哪个节点当前处于事件状态。有没有办法使用 C# 执行此操作?
最佳答案
这不是 C# 代码,而是 PowerShell。所以,这不是答案,但我需要一个 PowerShell 解决方案来获取一般节点(不一定是事件节点),这个问题出现在我的谷歌搜索中。 IMO,PowerShell FailoverClusters 模块编写得相当糟糕,所以我必须恢复到(大部分)非 PowerShell 对象(如 WMI)才能正确完成它。
$Clusters=Get-ADComputer -Server "<specific domain controller (optional)" -LDAPFilter "(servicePrincipalName=*MSClusterVirtualServer/*)" -SearchBase "OU=Servers,DC=<domain name>,DC=com" | Select-Object -ExpandProperty DNSHostName
$ClusterNodes=$Clusters | ForEach-Object { Get-WMIObject -Namespace "root\MSCluster" -ComputerName $_ -Query "SELECT Name FROM MSCluster_Node" -EnableAllPrivileges } | Select-Object -ExpandProperty Name
关于c# - 如何确定故障转移群集中的事件节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4370774/