powershell构建wsfc

官网:https://docs.microsoft.com/en-us/powershell/module/failoverclusters/new-cluster?view=windowsserver2022-ps

相关sql server的:https://docs.microsoft.com/zh-cn/powershell/module/sqlserver/?view=sqlserver-ps&viewFallbackFrom=sql-server-ver15

【1】powershell 查看帮助

(1.1)如何查看 cluster 模块有哪些命令?

get-command *cluster*

  

 

(1.2)如何查看某个命令的具体用法?

get-help add-ClusterNode

  

 

【2】powershell 构建 wsfc 相关

(2.1)集群相关

那么如下图,核心就是这些命令

Add-ClusterNode  -- 增加集群节点
Get-Cluster      -- 查看当前机器加入的集群
Remove-Cluster   -- 删除、销毁 集群
Start-Cluster    -- 启动集群
Stop-Cluster    -- 停止集群
Test-Cluster     -- 测试构建集群的节点间的相关配置与通信

  

【2.2】集群节点操作相关

Add-ClusterDisk
Get-ClusterAvailableDisk
Get-ClusterNode
New-Cluster
Remove-ClusterNode
Resume-ClusterNode
Start-ClusterNode
Stop-ClusterNode
Suspend-ClusterNode
Test-Cluster

 

【最佳实践】用powershell 构建 wsfc 集群

(1)test-cluster 测试集群节点间的配置、通信、存储等

参考:https://docs.microsoft.com/en-us/powershell/module/failoverclusters/test-cluster?view=windowsserver2022-ps

New-Cluster cmdlet 创建一个新的故障转移群集

  在创建集群之前,必须连接硬件(服务器、网络和存储),并且必须运行验证测试。

  使用 Test-Cluster 运行验证测试测试将确认硬件和设置与故障转移群集兼容。有多种类型的测试,包括清单、系统配置、网络、存储和其他类型的测试。

test-cluster -list  : 可以查看到所有的测试检查项目清档

# 如果只想验证某几项,或者只忽略某几项参考

Test-Cluster -Node "node1", "node2" -Include "Storage"   -- 只运行 存储测试,多个以逗号分隔即可,如 "a","b"
Test-Cluster -Node "node1", "node2" -Ignore Inventory     -- 只排除 清单项,其他的测试都运行,多个以逗号分隔即可如 "a","b"

 

step1:验证2个节点的所有验证配置、通信、存储 等

  Test-Cluster -Node "node1", "node2"   (一般没有什么特殊字符的话,也不用双引号)

  实际运行参考如下:运行期间也会有进度条,下面也会告知运行出来的的存储报告位置

PS C:\Windows\system32> test-cluster WIN-62DD8FDOAL9,WIN-F5B5UKVG8RU
警告: 存储 - 验证 SCSI 设备重要产品数据 (VPD): 测试报告了一些警告。。
警告: 存储 - 验证 SCSI-3 永久保留: 测试报告了一些警告。。
警告: 存储 - 验证磁盘访问延迟: 测试报告了一些警告。。
警告: 存储 - 验证磁盘仲裁: 测试报告了一些警告。。
警告: 存储 - 验证存储空间永久保留: 测试报告了一些警告。。
警告: 存储 - 验证多重仲裁: 测试报告了一些警告。。
警告: 存储 - 验证基于 Microsoft MPIO 的磁盘: 测试报告了一些警告。。
警告: 存储 - 验证磁盘故障转移: 测试报告了一些警告。。
警告: 存储 - 验证文件系统: 测试报告了一些警告。。
警告: 存储 - 验证并发故障转移: 测试报告了一些警告。。
警告: 清单 - 列出软件更新: 测试报告了一些警告。。
警告: 群集配置 - 验证仲裁配置: 测试报告了一些警告。。
警告: 系统配置 - 验证软件更新级别: 测试报告了一些警告。。
警告: 网络 - 验证网络通信: 测试报告了一些警告。。
警告:
测试结果:
ClusterConditionallyApproved
测试已成功完成。该配置似乎适合进行群集,但你仍应当查看报告,因为该报告可能包含某些警告,你需要解决这些警告才能获得最
高可用性。
测试报告文件路径: C:\Users\alwaysonadmin\AppData\Local\Temp\验证报告 在 10.48.47 上的 2022.05.07 .xml.mht

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-a---          2022/5/7     10:49     542708 验证报告 在 10.48.47 上的 2022.05.07 .xml.mht

(2)new-cluster 创建集群

官网:https://docs.microsoft.com/en-us/powershell/module/failoverclusters/new-cluster?view=windowsserver2022-ps

官网其实和 get-help new-cluster 信息相差无几,基本形式如下:(一般我们使用加红的4个即可)

New-Cluster
   [-Name] <String>                     # 集群名称
   [-Node <StringCollection>]           # 哪些节点参与集群构建
   [-StaticAddress <StringCollection>]  # 集群静态地址VIP,一般这个,不加会自动使用 dhcp 默认分配的动态地址,云环境可以看情况适当去掉该参数
   [-IgnoreNetwork <StringCollection>]  # 这个忽略网段,指的是动态 dhcp 地址不分配这个网段的地址给集群 vip
   [-NoStorage]                         # 忽略共享存储
   [-S2D]
   [-AdministrativeAccessPoint <AdminAccessPoint>]
   [-Force]
   [<CommonParameters>]

最佳生产使用案例:

New-Cluster -Name cluster1 -Node node1,node2,node3 -NoStorage -StaticAddress 2.0.0.123 

# 跨网段、多网段的时候使用
# New-Cluster -Name cluster1 -Node node1,node2,node3
-NoStorage -StaticAddress 2.0.0.123,3.0.0.123

(3)add-clusterNode 增加新的节点到集群

该操作之前,也强烈建议 甚至是必须要再次操作 test-cluster

Add-ClusterNode
   [[-Name] <StringCollection>]   # 新增的节点名称
   [-NoStorage]             # 不加对应节点机器的存储设备到集群
   [-InputObject <PSObject>]
   [-Cluster <String>]             # 集群名称
   [<CommonParameters>]

最佳生产使用案例:

# 在已经加入该集群的机器上运行
Add-ClusterNode -Name node4 -NoStorage

# 在同域但未加入集群的机器上运行
Get-Cluster -Name cluster1 | Add-ClusterNode -Name node3
Add-ClusterNode -Cluster cluster1 -Name node3

(4)Remove-ClusterNode 删除集群节点

Remove-ClusterNode
      [[-Name] <StringCollection>]
      [-Force]
      [-Wait <Int32>]
      [-IgnoreStorageConnectivityLoss]
      [-CleanupDisks]
      [-InputObject <PSObject>]
      [-Cluster <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

最佳生产使用案例:

Remove-ClusterNode -Name node4

 

posted @ 2022-05-07 10:32  郭大侠1  阅读(210)  评论(0编辑  收藏  举报