VPLEX是如何虚拟化后端基于存储设备的虚拟化

深入剖析Vplex双活数据中心存储方案深入剖析Vplex双活数据中心存储方案晗狄科技观百家号EMC上一代存储双活方案是通过vPlex网关产品实现,具备异构其他厂商存储的能力,将各厂商存储虚拟化为统一的存储池,为上层服务器提供存储资源。从2010年vPlex发布以来其的硬件已经更新了VS1、VS2和VS6三代。2016年推出的VS6硬件引擎间通过40Gb IB互联(替代FC),在性能上相比VS2硬件提升了2倍、时延下降1/3,并支持更多卷数量。vPlex6.0 (VS6硬件) 也升级OS至GeoSynchrony6.0针对闪存做了优化。其双活特性就是通过vPlex Metro的Distributed Device(分布式镜像卷)功能实现,并提供跨站点的双活应用。vPlex Metro由两套vPlex集群构成,每个站点的vPlex设备都有自己专属的本地存储阵列。通过创建分布式镜像卷为跨设备的镜像卷,可提供双活访问。两个站点的vPlex集群各有一个卷,两个卷的ID一样。在组网上,主机同时连接到两站点的vPlex,两站点的vPlex之间通过FC或10Ge连接,后端阵列只与本地的vPlex连接;vPlex之间和vPlex Witness之间均需要IP网络连接。vPlex Management Console 是 VPLEX 机柜中的 1U 服务器。此服务器向vPlex提供GUI管理界面,在双引擎和四引擎配置中,此服务器由UPS 提供备用电源。接下来,看看vPlex如何接管外部设备的,外部(包含异构存储)存储把LUN映射给vPlex后,在vPlex上呈现为Storage vol,基于Storage Vol在生产Extents,它可以是Storage Vol的部分或全部(每个Storage Vol最多128个),Extents不能跨Storage Vol,再以Raid的形式组织Extents成Dev(Raid支持0,1和拼接);没有被其他Dev组织的Dev称为Top Level Device,在Top Level Device上创建Virtual volumes提供给主机,并支持在线扩展。最后由主机接口和Virtual Volume组成Storage Views,可以直接映射给主机访问。从vPlex5.0(VS2硬件)开始,在vPlex产品系列vPlex Local和vPlex Metro中添加了vPlex Geo,从而扩展并增强了vPlex 4.0(VS1硬件)虚拟存储的功能。vPlex Geo 扩展了vPlex Access Anywhere 存储的覆盖范围,能通过异步通信支持多达 50 ms 的往返时间(RTT)站点间延迟。vPlex通过 Access Anywhere支持长距离共享、访问和重新定位数据拷贝。vPlex系统可以包含一个或两个vPlex 群集。vPlex Local系统 包含一个群集 ,vPlex Metro和vPlex Geo 包含两个群集系统组成。这些群集可提供vPlex Access Anywhere功能。每个vPlex 群集均包含vPlex Management Console,一个、两个、四个或八个引擎,每个引擎包含一个备用电源vPlex Local用于使用单个vPlex群集管理数据中心内的数据移动和访问。支持单、双或四配置(分别包含一个、两个或四个引擎),本地vPlex组成local集群(4引擎8控制器),两站点local集群再组成Metro远程集群(最大8引擎,16控制器),16节点AA集群。vPlex Metro使用两个vPlex群集且包括独特功能,支持使用直写缓存方式在两个群集之间镜像数据。vPlex Metro部署中的群集不要求有相同数量的引擎。例如,vPlex Metro系统可能由一个带两个引擎的群集和另一个带四个引擎的群集组成vPlex Geo用于两个异步远距离节点之间使用 Access Anywhere进行访问。vPlex Geo分布式卷使用回写缓存支持 Access Anywhere分布式镜像。如同 vPlex Metro,vPlex Geo系统也包含两个群集,这些群集无需具有相同数量的引擎。vPlex Metro 和 vPlex Geo系统可根据需要包括 Witness。Witness 作为虚拟机部署,且只支持VMware,部署在与两个vPlex群集不同的故障域中(第三方站点)。在两个群集之间进行仲裁,发生站点故障和群集间通信中断时,Witness 用于改善应用程序可用性。Witness与vPlex Metro(RTO和RPO为0) 和 vPlex Geo(RTO=0,群集间最大50毫秒的延迟,RPO接近0)配合使用,协调无缝故障切换(区分站点故障或连接故障)作为 ESX 主机中的虚拟机运行,驻留在两个vPlex群集以外的域中。通过IP连接到vPlex。vPlex的关键能力AccessAnywhere是通过 分布式一致性缓存技术(Distributed Cache Coherenece)来实现 ,在 集群内 及 跨区域的另一集群间 完成缓存数据的一致性; 实现跨主机、跨集群、跨数据中心的访问和在节点之间同步镜像。 vPlex通过把控制器的单个内存系统进行合并以形成分布式缓存。分布式设计可以跨 vPlex Metro 和Geo系统进行扩展,以提供全局系统的缓存连贯性和一致性。分布式一致性缓存技术在实现上面,并没有强求所有的Cache都保持统一,而是基于目录形式来跟踪细小的内存块通过锁的粒度来加强扩展能力。 每个引擎的cache分为本地Cache (Cache local)和全局 Cache (
global);每引擎的本地Cache只有26GB,其余为全局读的时候先读Local Cache,如命中直接读取;如在Global中命中,则从对应的引擎Cache中将其读取到Local Cache,再反馈主机;如没有命中,则从本地后端的存储中读取到Local中,并同时修改Local和Global Cache中的信息与索引信息。写如数据时,vPlex Metro会通过透写方式写到两个站点,待数据写入两地的磁盘阵列后,才会向主机回应写完成。数据写入后,Cache一致性机制会随即通知Cache页面的变化,并在所有引擎上共享该信息,达到各引擎系统的共享。由于不同站点的主机可同时读写访问同一个卷,分布式缓存一致性技术保证不同站点的主机访问数据的一致性,这确保了主机访问分布式卷时将始终收到该卷最新的一致数据写的时候先判断是否在Local、Global Cache中有对应的旧数据,如没有直接写入Local cache;如有旧数据,先废除旧数据再写入Local;再写入后端存储;然后反馈完成,同时 Global Cache中的索引做相应修改。在vPlex Metro、local中数据写入两个集群下方硬盘即反馈完成;在vPlex GEO中数据写入本地集群的存储、远端内存,即反馈完成vPlex Local和Metro都使用直写缓存模式。在直写缓存中,在虚拟卷收到主机的写请求时,数据将写入到映射卷的后端存储卷。阵列确认该数据后,vPlex会将确认发送回主机,指示写入成功。此缓存模式不适用于 vPlex Geo 系统,在该系统中 vPlex群集支持更大RTT 间隔部署。对于此距离,大多数应用程序不能接受同步直写操作的延迟。相反vPlex Geo使用回写缓存实现无需同步操作的数据持久性。在此缓存模式中,vPlex接受主机写入缓存并将镜像数据复制到另一个本地控制器的内存中,然后向主机确认数据。最后再将数据异步转储到后端存储阵列。出现电源故障时,vPlex中的缓存保险存储逻辑会将任何未写入的缓存数据存储到本地SSD存储上。vPlex只提供存储异构虚拟化和镜像两项功能,快照,复制等特性需要添加RecoverPoint实现,所以vPlex的组网方式常常会考虑配合RecoverPoint一起使用采用vPlex实现站点间的双活;vPlex接受到主机写IO之后,同时写入两个数据中心的存储。此外vPlex内部集成IO分流软件,vPlex将每个主机写IO同步复制到RecoverPoint。RecoverPoint将每个IO记录下来,采用CDP实现任意时间点恢复。实现3DC方案;站点2的RecoverPoint通过异步复制将IO复制到站点3部署的RecoverPoint设备。 本地和异地的RecoverPoint都将每个IO记录下来,实现任意时间点恢复。vPlex Metro集群支持最大8引擎16控制器;支持读Cache,联合RecoverPoint实现支持CDP方案。简单总结下,vPlex的 分布式Cache针对读IO 可以加速、 提高性能;但是写IO会增加延时。在IO写入时,vPlex接收主机IO后,需要查询远程 vPlex节点 是否有读缓存(旧数据),通知该缓存失效,远程vPlex返回确认后,才可写入镜像卷。RecoverPoint推荐的日志卷配置需要考虑额外容量记录日志,日志卷记录生产卷每个变化IO,配置容量时要考虑到日志的变化量,网络带宽和稳定性,存储的性能等复杂问题。在配合RecoverPoint的CDP方案中,主机写操作下来以后,灾备端阵列产生会出现严重IO放大操作。由于这些原因和网关双活的成本等其他因素,EMC在2015年也推出了基于VMax存储的SRDF/Metro双活功能。温馨提示:请搜索“ICT_Architect”或“扫一扫”下面二维码关注公众号,获取更多精彩内容。听说点赞和分享的朋友都已走上人生巅峰本文由百家号作者上传并发布,百家号仅提供信息发布平台。文章仅代表作者个人观点,不代表百度立场。未经作者许可,不得转载。晗狄科技观百家号最近更新:简介:微信公众号“架构师技术联盟”自媒体作者作者最新文章相关文章尊敬的用户,您的IE浏览器版本过低,为获取更好的浏览体验,请升级您的IE浏览器。
尊敬的用户:
您好,为了给您提供更好的服务,网站将于北京时间日0时—4时进行维护,届时部分页面(包括但不限于咨询和购买、技术支持和认证页面)无法访问,请您尽量避开以上时间段获取相关服务,感谢您的谅解和支持!
Questo sito utilizza cookie di profilazione (propri e di terze parti) per ottimizzare la tua esperienza online e per inviarti pubblicità in linea con le tue preferenze. Continuando a utilizzare questo sito senza modificare le tue preferenze acconsenti all’uso dei cookie. Se vuoi saperne di più o negare il consenso a tutti o ad alcuni cookie
The website that you are visiting also provides Arabian language. Do you wish to switch language version?
???? ???? ????? ???? ????? ??????? ?????? ??????? ?????. ?? ???? ?? ????? ????? ??????
The website that you are visiting also provides Russia language Do you wish to switch language version?
Данный сайт есть в английской версии. Желаете ли Вы перейти на английскую версию?
下载产品软件,获取故障处理、安装配置、升级维护等场景的技术文档、案例和公告
购买和咨询
成为合作伙伴
合作政策与市场管理
合作伙伴支持
我是 . . .
请点击"我的空间"
想申请权限吗?
想查看自己的证书吗?
想订阅自己关注的产品和解决方案吗?
想下载最新的资料吗?
不再提醒我
关注成功!
关注失败!
Loading...
发布时间: &
浏览次数: &5487
下载次数: &4242
文档编号:豆丁微信公众号
君,已阅读到文档的结尾了呢~~
vPlex存储虚拟化引擎功能测试报告
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
VPLEX虚拟化引擎测试报告
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口VPLEX – EMC的传统存储虚拟化解决方案
VPLEX – EMC的传统存储虚拟化解决方案
转载请在文首保留原文出处:
注:EMC对存储虚拟化的远景已经在最新产品ViPR中有消息描述,参考专家问答
小虾最近的文章都有点“虚”,基本是无关具体实现和原理的,有点像是售前给客户做需求汇总。不过话说回来,最近业内啥东西都得和一个“虚(Virtual)”字扯上点关系,所以小虾也算是个赶潮流的人。但个人认为,只有在理解了最初需求的大背景之下,再深入具体技术,最后具体到某一产品,你才能真正理解一个产品在整个IT架构中所处的位置,它所存在的意义,为什么要这样设计,以及与竞争对手的差异等等。这也就是为什么人们要研究历史的原因所在吧。所以,小虾今天就继续冒死“虚”一把。
为了真正的实现IT-as-a-Service,“云计算”的概念出现了,而要实现云计算基础架构,虚拟化又是必须的。目前我们已经能够做到“Virtualize Everything”,把所有的物理资源都进行重新封装,以资源池的方式进行分配和管理,而本文将专注于其中的存储虚拟化。就EMC来讲,Virtual Provisioning(VP)和Storage Tiering(FAST)都是存储虚拟化的产物。VP将所有物理硬盘进行了“池”化,把封装之后的存储对象(Pool
LUN)给主机使用,做到了按需分配(ThinLUN)、更好的伸缩性(添加\移除物理硬盘更容易)、相比传统RAID组更灵活等诸多优点;FAST基于VP实现了存储分层,将冷/热数据智能地分布在不同性能的存储资源之上。以上两种概念听起来都挺不错的,但作用范围,仅限于存储内部。EMC对于存储虚拟化有着更大的愿景:
对于最终用户来说,数据是无处不在的(Access Anywhere),你可以在任何时间,任何地点访问你所需要的数据。不用担心数据安全,性能等诸多问题,这所有的一切对你来说都是透明的。你所要做的,就是尽情的访问。对于技术人员来说,那就意味着更多更复杂的问题等着你去解决,比如下面这些:
Unified Management - 不论底层是哪个厂商的存储,都能将它们的存储资源进行打包,统一管理和分配Non-disruptive - 数据在存储设备之间的移动不能存在业务中断(不存在主机重新识别LUN的过程)High Availability - 任何位置的失败都不会影响数据访问High Performance – 不论你在哪,对同一份数据的访问都不会感到性能上的差异Collaboration – 对一份数据的修改必须立刻在另一个位置表现出来,从而确保地域间的业务合作不会因为数据不一致而变得不可行(数据一致性)
想要实现这些需求,仅仅在存储内部做虚拟化是不够的,你必须把所有存储资源(EMC & non-EMC)统一封装起来,对新的存储对象添加控制管理机制以及新功能才行,这一层封装显然要位于存储之外了,因为目标对象不再仅是某个存储设备内部的磁盘,而是所有存储设备的磁盘(当然还可能是磁带等其他媒介)。我们把这一虚拟层称为Virtualization Controller,它可以是Block-level,也可以是File-Level,我们主要讲Block-Level。Block-level
Storage Virtualization的做法一般是这样的:在物理存储设备和主机之间建立一个抽象层(Abstraction Layer),它会把其下的所有存储资源(比如LUN)重新打包成其自身所能识别的一种存储对象(比如叫Virtual Storage),然后再将Virtual Storage呈现给主机进行访问。有人会反驳说主机端的LVM(Logical Volume Manger)也可以视为一个中间层,为什么还要多此一举。没错,但LVM是基于主机的,对于存储虚拟化有着太多的局限性(性能、数据移动性、容灾、可用性、灵活性、伸缩性等等等等…要说的话估计又是一篇文章了),要真正地做到存储虚拟化,就必须将抽象层建立于底层存储和主机之外,把对资源的控制权完全交给Virtualization
Controller,主机要做的事就是“计算”,而关于存储的一切,您就别插手了。
“虚”完了咱来点“实”的,简单的描述了存储虚拟化的必要性以及它在EMC眼中的位置,是时候来认识下具体实现了。EMC的Virtualization Controller实现就是VPLEX,它是一套软/硬结合的解决方案,来看看VPLEX究竟长啥样。
下左图的机柜就是一个完整的VPLEX硬件图示,整个机柜内的所有设备组成了一个VPLEX解决方案。最关键的部分是Engine,每个Engine由两个Director组成,Director相当于存储架构中的控制器(Storage Processor),拥有CPU/RAM/前后端口/缓存,运行GeoSynchrony操作系统,负责将针对Virtual Storage的逻辑I/O转换成到后端存储的物理I/O和管理VPLEX对象。VPLEX将Director以集群的方式运行,实现高可用和负载均衡。图中一共有4个Engine,即8个Director,她们共同组成了一个集群,接收来自主机的I/O。每个Cluster会配备一台Management
Server,她是用于管理VPLEX的一个接口,其上运行着VPLEX web server进程,我们可以通过VPLEX GUI/CLI/REST-based服务接口对整个系统进行管理。如果你购买的配置有多个Engine,那么还会有一对FC交换机用于Director之间的通信。Switch UPS和SPS用于断电保护和Cache Vaulting,我就不多介绍了。下右图是一个逻辑结构,清楚地标明了VPLEX所处的位置。
可以看到,Engine是VPLEX硬件架构中最重要的一个部件,让我们来个近景。下图为一个VPLEX VS2 Engine(老版本是VS1),由两个Director组成(左B右A),是不是和VNX/CLARiiON CX4的SP很像,其实道理都是一样的,长得像也不足为奇。最左边的是管理模块,用于Management Server的IP通信。另外,每个SP可以安装5个I/O模块,从左到右分别用于主机连接、后端存储连接、集群内部Director间通信、集群间通信、保留为将来使用。
VPLEX VS2 Engine
整个机柜为一个集群,最多允许4个Scale-out Engine(Scale-out果然是将来的架构趋势,EMC Isilon也是如此,请看EMCIsilon– “Scale Out”时代 ),VPLEX当然也支持多集群,那就你会看到如下的配置,我们称之为VPLEX
Metro解决方案,它使得你的应用程序和数据能够在两个站点间任意移动,且保证数据的一致性和可用性(Witness用于提高可用性,本文不做介绍):
对存储结构有经验的读者很快便能理解这些组件之间的关系和大概的工作流,硬件就不多做介绍了,来看一下具体的存储对象。为了更清楚地解释,我们以VNX-block为例作为后端存储。下图是VPLEX的存储对象图示,当你将VPLEX Director的后端端口与VNX的前端端口连接,并通过VNX Storage Group将LUN映射给VPLEX Director之后,VPLEX看到的就是Storage Volume对象。随后,你可以将Storage
Volume分割成Extent,再将Extent组合成Device,最后通过VPLEX的Mapping机制Storage View将Virtual Volume呈现给主机,最终主机扫描总线之后就能看到磁盘了。
了解了技术产生的背景以及简单的硬件和存储对象介绍,我相信你已经理解了VPLEX在整个IT架构中的位置以及宏观上的工作方式了。但这还不足以让客户掏钱,因为VPLEX的使用场景才是真正使人兴奋的地方,必须围观一下她是如何满足我们之前所提到的那么多需求的。然后你才能体会到,没有Virtualization Controller这一抽象层,很多客户需求是满足不了的。
VPLEX所提供的VPLEX Local、VPLEX Metro、VPLEX Geo以及将来的VPLEX Global这四种解决方案,正如下图所示,你的应用程序和数据能够在任何一个数据中心内穿梭,真正的做到Data Access Anywhere,这也是EMC对于存储虚拟化的最大愿景。
本文简单地介绍了VPLEX,目的是让读者知道Virtualization Controller的存在意义以及什么是VPLEX。以后会继续讲述一些关于VPLEX的应用场景,以及实现中关键性技术,比如Global Distributed Cache, VPLEX Witness, VPLEX Mobility等,尽请关注。
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!}

我要回帖

更多关于 基于存储设备的虚拟化 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信