使用 PowerShell 管理 Azure Stack HCI 和 Windows Server 集群
适用于:Azure Stack HCI 版本 22H2 和 21H2;Windows Server 2022、Windows Server 2019
Windows PowerShell 可用于在 Azure Stack HCI 和 Windows Server 群集上管理资源并配置功能。
你可以从远程计算机(而不是群集中的主机服务器)管理群集。 此远程计算机称为管理计算机。
注意
从某一管理计算机运行 PowerShell 命令时,请将 -Name
或 -Cluster
参数与所管理群集的名称配合使用。 此外,在将 -ComputerName
参数用于服务器节点时,需要指定完全限定的域名 (FQDN)。
有关使用 PowerShell 管理群集的完整参考文档,请参阅 FailoverCluster 参考。
使用 Windows PowerShell
Windows PowerShell 用于执行本文中的所有任务。 建议将应用固定到任务栏以方便操作。
如果以下 cmdlet 在 PowerShell 会话中不可用,可能需要使用 PowerShell 命令 Add-WindowsFeature RSAT-Clustering-PowerShell
添加适用于 Windows PowerShell 功能的 Failover Cluster
模块。
注意
从 Windows 10 的 2018 年 10 月版更新开始,RSAT 作为 Windows 10 中的一组“按需功能”提供。 对于早于 Windows 10 22H2 的版本,只需转到“设置”“>应用”“应用 > & 功能>”“可选功能>”“添加功能 > RSAT:故障转移群集工具”,然后选择“安装”。 对于Windows 10 22H2 和Windows 11,请转到“设置”“>系统>”“可选功能>”“添加功能 > RSAT:故障转移群集工具”,然后选择“添加”。 若要查看操作进度,请单击“后退”按钮,在“管理可选功能”页上查看状态。 添加的功能将持续Windows 10版本升级。
查看群集设置和资源
获取名为 Cluster1 的群集的相关信息:
Get-Cluster -Name Cluster1
获取 Cluster1 中一个或多个节点或服务器的相关信息:
Get-ClusterNode -Cluster Cluster1
若要查看群集节点上安装了哪些 Windows 功能,请使用 Get-WindowsFeature
cmdlet。 例如:
Get-WindowsFeature -ComputerName Server1
若要查看网络适配器及其属性(例如名称、IPv4 地址和 VLAN ID),请使用以下命令:
Get-NetAdapter -CimSession Server1 | Where Status -Eq "Up" | Sort InterfaceAlias | Format-Table Name, InterfaceDescription, Status, LinkSpeed, VLANID, MacAddress
若要查看 Hyper-V 虚拟交换机以及物理网络适配器的分组方式,请使用以下命令:
Get-VMSwitch -ComputerName Server1
若要查看主机虚拟网络适配器,请使用以下命令:
Get-VMNetworkAdapter -ComputerName Server1
若要查看如何启用存储空间直通,请使用以下命令:
Get-CimSession -ComputerName Server1 | Get-ClusterStorageSpacesDirect
启动或停止群集
使用 Start-Cluster
和 Stop-Cluster
cmdlet 为群集添加或删除服务器节点。 如需更多示例和用法信息,请查看 Start-Cluster 和 Stop-Cluster 参考文档。
在群集中尚未启动群集服务的所有服务器节点上启动该服务:
Start-Cluster -Name Cluster1
以下示例会停止名为 Cluster1 的群集中所有节点上的群集服务,这将停止群集中配置的所有服务和应用程序:
Stop-Cluster -Name Cluster1
添加或删除服务器
使用 Add-ClusterNode
和 Remove-ClusterNode
cmdlet 为群集添加或删除服务器节点。 如需更多示例和用法信息,请查看 Add-ClusterNode 和 Remove-ClusterNode 参考文档。
以下示例将名为 Node4 的服务器添加到名为 Cluster1 的群集。 请首先确保服务器已运行并连接到群集网络。
Add-ClusterNode -Cluster Cluster1 -Name Node4
以下示例从群集 Cluster1 中删除名为 node4 的节点:
Remove-ClusterNode -Cluster Cluster1 -Name Node4
注意
如果该节点已添加到某一个服务器,请参阅这些手动步骤来重新配置存储空间直通。
设置群集见证
使用 Set-ClusterQuorum
cmdlet 设置群集的仲裁见证选项。 如需更多示例和用法信息,请查看 Set-ClusterQuorum 参考文档。
以下示例将仲裁配置更改为在群集 Cluster1 上使用云见证:
Set-ClusterQuorum -Cluster Cluster1 -CloudWitness
以下示例为文件共享见证使用 \fileserver\fsw 中的磁盘资源,将群集 Cluster1 上的仲裁配置更改为“节点和文件共享多数”。
Set-ClusterQuorum -Cluster Cluster1 -NodeAndFileShareMajority \\fileserver\fsw
启用存储空间直通
使用 Enable-ClusterStorageSpacesDirect
cmdlet 在群集上启用存储空间直通。 如需更多示例和用法信息,请查看 Enable-ClusterStorageSpacesDirect 参考文档。
以下示例在 Server1 上启用存储空间直通:
Enable-ClusterStorageSpacesDirect -CimSession Cluster1
配置 Hyper-V 主机
使用 Set-VMHost
cmdlet 来配置各种 Hyper-V 主机设置,例如 VHD 和 VM 路径、实时迁移、存储迁移、身份验证、NUMA 跨越,等等。 如需更多示例和用法信息,请查看 Enable-ClusterStorageSpacesDirect 参考文档。
以下示例为主机服务器 Server1 上的虚拟硬盘和 VM 指定新的默认位置:
Set-VMHost -ComputerName Server1 -VirtualHardDiskPath "C:\Hyper-V\Virtual Hard Disks" -VirtualMachinePath "C:\Hyper-V\Configuration Files"
以下示例将主机服务器 Server1 配置为允许同时进行 10 次实时迁移和存储迁移:
Set-VMHost -ComputerName Server1 -MaximumVirtualMachineMigrations 10 -MaximumStorageMigrations 10
以下示例将主机服务器 Server1 配置为使用 Kerberos 对传入的实时迁移进行身份验证:
Set-VMHost -ComputerName Server1 -VirtualMachineMigrationAuthenticationType Kerberos
删除群集
删除(销毁)群集之前,必须先从 Azure 中注销该群集。 有关详细信息,请参阅注销 Azure Stack HCI。
使用 Remove-ClusterResource
cmdlet 可删除群集上的一个资源或全部资源。 如需更多示例和用法信息,请查看 Remove-ClusterResource 参考文档。
注意
需要临时启用凭据安全服务提供程序 (CredSSP) 身份验证才能删除群集。 有关详细信息,请参阅 Enable-WSManCredSSP。
以下示例在群集 Cluster1 上按名称删除群集资源:
Remove-ClusterResource -Cluster Cluster1 -Name "Cluster Disk 4"
以下示例使用 Remove-Cluster
cmdlet 完全删除群集 Cluster1:
Remove-Cluster -Cluster Cluster1
后续步骤
- 在进行更改后,应验证群集。 有关详细信息,请参阅验证 Azure Stack HCI 群集。
- 了解如何使用 Windows Admin Center 管理群集。 请参阅使用 Windows Admin Center 管理 Azure Stack HCI 上的群集。