简而言之,我希望 Microsoft iSCSI 软件目标将物理磁盘(从操作系统的角度来看)公开为 iSCSI 单元,而不是使用文件(Microsoft 专有的“虚拟磁盘”)作为后备存储。我会解释为什么:
我有一个 ESXi 5 盒子和上面的一个虚拟机我有兴趣在另一台服务器上测试裸机。(尽管关于将操作系统安装移动到不同硬件上的常见警告 - 它运行的是 Windows,根据我的经验,它通常可以容忍被移植到不同的硬件上。)
我想在裸机上运行这个 VM 的备用服务器有一个支持 iSCSI 引导的 NIC,所以我想我可以在 ESXi 框中得到另一个 VM - 称之为 diskserver - 将 VM 的磁盘映像暴露给裸机服务器通过 iSCSI。原则上,这应该使虚拟机在 ESXi 下运行和裸机运行之间来回移动变得相当容易。当它在裸机上运行时,它将运行最初在 ESXi 下附加到它的相同 VMDK。
我正在尝试在磁盘服务器上使用 Windows Server,以使用 Microsoft iSCSI 软件目标在 iSCSI 下公开 VM 的磁盘。我试过 Server 2012 和 2008 R2。我的想法是将虚拟 HDD 附加到磁盘服务器的 VM,该 VM 由与感兴趣的 VM 使用的相同 VMDK 支持。(当然,它们不能同时启动。)我可以做到这一点,但问题是让 MS iSCSI 软件目标使用连接的驱动器。
该驱动器在磁盘服务器上的磁盘管理器中正常运行,并且可以看到其上的分区,甚至为 NTFS 分区分配了一个驱动器号。问题是 iSCSI Target 似乎是在我们总是希望公开由文件而不是物理磁盘支持的存储的假设下设计的。(实际上它不是物理磁盘,但磁盘服务器会这样看待它。)
澄清一下,我不需要 MS iSCSI 软件目标来理解 VMDK 格式,因为 diskserver 在 ESXi 下运行并且我正在使 VMDK 在 Windows Server 中显示为物理磁盘。
我很确定 Solaris 中的 STMF(SCSI 目标模式框架)能够做我想做的,所以最坏的情况下我可以为此旋转 Solaris VM,但这有点乏味,我希望 MS iSCSI 软件目标会更容易。有没有办法让MS iSCSI target通过物理磁盘做回一个target?
Microsoft iSCSI 目标仅支持使用 VHD 文件进行存储。Microsoft 的 iSCSI 目标的任何发布版本都不支持使用物理设备或卷作为存储。