存储空间直通(s2d)扩展文件服务器容量本质是将多台服务器本地硬盘聚合成高可用、可横向伸缩的软件定义存储池,并通过smb共享提供文件服务;需满足至少2台windows server数据中心版、专用rdma网络、未初始化磁盘等硬性条件,支持在线扩容且无需停机或数据迁移。
用存储空间直通(storage spaces direct,s2d)扩展文件服务器容量,本质是把多台物理服务器的本地硬盘聚合成一个高可用、可横向伸缩的软件定义存储池,再通过 smb 共享对外提供文件服务。它不是简单加一块硬盘,而是重构存储架构,适合中大型环境对性能、弹性与容错有要求的场景。
确认部署前提条件
不是所有环境都适合直接启用 S2D。必须满足以下硬性要求:
- 至少 2 台(推荐 4 台以上)Windows Server 数据中心版服务器,已加入同一个故障转移群集
- 每台服务器配备至少 2 块 SSD(用于缓存)+ 2 块 HDD 或全闪 NVMe(用于容量层),且驱动器类型、固件版本尽量一致
- 节点间具备 10 GbE 或更高速的专用 RDMA 网络(如 RoCE 或 iWARP),不建议复用业务网络
- 所有物理磁盘处于“未初始化”状态,且未被任何卷或存储池占用
- 群集角色已启用“群集共享卷(CSV)”,并配置了 SMB 多通道支持
构建存储池与虚拟磁盘
完成群集验证后,在其中一台节点上执行 PowerShell 操作,系统会自动同步配置:
- 运行 Get-PhysicalDisk -CanPool $true 确认可纳入池的磁盘,排除系统盘和 USB 设备
- 创建存储池:New-StoragePool -FriendlyName S2DPool -StorageSubsystemFriendlyName "S2D*" -PhysicalDisks (Get-PhysicalDisk -CanPool $true)
- 新建虚拟磁盘,推荐使用三路镜像(容错强)或单奇偶校验(容量效率高):New-VirtualDisk -StoragePoolFriendlyName S2DPool -FriendlyName FileShareVD -ResiliencySettingName Mirror -Size 10TB -ProvisioningType Thin
- 格式化并分配盘符:Get-VirtualDisk -FriendlyName FileShareVD | Get-Disk | Initialize-Disk -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -FileSystem ReFS -NewFileSystemLabel "S2D-Share"
发布为高可用文件服务器
单纯挂载磁盘不能实现故障转移,需将其注册为群集文件服务器角色:
- 在故障转移群集管理器中,右键群集 → “添加角色” → 选择“文件服务器” → “SMB 文件服务器”
- 指定共享名称(如 FS-S2D)、IP 地址(建议使用群集 IP 资源)及前面创建的卷(S2D-Share)
- 设置共享权限(NTFS 权限 + SMB 共享权限双层控制),启用连续可用性(Continuous Availability)以支持 SMB 3.0 客户端无感知故障切换
- 验证:从客户端用 \群集名FS-S2D 访问,断开某节点网络后观察是否自动重连,I/O 不中断
后续扩容操作(在线进行)
S2D 的核心优势在于横向扩容无需停机:
- 向任一节点新增相同规格的物理磁盘,系统几秒内自动识别并标记为“可聚合”
- 运行 Add-PhysicalDisk -StoragePoolFriendlyName S2DPool -PhysicalDisks (Get-PhysicalDisk -CanPool $true) 加入池
- 扩展原有虚拟磁盘:Resize-VirtualDisk -FriendlyName FileShareVD -Size 15TB(注意:ReFS 卷支持在线扩展,NTFS 需先扩展底层磁盘再运行 resize-volume)
- 最后在群集管理器中右键共享资源 → “更多操作” → “刷新共享”即可让新容量对客户端可见
整个过程不涉及数据迁移,也不影响正在读写的 SMB 连接。真正实现容量随业务增长而平滑扩展。











