2

我有一个终端服务器,它是一个独立服务器和 4 个使用 Windows 故障转移群集管理器的数据库服务器(远程服务器)。我需要获取所有数据库服务器的集群状态,我使用的命令是

Get-ClusterGroup -Cluster ClusterServerName

虽然此命令在从其中一个数据库服务器运行时运行良好,但如果我尝试从终端服务器执行相同的命令,则会出现以下错误:

Get-ClusterGroup :术语“Get-ClusterGroup”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。

我已经检查了终端服务器和远程计算机的 PowerShell 版本,它们是相同的(v4.0)。有没有办法可以从终端服务器本身运行上述命令?

4

3 回答 3

2

独立服务器没有安装故障转移集群模块。您可以从服务器管理器中的角色和功能菜单安装它。它将在功能页面中。安装后,您的错误将不会再次出现。

在 PowerShell 版本 3.0 及更高版本中,您不必显式加载模块。一旦调用来自模块的命令,它将自动加载。

于 2017-09-05T06:53:22.213 回答
1

与 Windows 故障转移群集关联的 cmdlet 是称为 FailoverClusters 的模块的一部分。首次启动 PowerShell 时,默认情况下不会加载此模块,即使从集群节点的控制台也是如此。要加载此 cmdlet:

Import-Module FailoverClusters

您始终可以使用以下方式获取可用模块的列表

Get-Module -ListAvailable

如果该模块不存在,那么您应该下载它然后导入 psm1 文件

为此还要阅读文档:

故障转移群集模块使用

希望能帮助到你

于 2017-09-05T06:14:04.453 回答
0

我不确定接受的答案对于旧版本是否正确,但对于 Powershell 5.1.x 上的我来说,这是需要的:

Import-Module Microsoft.SME.FailoverCluster
于 2020-08-03T13:02:35.533 回答