Нам нужен способ определить из кода, какой узел кластера приложений в данный момент активен. Есть ли способ сделать это с помощью С#?
Как определить активный узел в отказоустойчивом кластере
comment
возможный дубликат отказоустойчивого кластера SQL Server - определите активный узел
- person bzlm   schedule 20.12.2010
comment
Это кластер, отличный от SQL. Мне нужен способ определить текущий активный узел в кластере приложений. У кого-нибудь есть способ сделать это?
- person Nancy A   schedule 01.02.2011
comment
Довольно размытый вопрос. О каком кластере приложений вы говорите?
- person Daniel Hilgarth   schedule 23.02.2011
comment
вы использовали Windows Server 2012 R2?
- person PreguntonCojoneroCabrón   schedule 20.09.2018
Ответы (1)
Это не код C#, это PowerShell. Итак, это не ответ, но мне нужно решение PowerShell для получения узлов в целом (не обязательно активного узла), и этот вопрос возник в моем поиске в Google. 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
person
Slogmeister Extraordinaire
schedule
07.12.2020