如何使用Powershell在给定群集中的特定节点上查找服务列表?
此群集组ServerName_1
和ServerName_2
中有2个节点,我正在尝试在Server_name1
上获取服务。
我已尝试运行以下命令,但我没有收到任何输出或错误。
我尝试使用以下命令,我可以得到结果:
PS C:\Users\sd> Get-ClusterGroup | Where-Object {$_.State -EQ "Online"}
Name OwnerNode State
---- --------- -----
Service_1 ServerName_1 Online
Service_2 ServerName_2 Online
但是,当我尝试使用相同的命令提取OwnerNode时,我没有看到任何结果,如下所示:
PS C:\Users\sd> Get-ClusterGroup | Where-Object {$_.OwnerNode -EQ <ServerName_1>}
PS C:\Users\sd>
由于我没有看到任何输出,我不确定我执行的命令是否正确?
我需要这个,所以我可以单独在ServerName_1上启动特定服务。
PS C:\Users\sd> Start-ClusterGroup -Name <ServiceName> | Where-Object
{ $_.OwnerNode -eq "<ServerName1>" }
PS C:\Users\sd>
答案 0 :(得分:1)
您的代码中不需要< >
,更新
Get-ClusterGroup | Where-Object {$_.OwnerNode -EQ <ServerName_1>}
到
Get-ClusterGroup | Where-Object {$_.OwnerNode -EQ "ServerName_1"}
答案 1 :(得分:0)
我对此进行了测试,它按预期工作:
列出ClusterGrop名称 -
Get-ClusterNode -Name "Server_name" | Get-ClusterGroup
另外, 列出ClusterGroup服务 -
Get-ClusterNode -Name "Server_name" | Get-ClusterResource