我想与主机系统共享附加到我的虚拟机(以及 Win8.1)的 VHDX 文件。因此,我在 SCSI 控制器下的虚拟机中启用了高级功能“激活虚拟硬盘共享”(从德语直译)。
不幸的是,当我单击“申请”时,我收到:
Fehler beim Übernehmen von Festplatten Änderungen
Fehler beim Ändern des Geräts "Virtual Hard Disk".
Der Speicher, in dem sich die virtuelle Festplatte befindet, unterstützt die Freigabe virtueller Festplatten nicht.
这意味着:包含 vhdx 文件的存储不支持共享。那么我的存储必须满足什么标准?vhdx 文件存储在我的 SSD NTFS 和 Basic 上...
答案1
这文档Zoredache 在评论中链接的还指定此功能也仅用于在虚拟机之间共享虚拟磁盘 - 而不是在虚拟机和主机之间共享。
但直接回答你的问题,支持此功能有一些硬性要求:
- 虚拟磁盘旨在在其他虚拟机之间共享 - 而不是在虚拟机和主机之间共享。
- 客户操作系统需要是 2012/2012R2
- 虚拟磁盘必须驻留在共享 CSV 卷或两个主机均可访问的共享 SMB3 文件服务器上。
答案2
共享虚拟磁盘与共享文件系统不同。您需要的是共享文件系统。如果您需要共享文件系统,请在其中一台或另一台机器上启用文件共享,然后通过网络使用这些文件。
如果您确实在两个虚拟机之间共享虚拟磁盘(正如其他人所指出的,只有当 VHDX 存储在群集文件系统中时才会发生这种情况),则您需要使用虚拟机组内的群集来仲裁对磁盘的访问,以便各个虚拟机不会破坏彼此对磁盘的块写入并破坏虚拟磁盘上的文件系统。这几乎需要在来宾虚拟机组内运行群集软件,这就是此功能在 Windows 8.1 上根本不起作用的原因,即使在虚拟机内也是如此。
实际上,多个虚拟机可以同时写入共享 VHDX。您可以在来宾群集中启用 CSV 文件系统,它将允许多个群集节点同时写入,只要写入的是磁盘上已存在的文件以及已存在的文件区域即可。这对于使用文件服务器作为后端存储的 SQL Server 等工作负载来说很有意义。对于其他工作负载,避免使用 CSV 并让一台虚拟机一次使用磁盘更有意义。顺便说一句,Windows 文件服务器群集仍将具有高可用性,因为一台虚拟机可能会死机而不会中断文件服务。磁盘的所有权将无缝转移到文件服务器群集的另一个成员。
顺便说一句,这指出了为什么共享 VHDX 需要在托管层上位于 CSV 上的原因。除非共享 VHDX 位于没有单点故障的存储上,否则整个功能毫无意义。