VMFSvs.RDM:应该使用哪种集群文件系统?存储与灾备

2013-09-04    来源:TechTarget中国    编辑:张冀川
VMFS数据存储是VMkernel处理磁盘的默认方式;VMkernel对磁盘分区并进行格式化,创建了VMFS文件系统的磁盘在vSphere中称为数据存储,而且VMkernel能够读取磁盘,VMFS的优势是单个磁盘(在SAN中

  最常见的一个vSphere决策就是确定如何存储虚拟机。你应该使用共享存储还是本地存储?块存储还是网络附加存储?哪种存储文件系统最好,VMFS还是RDM?

  本文重点讲解VMFS和RDM之间的差异,以及在没有特殊要求的情况下轻松做出选择。

  虚拟机文件系统工作原理

  VMFS数据存储是VMkernel处理磁盘的默认方式;VMkernel对磁盘分区并进行格式化,创建了VMFS文件系统的磁盘在vSphere中称为数据存储,而且VMkernel能够读取磁盘,VMFS的优势是单个磁盘(在SAN中术语为LUN)能够承载多个虚拟机。

  有关每个LUN应该承载多少个虚拟机的争论一直不断,平均数应该是12个虚拟机共享一个数据存储。一个数据存储能够承载多个虚拟机及构成虚拟机的所有文件。这些文件包括VMX文件(该文件列出了虚拟机的硬件配置)和VMDK文件(虚拟机的硬盘以及构成虚拟机的其他零散文件)。

  RDM工作原理

  使用RDM,VMkernel不会对LUN进行格式化,而是由虚拟机客户操作系统对LUN执行格式化。每个RDM是一块单独的虚拟机硬盘,而且通常只关联到单个虚拟机。RDM存储虚拟机的磁盘内容而非虚拟机文件,构成虚拟机的文件需要存放在RDM之外的数据存储上。

  部署RDM通常基于RDM能够提供更好的性能这一理念,因为其开销要比VMFS上的VMDK文件低。但是在某些情况下,RDM要比VMFS的性能还要差一些。如果虚拟机需要最佳的磁盘性能,那么可以在数据存储上存放VMDK文件。

  如何在VMFS和RDM之间做出选择

  在vSphere中需要RDM的几种情形:

  1. 微软故障切换集群服务

  MSCS使用共享磁盘在不同的ESXi主机上构建集群。共享磁盘不能是VMDK文件;如果存储是FC,那么需要使用RDM。由于配置相当复杂,所以需要查看VMware有关MSCS集群的指南。当vSphere HA不能满足需求时,你需要确认是否的确需要使用MSCS。

  2. SAN QoS

  将SAN Fabric应用到虚拟机而非ESXi服务器,虚拟机必须使用唯一的、使用NPIV特性的FCID。NPIV只适用于虚拟机磁盘是RDM的情形。

  3. 通过虚拟机管理某些FC存储

  某些磁盘阵列通过FC网络中的LUN进行控制。为运行虚拟机内的配置软件,这些控制LUN必须作为RDM映射给虚拟机(这并不常见,我只在高端EMC存储中遇到过)。

  4. 大虚拟机磁盘

  你能够创建的最大VMDK文件是2TB,但是单个RDM可以高达64TB。当你计算备份容量并考虑恢复时间时,需要确定使用大磁盘的虚拟机是否是一个好的选择。使用RDM最大的限制就是一个LUN只是一块虚拟机磁盘。使用数据存储,LUN能够在VMDK文件中承载20个虚拟机磁盘,RDM存在的限制更多,因为ESXi服务器只能承载255个LUN而且整个DRS与HA集群需要能够看到同一个LUN。

  使用所有的RDM意味着只能使用254个RDM虚拟机磁盘,剩下的一个数据存储要用于存储虚拟机文件。使用VMFS数据存储,255个LUN能够存储上千个虚拟机磁盘。

  在某些情况下可能必须使用RDM,但是在可能的情况下你的默认选择应该是使用VMFS并在VMDK文件中存储虚拟机磁盘。

1
3