首页 > 解决方案 > 用于更新 Windows Server 故障转移群集中群集 IP 资源名称的 Powershell 命令

问题描述

希望这很容易-

我正在编写一种在 IP 更改时更新集群 Windows 服务器的方法。我差不多完成了,但出于显示和监控的目的,我想标准化“集群 IP 地址”资源的名称。默认情况下,第一个 IP 资源被命名为“集群 IP 地址”,每个额外的 IP 被称为“集群 IP 地址”。当我更新 IP 时,名称中仍会包含旧 IP。我可以通过故障转移群集管理器 GUI 更改它,但我想使用 Powershell 更改它,并且它没有记录为 Microsoft 文档中的可配置参数。

这将在运行 Windows Server 2012 及更高版本的系统上。每个部署最多有两个集群 IP 地址资源。这用于 SQL 可用性组。我尝试更新与资源名称相关的集群注册表项并更改 ClusterObject.Name,这是不可配置的。

要检查资源名称,请运行以下命令。在我的情况下,有两个“集群 IP 地址”和“集群 IP 地址(原始第二个 IP)”。

Get-ClusterResource

然后更新第二个集群 IP 地址

Get-ClusterResource -Name "Cluster IP Address <Original 2nd IP>" | Set-ClusterParameter -Multiple @{"Address"="<New 2nd IP>";"Network"="Cluster Network 2"}

在此之后,IP 将成功更改,但运行 Get-ClusterResource 仍将返回“Cluster IP Address (Original 2nd IP)”作为第二个 Cluster IP Address 资源的名称,因为我们更改了 IP 而不是名称。名称不是可以使用 Set-ClusterParameter 更改的参数。

tl;dr:我正在寻找一个 Powershell 命令来更改集群 IP 地址资源的名称。

标签: windowspowershellwindows-clustering

解决方案


好吧,它实际上比我想象的要简单得多。它不是一个参数。

(Get-ClusterResource -Name "Cluster IP Address <Original 2nd IP>").Name = "Cluster IP Address <New 2nd IP>"

推荐阅读