之前的文章介绍了如何部署出Windows Server 2019 S2D构建超融合架构,结合Windows Admin Center可以做非常好的管理监控运维,比如我在之前的超融合环境中分别在双副本卷,嵌套双镜像卷,嵌套的镜像加速奇偶校验卷上各自创建了一台Windows XP的虚拟机模拟生产虚拟机来测试底层扩容和灾难情况发生后数据的可用性

首先就是把所有的虚拟机都切换成高可用状态

clip_image001

clip_image002

可用在Windows Admin Center看到超融合架构的总体运行仪表板

clip_image003

以及整个超融合架构的IOPS和延迟

clip_image004

还可以看到虚拟机的运行状态

clip_image005

以及每一个虚拟机运行清单

clip_image006

还可以看到超融合里的虚拟交换机

clip_image007

以及节点服务器状态

clip_image008

每一个节点服务器的运行清单

clip_image009

卷的运行状态

clip_image010

每一个卷的清单及使用情况

clip_image011

物理驱动器磁盘的大小分配总览

clip_image012

以及每一个磁盘的健康及占用情况

clip_image013

秀完每一个管理界面后,接下来可以看到我每一个类型的卷各自运行着一台Windows XP的虚拟机,每一台虚拟机我都打开着一个网页,开网页代表工作进行时,接下来我会模拟几种场景看看虚拟机是否会中断无法使用或者被重启,衡量的标准就是虚拟机是否运行中且开着的网页是否存在

clip_image016

三台不同类型卷上的Windows XP都运行起来了

clip_image017

每一台虚拟机都开着一个IE浏览器

clip_image018

  • 模拟关掉一台S2D2服务器看看三台虚拟机的可用性

clip_image019

clip_image020

双副本卷和嵌套双镜像卷上的虚拟机运行依旧,而嵌套的镜像加速奇偶卷无法访问而导致虚拟机挂黑了,这里我的猜想分析是因为嵌套的镜像加速奇偶校验卷是有2G的嵌套镜像HDD和8G嵌套奇偶校验HDD组合成的,因为关掉一台,所以单台S2D节点服务器只能有1G嵌套镜像HDD和4G嵌套奇偶校验HDD来承载,1G嵌套镜像HDD太小,导致该卷无法承载数据大小而挂掉,自然在改卷上的虚拟机也就挂了

clip_image021

  • 恢复如初,这次模拟我直接让其中一台S2D1服务器断电

clip_image022

同样的嵌套的镜像加速奇偶卷无法访问导致卷上的虚拟机挂掉了,其他卷的虚拟机再S2D2服务器上全部重新启动

clip_image023

  • 在关掉S2D1服务器的基础上,我再拔掉S2D2服务器上的一块磁盘看看(删除掉HDD4.vhdx)(这种直接拔掉磁盘的行为非常不建议,因为我这里是测试环境为了模拟故障盘才拔掉的,真实的环境应该是S2D2服务器坏了一块磁盘,但未拔掉)

clip_image024

双副本卷无法访问导致卷上的虚拟机挂掉了,只剩下了嵌套双镜像卷可用访问,该卷上的虚拟机运行良好不受影响

clip_image025

Get-StoragePool *S2D* | Get-PhysicalDisk

clip_image026

接下来挑出故障的磁盘

$Disk = Get-PhysicalDisk |? OperationalStatus -Notlike ok

$Disk

clip_image027

将此磁盘的使用率设置为“已停用”以停止在此磁盘上写入并避免数据丢失

Set-PhysicalDisk -InputObject $Disk -Usage Retired

这里已经是停用的状态了

最后是将其从存储池中删除该磁盘

Get-StoragePool *S2D* | Remove-PhysicalDisk -PhysicalDisks $Disk

clip_image028

完成

clip_image029

还可以通过get-storagejob查看运行执行的任务状态

clip_image030

如果这里不是像我这样以拔掉S2D2服务器上的一块HDD磁盘来模拟故障,而是真的一块HDD磁盘故障了,那么可以在把这块故障磁盘从存储池中踢出后让该磁盘LED灯亮起来,定位我该去拔掉哪块磁盘,可以执行

Get-PhysicalDisk |? OperationalStatus -notlike OK | Enable-PhysicalDiskIdentification

这时您就可以走到服务器面前,您将看到哪个驱动器警告指示灯亮起了,您就可以替换该磁盘了

更换磁盘后,您可以使用以下命令关闭LED

Get-PhysicalDisk |? OperationalStatus -like OK | Disable-PhysicalDiskIdentification

  • 接下来我对S2D2虚拟机新加一块HDD盘(新建添加HDD5.vhdx)(真实的生产环境是对刚才拔掉的磁盘换上一块全新的大于或等于之前大小的空白磁盘)

clip_image031

新添加的磁盘会自动加入存储池并重构数据因为磁盘的用法是自动伸缩

Get-PhysicalDisk

clip_image032

  • 对现有S2D增加磁盘扩容

在这里将我的S2D环境恢复如此,在这里我对每一台S2D服务器增加一个50G的HHD磁盘

clip_image033

clip_image034

有时候在重新启动服务器之前,物理磁盘无法识别其名称。磁盘自动加入了存储池但是

没有信息。因此您必须重新启动服务器才能获得正确的信息。存储空间直接在新磁盘上自动传播数据。这个过程大约需要30分钟

有时物理磁盘不会自动加入存储池。您可以运行以下命令将新物理磁盘添加到存储池中

clip_image035

将新磁盘添加到存储池

$Disk = Get-PhysicalDisk |? CanPool -like True

Get-StoragePool *S2D* | Add-PhysicalDisk -PhysicalDisk $Disk

最后可以在Windows Admin Center里看到存储池S2DPool的HDD大小由之前的160G(该文章开头有截图)扩展到了280G

clip_image036

在故障群集管理器也可以看到该存储池也自动纳管了这2个50G磁盘

clip_image037

如果要扩展现有的双向镜像卷可用直接在Windows Admin Center里选择该卷,点击展开,输入新的大小即可完成该卷的扩展(可以分别扩展该卷SSD的大小和HDD的大小)

clip_image038

提示扩展(展开)成功

clip_image039

等几秒钟后就该卷的总大小就从原来14.9G扩展到了19.9G

clip_image040

如果要扩展嵌套双向镜像卷和镜像加速的嵌套奇偶校验卷就只能通过Powershell

首先查看虚拟磁盘有哪些

get-virtualdisk

再从虚拟磁盘到需要扩展的卷

get-virtualdisk volume02 | get-disk | Get-Partition | Get-Volume

clip_image041

查看该卷使用的存储层(如果没有使用存储层创建的虚拟磁盘在运行如下命令后不会返回任何信息)

Get-VirtualDisk volume02 | Get-StorageTier

clip_image042

接下来获取存储层的名称

Get-VirtualDisk volume02 | Get-StorageTier | select FriendlyName

设置该存储层新的大小,比如我们的Volume02现有的大小是9.94GB,那么这里我需要扩展到15GB

Get-StorageTier "Volume02-NestedMirror" | Resize-StorageTier -Size 15GB

clip_image043

备注:如果扩展的这个存储层包含不同类型的物理磁盘,比如有SSD和HDD,那么需要确保存储池中的每一种类型的物理磁盘有足够的容量以适应每层新的更大占用空间。

调整存储层大小时,虚拟磁盘和磁盘都会自动跟随并调整大小。

clip_image044

接下来调整分区大小

虚拟磁盘有2个分区,一个是保留的不应该修改,主要是调整另一个分区(PartionNumber = 2和Type = Basic)

在如下脚本中-Size后跟新的分区大小,一般建议使用支持的最大大小值

# 选择虚拟磁盘

$VirtualDisk = Get-VirtualDisk Volume02

# 获取分区

$Partition = $VirtualDisk | Get-Disk | Get-Partition | Where PartitionNumber -Eq 2

# 扩展到最大支持大小

$Partition | Resize-Partition -Size ($Partition | Get-PartitionSupportedSize).SizeMax

clip_image045

可以看到嵌套双向镜像卷大小由原来的9.94GB扩展到了14.9GB

clip_image046

对于镜像加速的嵌套奇偶校验卷扩展也是差不多的道理,只是需要注意嵌套奇偶校验卷是由一部分SSD和HDD共同构成的话,可用根据实际的情况分别对SSD或HDD进行扩展,最后再扩展分区(这里我只扩展了HDD大小)

clip_image047

最后Volume03由原来的9.94GB扩展到了11.9GB

clip_image048

管理运维就介绍到这了,感觉这些内容也足够常见的运维场景了。