在 wmware Esxi 主机上,我有以下虚拟机:vm1 - windows 服务器 vm2 - linux
我希望 vm1 和 vm2 能够将它们的数据库文件存储在文件夹“DataDB”中。
像这样:
/WinServer2008
/SU11
/数据数据库
/SourceControl
有人知道怎么做吗?
答案1
尽管两个或多个虚拟机可以将一个 .vmdk 指定为虚拟磁盘,但它们呈现为 SCSI 磁盘,因此看到单个虚拟磁盘的所有虚拟机都需要使用通用集群文件系统来管理虚拟磁盘,否则会发生大量数据损坏。
我不知道有任何常见的集群文件系统允许 Windows 和 Linux 操作系统/虚拟机互操作。
您可以选择的一种方式是将磁盘提供给单个 Windows VM,然后让该 VM 使用 CIFS/SMB 共享磁盘,并让 Linux VM 挂载该磁盘。显然,这仅仅是文件级共享。
如果我能找到合适的可信赖的通用集群文件系统,我会更新我的答案,但我并不抱太大希望。
答案2
考虑一下 gfs...... http://en.wikipedia.org/wiki/Global_File_System
答案3
没有办法让多个 Windows 系统使用 NTFS(或 FAT 之一)对同一个块存储设备进行 [并发] 本机访问,而这正是您在此处寻找的。底层设备是 ESX\ESXi 数据存储中的 VMware vmdk 还是共享 SCSI 总线或 SAN 上的 SCSI LUN 并不重要。使用 CSV 卷对 Hyper-V R2 的并发访问支持有限,但这仅用于托管 Hyper-V VM 文件。您可能能够同时将同一个设备呈现给两个 Windows 系统,但如果这样做,那么最好的情况下您将获得一个系统上被阻止的设备访问权限,最坏的情况下会导致数据损坏。当您根据需要在客户机中混合使用操作系统时,问题更不可能得到解决方案。
本地执行此操作的最佳方法是将特定卷共享到一个 VM(在 Windows 或 Linux 中),然后将该卷映射到另一个 VM 中。或者,您可以将两个系统连接到可以提供对两个 VM 的并发访问的 NAS。但是,您仍需要确保您使用的应用程序可以充分处理对相关特定数据的并发访问。
答案4
我想我已经问过类似的问题: 在 Linux 和 Windows 服务器之间共享文件系统