我最近尝试在 ESXi 内部设置一个虚拟机,并尝试让它访问服务器中的整个辅助驱动器以进行数据存储等等。
当我进入“添加硬件”并选择硬盘时,我会看到三个选项:
- 创建新的虚拟磁盘
- 使用现有的虚拟磁盘
- 原始设备映射
显然,我想使用原始设备映射,但它是灰色的。我试过了本指南创建一个指向原始驱动器 uuid 的假虚拟磁盘,但没有产生任何工作结果。
我宁愿不创建一个与驱动器大小相同的虚拟磁盘,因为 a) 我无法真正实现与驱动器大小相同的虚拟磁盘,并且 b) 使用虚拟磁盘而不是原始设备映射会增加开销(至少我是这么认为的)。
虽然它是单个未进行 RAID 处理的机械驱动器,但它本身就提供了我所需的性能。我认为使用原始设备映射将产生驱动器的最佳读/写速度,并且还可以方便地移除驱动器以在另一台计算机上使用以读取其中的数据 - 而不必通过 .vmdk 文件来访问内容(如果出于任何原因需要这样做)。
非常感谢!
答案1
据我所知,RDM 不需要 VT-d 即可工作,除非自我上次在 ESXi 上使用原始磁盘映射以来 v 5.0 发生了变化。
您不需要通过控制器来使用 VT-d。只需要驱动器。
关于 RDM 的灰色选项,可能是因为您使用的是桌面 vSphere 客户端,而不是完全支持 RDM 的 Web 客户端。
但即使没有 Web 客户端,您也可以通过 SSH 手动创建 RDM。
该过程在 pou 发布的知识库文章中进行了描述。据我记得,该过程是有效的。
什么对你不起作用?
至于不映射整个驱动器,我认为这是不可能的。
原始磁盘映射就是这样。驱动器到虚拟机的原始映射。
关于性能,除非您有一个非常特殊的工作负载,并且在 VMFS 上运行不佳,否则使用 RDM IMHO 不会带来任何显著的收益。
更新:
事实证明,我对 Web 客户端中的 RDM 支持是错误的。桌面和 Web 客户端都支持 RDM,但仅适用于 SAN LUN,而不适用于本地磁盘。
因此,要执行本地磁盘的原始磁盘映射,您需要通过 SSH 手动执行。
现在我再次阅读了知识库文章 (KB1017530),它很好地描述了该过程。
它还提到这可能不适用于某些控制器。
你的硬件到底是什么?控制器芯片组?
就我个人而言,当我第一次尝试进行原始磁盘映射时,我使用了本教程http://www.vm-help.com/esx40i/SATA_RDMs.php
也许这会对你有更好的帮助。