![从虚拟机连接到物理主机磁盘](https://linux22.com/image/489905/%E4%BB%8E%E8%99%9A%E6%8B%9F%E6%9C%BA%E8%BF%9E%E6%8E%A5%E5%88%B0%E7%89%A9%E7%90%86%E4%B8%BB%E6%9C%BA%E7%A3%81%E7%9B%98.png)
我使用 VMware Converter 对我的服务器进行了 P2V 操作。
我的服务器有 3 个硬盘:C: D: E: (SATA/IDE)
我只在映像中包含了 C: 驱动器(启动),因为我不打算激活此 VM - 只需访问文件。
完成 P2V 后,我将主机操作系统重新安装到 C:。
事实证明,我现在需要将旧服务器作为虚拟机运行......问题是驱动器 D: 和 E: 无法访问,但服务器需要它们才能正常运行。
我如何以透明的方式从虚拟机访问主机上的物理驱动器 D: 和 E:?我无法使用网络共享,因为虚拟机上的 SQL 服务器等不允许您将数据存储在网络共享上。
有什么想法吗?谢谢,杰克
编辑:我正在使用 Vmware Server 2.x(站点最新版本)、Windows Server 2008 和 SATA/IDE 磁盘。
答案1
我认为您不想/无法将“D:”和“E:”驱动器物理连接到托管 VM 的服务器计算机。
如果这只是一个短期问题,我认为您可以做的最简单的事情就是在可以托管这些磁盘的计算机上安装一个 iSCSI 目标,并将它们导出为 iSCSI 目标。在您的虚拟机上,您可以安装一个 iSCSI 启动器,连接到这些目标,并为它们分配正确的驱动器号。请注意,我说的是实际在虚拟机内部加载启动器——而不是在虚拟机管理程序本身中。iSCSI 流量将来自虚拟机(因此,您可能需要建立物理网络连接以创建专用的 iSCSI 网络,然后将该连接公开为虚拟机中的专用虚拟 NIC)。
如果这是长期计划,我会将磁盘转换为 VMDK 磁盘,然后不再使用物理磁盘。如果整个 iSCSI 工作正常,除了 iSCSI 目标之外,您还可以向 VM 添加一些虚拟磁盘,并将内容从 iSCSI 目标复制到虚拟磁盘。
您使用什么 iSCSI 目标并不重要,只要它可以将整个磁盘显示为目标而无需对磁盘进行任何更改即可。我认为开放文件管理器可以做到这一点,但我不是 100% 确定。
答案2
您没有明确提到哪种产品,因此我假设“vmware-server”标签是准确的。我还假设您在新服务器安装之上将旧服务器作为虚拟机运行。
您正在寻找的功能是已知的原始设备映射(服务器 1、ESX、ESXi)或服务器 2 中的 SCSI 直通。
RDM 在 ESX/ESXi 中运行良好;有关服务器中 SCSI 直通的传闻证据混杂。
根据服务器 2 的文档(第 157 页):
- 在添加硬件或新虚拟机向导中,单击直通 SCSI 设备。
- 选择要使用的 SCSI 设备。必须将物理 SCSI 设备连接到该设备,并且必须将其连接到虚拟机。
- (可选)在虚拟设备节点部分,从下拉菜单中选择 SCSI 适配器和设备节点。
- 单击“确定”。
答案3
如果您尝试再次运行转换器来虚拟化 D 盘和 E 盘,将硬盘复制到 VMWare Server 系统,然后将虚拟磁盘作为额外的驱动器附加到 VM 上,会发生什么情况?除非空间是个问题,否则我认为尝试一下也无妨……
答案4
最后我决定按照 Evans 的建议将磁盘导出为 iSCSI。
我使用了演示星风Enterprise 作为 iSCSI 目标;原因是它是唯一一个似乎允许我导出整个磁盘的 StarWind 版本(“磁盘桥接模式”)。该软件似乎相当不错,尤其是考虑到我尝试过的所有替代方案(iSCSI CAKE 等)只会导致 Windows iSCSI 启动器挂起。
吞吐量只有大约 10MB/s,约为物理服务器上的 20%。这很糟糕,但这只是一个权宜之计 - 当 Windows 2008 R2 可用时,我将重新安装所有内容。