1、VMDK 和 RDM 的区 别VMDK和 RDM解释:使用原始设备映射(Raw Device Mappint,RDM)格式,可在 ESX 服务器中引入原始存储卷。这种模式主要用于如下情形:使用 Microsoft 群集时(MSCS 或者 Windows 2008 Server 下的 Windows 服务器故障切换群集,这是唯一支持的模式)采用基于阵列的快照时为了高性能(数据库类型)而直接在 VM 中引入卷时为 VM 引入大型 SAN 卷时(从 300TB 起),避免长 P2V 卷转换到 vmdkRDM 采用存储在 VMFS 数据存储中的一个文件(指针的一种类型)的形式,作为LUN 卷的代理。图
2、 3-14 说明了 vmdk 和 RDM 之间的不同。RDM 格式以两种模式存在:RDMv(虚拟兼容模式)和 RDMp(物理兼容模式)。1. RDMv 磁盘RDMv 磁盘的最大大小为 2TB(准确地说是 2TB 减去 512 个字节)。RDMv 主要用于大的卷。超过 300GB 时,为 VM 引入专用的 LUN 可能很有趣。确实, vmdk是一个很容易被移动的文件,但是当它很大时,移动可能也更加复杂。在这种情况下,较好的做法是引入原始卷,并使用存储阵列功能移动卷。RDMv 在 VMFS 上创建一个文件,作为 VMFS 和直接与 VM 连接的 LUN 之间的代理。这使虚拟化管理器能够拦截 I/O
3、 并在需要时进行记录。RDMv 授权 VM 快照(但不是存储阵列快照)以及复制及模板的创建。2. RDMp 磁盘RDMp 磁盘的最大大小为 64TB。这种类型的磁盘不允许虚拟化管理器拦截 I/O。这意味着无法采用 VM 快照(但是可以实现基于阵列的快照),也不可能创建复制或者模板。一般来说,RDMp 磁盘用于通过存储阵列快照功能,将生产数据库上的数据引入到测试服务器中,也可以用于 MSCS 群集。使用 MSCS 时,共享磁盘不能共享OS 的虚拟控制器。有些公司对将应用迁移到虚拟环境犹豫不决。利用 RDMp,这种改变可以缓慢而可靠地完成,因为如果虚拟环境中的测试无法令人信服,公司可以自由地返回物
4、理环境。对于虚拟环境没有正式支持的应用(例如旧版的 Oracle),RDMp 可以用于提供简单的方法,复制软件发布者支持的物理环境中的问题。RDMp 磁盘无法像传统 VM 那样备份。两种模式提供的功能见表 3-3。表 3-3 RDMv 和 RDMp 磁盘的对比RDM 类型 vMotion Storage vMotion 文件名 VM 快照 存储阵列级快照Rdmv 是 是 rdm.vmdk 是 不建议Rdmp 是 是 rdmp.vmdk 是 是VMDK和 RDM的对比:一般情况下,虚拟机的存储是虚拟磁盘 vmdk(可在浏览数据时看到), 它是VMware Infrastructure(VI)提供
5、的专有高性能集群文件系统。是建立虚拟的虚拟磁盘格式。对大多数企业应用来说,在 VMFS 上使用虚拟磁盘(VMDK 文件)是首要选择,在 VI 里支持全部可用的功能,包括虚拟机快照、VMotion、Storage VMotion 和 VMware Consolidated Backup(VCB)。虚拟机建好之后,如果想再添加存储,这时候就有两种选择了:一种是继续用 VI的专用 vmdk 格式;一种是直接存储在磁盘上的 rdm。这里有必要再解释下何为 vmdk,vmdk 是直接存储上的文件,这个文件是用来给虚拟机存储数据的,是在直接存储上抽象出来的磁盘;rdm 裸磁盘格式也是 IV 上的一个文件格
6、式,严格来说不是一个存储,因为它只不过存储是虚拟机到直接存储上的一个映射(maping),只直接存储数据,而是把数据通过映射直接存储到底层存储上去(如做好的磁盘阵列、lun 等)。至于为什么有了 VI 的专用存储 vmdk,依然要 rdm 呢,这个就有很多原因了,最主要的原因是:虚拟作为一台无服务器,它存储的东西我们有时候想直接放在底层,这样即使不是虚拟机也能看到。如果依然是 vmdk 格式,所有数据都包装为一个文件了,不透明,这在很多情况下是不方便的。此外,大数据的存储时避免了P2V 迁移的麻烦(比如一台物理服务器,其存储了 10T 的数据,这时候如果想把它变成虚拟机,如果只是 p2v 进行转换,那就非常麻烦了。这时候我们只要把服务器是 C 盘迁移到虚拟机上面去,至于大数据 10T 的磁盘,虚拟机采用 rdm 裸磁盘映射就访问之前的数据了,非常方便快捷。)