群集共享卷(csv)是部署hyper-v分布式集群存储的核心方案,需配合故障转移群集使用;它允许多节点并发访问同一ntfs卷,支持实时迁移、高可用及统一命名空间(如c:\clusterstorage\volume1)。
部署 hyper-v 虚拟机的分布式集群存储,核心是让多台 hyper-v 主机共享同一套底层存储,并能协同管理虚拟机文件(如 vhdx、配置、检查点),实现高可用与故障自动迁移。这不是简单挂载网络磁盘,而是需要集群感知的存储架构——最常用且官方推荐的方式是 群集共享卷(csv),配合故障转移群集(failover clustering)实现。
一、前置条件:集群与域环境就绪
分布式存储依赖集群服务正常运行,必须先完成以下基础准备:
- 至少两台 Windows Server(2016 及以上,Datacenter 或 Standard 版),已启用 Hyper-V 角色
- 所有节点加入同一个 Active Directory 域,DNS 解析稳定
- 每台主机配置静态 IP,网络规划清晰(建议分离管理网、集群心跳网、实时迁移网、存储网)
- 已通过
Test-Cluster完成群集验证,尤其确认“存储”和“网络”类别全部通过
二、存储类型选择:CSV 是主流,S2D 是进阶选项
Hyper-V 集群不直接支持“分布式块存储”原生协议(如 Ceph RBD),但可通过两种方式构建集群感知的共享存储:
- 群集共享卷(CSV):传统可靠方案。后端可为 iSCSI 目标(如 Windows Server 的 iSCSI Target Server、NetApp ONTAP、Dell EMC SC 系列)、光纤通道 LUN 或 SMB 3.0 文件共享(需 NTFS 格式、SMB 多通道支持)。所有节点同时挂载同一卷,CSV 驱动层统一协调元数据访问
- 存储空间直通(S2D):微软超融合首选。利用各节点本地直连硬盘(SATA/SAS/NVMe),通过软件定义方式聚合为集群级存储池,自动创建带容错的 CSV 卷。无需外部 SAN,但要求硬件兼容(如支持 RDMA 的 NIC、SSD 缓存盘)
注意:ReFS 不可用于存放正在运行的虚拟机(仅支持备份或非活动 VHD),CSV 卷仍须格式化为 NTFS。
三、CSV 存储部署关键步骤
以 iSCSI 共享存储为例(DC + ISCSI Target + 两台 Hyper-V 节点):
- 在存储服务器上创建两个 iSCSI 目标:一个 2GB 作仲裁盘(Quorum Disk),一个 ≥100GB 作数据盘(CSV Volume)
- 在每台 Hyper-V 节点上,用
iscsicpl发起程序连接目标,diskpart将磁盘联机、清除只读、创建主分区、快速格式化、分配盘符(如 S: 和 O:) - 创建群集时使用
New-Cluster -NoStorage参数跳过自动添加磁盘;群集创建成功后,再通过故障转移群集管理器或Add-ClusterSharedVolume手动将 O: 盘添加为 CSV - 设置仲裁:右键群集 → “配置群集仲裁设置”,推荐使用“云见证”(Azure)或“文件共享见证”(独立文件服务器),避免单点仲裁盘故障导致脑裂
四、虚拟机存储最佳实践
让虚拟机真正受益于分布式存储,还需注意部署细节:
- 虚拟机应存放在 CSV 卷下(如
C:\ClusterStorage\Volume1\VMName\),而非本地 C: 或普通网络路径 - 启用“虚拟机高可用性”:在群集管理器中右键虚拟机 → “属性” → 勾选“允许此虚拟机在群集中故障转移”
- 配置实时迁移网络:指定专用高速网卡(建议 10Gbps+),避免与管理流量争抢带宽
- 禁用虚拟机检查点(尤其是生产环境):频繁快照会显著拖慢 CSV I/O 性能
- 对 I/O 密集型 VM,建议分离 OS 盘与数据盘,数据盘可直连 SCSI 控制器或使用来宾连接存储(Guest iSCSI)提升吞吐











