VMware存储:SAN配置基础

介绍

 

VMware存储不只仅是将LUN映射给物理服务器这么简单。VMware vSphere容许系统管理员在一个物理机上建立多个虚拟机。前端

 

潜在的hypervisor和vSphere ESXi,可以使guest虚拟机同时使用内部和外部存储设备。本文将会讨论在vSphere上构建SAN的基础以及管理员在部署共享SAN存储时的考虑因素。安全

 

更多信息

 

VMware存储:SAN基础服务器

 

vSphere支持包括JBODs,硬件RAID阵列,SSD磁盘以及PCIe SSD卡在内的内部链接磁盘设备。可是,使用这些存储形式的一大不便在于它们是与单一服务器直接链接的。网络

 

可是,SAN存储却提供了一个共享的,高可用性以及弹性的存储平台,并可扩展至多服务器部署环境。此外,存储厂商在产品上添加针对vSphere的支持,提供比本地存储部署更好的性能和扩展。架构

 

使用NAS和SAN存储部署vSphere是可行的,可是本文仅涉及SAN,或者说块设备。涉及iSCSI,Fibre Channel以及FCoE协议。并发

 

VMware文件系统以及数据存储:app

 

vSphere块存储的一大重要结构特性是使用了VMware File System(VMFS)。与传统服务器以文件系统来格式化块设备的方式相同,vSphere在块LUN上使用VMFS来存储虚拟机。负载均衡

 

vSphere的存储单位是datastore,包含一个或多个concatenated LUN。在不少实例中,vSphere部署在LUN和datastore之间采用1:1的对应关系,但这并非配置要求。性能

 

vSphere历经数个版本的更迭,VMFS一样通过了更新和改进,当前ESXi 5.1版本使用的是VMFS版本5。在扩展性和性能方面都有改进,单个datastore已能host多个虚拟机。测试

 

在datastore内部,虚拟机做为虚拟机磁盘文件(VMDKs)来存储。vSphere同时容许LUN的直接链接而无需VMFS格式化。这些设备称做原始映射设备(raw device mapping, RDM)。虚拟环境中的原始设备映射能够用来建立同虚拟机的直接链接。经过VMware RDM功能,I/O性能开销较高的应用程序能够得到巨大的性能提高,由于RDM能够从已有的SAN环境中直接调用命令。

 

这可让用户加载一个现有的LUN。假如使用Exchange Server,而且它已经运行在SAN上面,当虚拟化该Exchange Server时,你会运行VMware转化器、Microsoft转化器或其它第三方产品来将物理机转化为虚拟机,若是只是转化了C盘驱动器,你能够在现有位置上加载原存储。这样服务器在将全部数据转化到VMDK过程当中是不须要宕机的,也不须要额外分配空间用来迁移VMDK。

 

VMware-SAN链接:

 

vSphere支持Fibre Channel,FCoE和iSCSI块存储协议。

 

Fibre Channel协议提供一个多路径,高弹性的基础架构,可是对于专用存储网络设施须要额外支出,如光纤交换机和HBA。

 

相反,iSCSI为共享存储提供相对便宜的选择,由于网卡一般远比Fibre Channel HBA和融合网络适配器便宜。

 

在最新版本的vSphere以前,多路径是很难配置的,可是这一状况获得了改进。此外,iSCSI的链接速度目前限制在1Gbps和10Gbps。最后,对于管理员来讲iSCSI设备的安全性更加复杂,由于其功能特性更加基础,并不适合于高扩展环境。

 

配置限制:

 

VMware对于块存储的配置大小有一些限制。适用于iSCSI和Fibre Channel:

LUNs per ESXi host – 256

Maximum volume size – 64TB

Maximum file size – 2TB minus 512 bytes

 

这些限制值很高对于大多数用户来讲不太可能达到,可是在大规模共享部署环境下LUN的数量多是一个问题,所以在vSphere架构内部署datastore的数量和类型是相当重要的。

 

Hypervisor功能特性:

 

vSphere hypervisor包含一些管理外部存储的功能特性。

 

Storage vMotion使虚拟机可以在datastore之间移动,而虚拟机不用宕机。这可以很好地实现负载均衡或从老硬件设备实现数据迁移。

 

Storage DRS(SDRS)为基于策略的存储提供了可能。新的虚拟机的建立可创建在基于服务的策略上,如IOPS和容量。此外,一旦虚拟机部署完成并投入使用,SDRS可确保容量和性能在多个相似的datastore之间实现负载均衡。

 

存储功能特性:

 

vSphere hypervisor包含一些管理外部存储的功能特性。

 

vStorage APIs for Array Integration(VAAI)是ESXi 4.1引入的一系列附加SCSI命令,它可让主机将特定的虚拟机和存储管理操做卸载(offload)到兼容的存储硬件中。在存储硬件的帮助下,主机执行这些操做起来会更快,同时能节省CPU、内存和存储网络带宽资源。

 

上述功能特性是经过vSphere”primitives”直接映射到新的SCSI命令来实现的。这些功能包括原子硬件辅助锁定,其在VMFS内对文件锁定有更好的粒度。这个特性提供了一种替代性的保护VMFS集群文件系统元数据(metadata)的方法,能够改善共享同一数据存储的ESX服务器大集群的可伸缩性(scalability);全拷贝,将数据复制工做给阵列。这个特性使得存储阵列可以在阵列内部直接完成全体复制,再也不须要ESX服务器参与读取和写回数据的过程;块清零,将精简调配环境下的VMFS清零工做卸载给阵列。这个特性使得存储阵列可以快速清零产生大量的存储块,从而加速虚拟机的部署和供给(provisioning)。VAAI由此扩展到SCSI UNMAP,容许hypervisor控制存储阵列空出精简调配环境下的释放资源。

 

硬件辅助锁定:

VMFS文件系统容许多主机对同一共享逻辑卷的并发访问,这是vMotion运行的必要条件。VMFS有一个内置的安全机制,防止虚拟机被超过一台的主机同时运行或修改。vSphere采用“SCSI预留”做为其传统文件锁定机制,这种方式在某项存储相关的指令操做期间,好比增量快照增加或发生时,均使用“RESERVE SCSI”命令锁定整个逻辑卷。这有助于防止冲突,不过也拖延了存储工做的完成,由于主机必须等待逻辑卷的解锁命令“RELEASE SCSI”才能继续写入。使用Atomic Test and Set(ATS)命令是一种硬件辅助的锁定机制,能够离线地对存储阵列加锁,这样就能够对个别磁盘数据块而非整个逻辑卷。这样可使得余下的逻辑卷在锁按期间继续被主机访问,十分有助于避免性能降低。该功能同时经过VMFS数据存储,容许同一集群中部署更多的主机,以及更多的虚拟主机部署在同一个逻辑卷上。

 

全拷贝:

经过Full Copy技术,部署虚拟机的能力将获得极大提高,由于相应的处理工做能够在存储阵列内部,或者在存储阵列之间(有些存储厂商的阵列支持xcopy功能)完成,过去花费几分钟的处理工做如今已变成几秒钟的事情,同时ESX服务器的CPU负载也会减小(由于其参与的数据流量减小)。该特性的好处对于桌面基础架构环境更有意义,这种环境下极可能涉及到基于模板部署数百个虚拟机之类的工做。

对于Storage vMotion,迁移虚拟机寄居地的过程用时也将获得相似缩减,由于复制过程再也不须要上传给ESX服务器再下达到阵列设备,这将极大释放存储I/O和服务器CPU周期的占用。

Full Copy不只能够节省处理时间,还能够节省服务器的CPU、内存资源以及网络带宽和存储前端控制器I/O。对于上述的大多数度量指标,Full copy最多可达到95%的减幅。

 

块清零:

让阵列对磁盘完成大片清零(bulk zeroing)将加速标准初始化过程。block zeroing的一个用途是建立急性清零厚模式(eager-zero thick)格式的虚拟磁盘。若是不使用block zeroing技术,建立命令必需要等到磁盘阵列清零任务所有完成后才能结束。对于大容量磁盘,这可能会持续较长时间。block zeroing(也称为copy same)会让磁盘阵列当即把游标(cursor)返回给发出请求的服务(仿佛写零过程已经被完成),而后再完成清零生成存储块的工做,这时再也不须要全程持有游标直至工做结束。

vStorage APIs for Storage Awareness (VASA) 是另外一套API,容许vSphere在阵列内获取更多潜在存储资源信息。包括诸如RAID级别,是否精简调配以及数据消重等特征信息。VASA解决的精简配置所存在的另外一个问题就是空间回收。当在Windows或Linux上删除文件时,并无从磁盘上物理删除该文件。偏偏相反,该文件被标记为删除,只有在建立新文件后,被删除的文件才最终被删除。在大多数状况下,这并非个问题。但对位于精简数据存储之上的精简虚拟磁盘来讲,这可能会致使没法控制精简卷的增加。这是由于删除文件后,空闲的磁盘空间并无返还给存储阵列。

 

部署SAN存储的关键步骤:

 

存储管理员在部署SAN存储时应当考虑如下步骤:

 

厂商以及功能支持

大多数,但并不是全部存储供应商支持vSphere的高级功能,如VAAI以及VASA。若是有可能用到以上功能,需当心确认。目前,vStorage阵列集成应用接口只针对基于数据块的存储阵列(光纤存储或iSCSI)有效,并不支持NFS存储。厂商对于VAAI的支持一更不相同,某些厂商,诸如EMC,很快地支持了这些功能,而另外一些厂商花费了很长的时间将其整合到他们的全部存储阵列型号中。你能够经过查看VMware对光纤存储的兼容列表来了解哪些存储阵列支持特定的vStorage应用接口特性。经过VMware光纤存储兼容列表,你能够搜索你的存储阵列是否能够支持VAAI,若是这样,其它的应用接口也是支持的。

 

HBA支持以及专用iSCSI链接

若是管理员计划部署Fibre Channel,那么HBA必须在VMware硬件兼容性列表上。每个服务器上的HBA数量将取决于期待工做负载,而且至少须要2个硬件冗余。对于iSCSI,须要使用专用的网卡,所以也须要多个冗余。

 

Datastore大小

可能的状况下,建立尽量大的datastore。要在存储产品的限制范围内,特别是精简调配状况下。从而减小用户将来须要对数据进行移动的可能。

 

Datastore类型

Datastore是当前虚拟机性能的最低粒度。所以,管理员应当促使datastore与工做负载类型相匹配。例如,测试和开发数据应当放在较低性能存储。将datastore映射到LUN时,存储管理员还应当对基于阵列同步保护的LUN建立单独的datastore。

 

VMware以及存储的将来:

 

VMware已经勾勒出vSphere块存储的演变,以虚拟卷(vVOLs)的形式展示。当前,一个虚拟机是由位于物理LUN映射的datastore上的多个文件系统组成的。vVOLs提供将虚拟机文件抽象成名为vVOL的容器的机会,目的是开启仅针对虚拟机自己的QoS功能。目前,QoS仅能做为整个datastore的属性,这会致使仅仅为了保证虚拟机接收到它所申请的服务层级而进行数据迁移。

 

与VMware相同,其余供应商也已经开发出专门针对VMware的平台。Tintri 是一个很好的例子,尽管它使用NFS而不是块协议。Tintri VMstore 平台熟悉构成虚拟机的文件类型,所以能够确保服务质量,性能跟踪以及闪存利用被准肯定位于虚拟机级别。

 

 

应用于

 

VMware

相关文章
相关标签/搜索