一种基于ceph的存储交互装置及存储系统制造方法及图纸

技术编号:15289870 阅读:47 留言:0更新日期:2017-05-10 17:01
本发明专利技术公开了一种基于ceph的存储交互装置,包括若干个RBD卷、分别与若干个客户端一一对应的若干个RBD cache;RBD cache,用于将接收到的访问请求同步至其他RBD cache;接收并依据其他RBD cache同步过来的访问请求对自身接收到的访问请求进行相应的调整,依据调整后的访问请求访问相应的RBD卷;将访问RBD卷后得到的数据返回对应的客户端。本发明专利技术避免多个客户端通过不同的RBD cache同时对一个RBD卷访问时数据不同步而报错的问题,可靠性高;本发明专利技术还公开了一种包括上述存储交互装置的存储系统。

Storage interaction device and storage system based on CEPH

The invention discloses a storage device based on CEPH interface, which comprises a plurality of RBD volumes, which respectively correspond to a plurality of clients of a number of RBD cache; RBD cache, is used for receiving the access request synchronized to other RBD cache; and on the basis of other RBD cache receiving with step access request the receiving access request to make the corresponding adjustment, based on the adjusted access request access to the volume RBD; will access the RBD volume data obtained after return the corresponding client. The invention avoids multiple clients with different RBD cache to a RBD volume when accessing the data synchronization and the error problem, the reliability is high; the invention also discloses a memory system including the memory device interaction.

【技术实现步骤摘要】

本专利技术涉及数据存储
,特别是涉及一种基于ceph的存储交互装置及存储系统
技术介绍
Ceph是一种基于优秀的性能、可靠性和可扩展性而设计的统一的、分布式的存储系统,Ceph的底层是RADOS(reliableautonomousdistributedobjectstorage,分布式对象存储系统)。RADOS能够将物理存储设备虚拟化整合为RBD(RADOS块设备)池,并依据自定义将RBD池分割成若干个RBD卷进行数据存储。RBD卷与用户端进行数据交互时,要通过target(靶子)层,以及通过内核模块或librbd作为接口,其中,内核模块处于内核态,而librbd处于用户态。由于librbd不能够使用内核页缓存,故librbd内设置有自己的用户态的缓存,称为“RBDcache”,RBDcache就如一般的硬盘cache(缓存)一样,可以提高librbd的性能。如图1所示,图1为当前ceph内的存储交互系统的结构示意图;由于librbd为用户态,此时对应使用的target层为tgt-target,客户端1用一根网线连接到集群中的node1节点(这里的节点指服务器),客户端2使用一根网线连接到集群中的node2节点,所有节点中创建target1,通过后端的RBD卷1创建LUN1并通过target1映射到对应的客户端,此时客户端1和客户端2均能通过target1以及LUN1访问RBD卷1。目前的RBDcache是依据客户端来建立的,这样客户端1对应RBDcache1,客户端2对应RBDcache2,每个客户端分别对应一个RBDcache。此时,客户端1访问RBD卷1的路径为:客户端1→node1中的target1→LUN1→RBDcache1→RBD卷1;客户端2访问RBD卷1的路径为:客户端1→node2中的target1→LUN1→RBDcache2→RBD卷1。这种情况下,如果两个客户端同时访问RBD卷1进行操作(诸如虚拟机迁移、读写等),且客户端1和客户端2发送的数据不一致,就会导致RBDcache1和RBDcache2中的数据不同步,使得RBD卷不知道应该使用哪个RBDcache中的数据,进而导致系统报错。因此,如何提供一种减少系统报错的基于ceph的存储交互装置及存储系统是本领域技术人员目前需要解决的问题。
技术实现思路
本专利技术的目的是提供一种基于ceph的存储交互装置,避免多个客户端通过不同的RBDcache同时对一个RBD卷访问时数据不同步而报错的问题,可靠性高;本专利技术的另一目的是提供一种包括上述存储交互装置的存储系统。为解决上述技术问题,本专利技术提供了一种基于ceph的存储交互装置,包括若干个RBD卷、分别与若干个客户端一一对应的若干个RBDcache;所述RBDcache,用于将接收到的所述访问请求同步至其他RBDcache;接收并依据其他RBDcache同步过来的访问请求对自身接收到的访问请求进行相应的调整,依据调整后的访问请求访问相应的RBD卷;将访问RBD卷后得到的数据返回对应的客户端。优选地,所述RBDcache具体用于:将接收到的所述访问请求同步至其他RBDcache;接收并依据其他RBDcache同步过来的访问请求对自身接收到的访问请求的访问地址或访问顺序进行相应的调整,依据调整后的访问请求访问相应的RBD卷;将访问RBD卷后得到的数据返回对应的客户端。为解决上述技术问题,本专利技术还提供了一种基于ceph的存储系统,包括如以上任一项所述的存储交互装置、分别通过各个所述RBD卷建立的若干个逻辑单元、与所述逻辑单元一一对应的target层以及服务器集群,所述服务器集群内包括若干个服务器;所述target层,用于分别接收若干个所述客户端发送的访问请求;所述逻辑单元,用于作为自身对应的所述target层与各个所述RBDcache之间的数据交互接口,将自身对应的所述target层接收到的若干个访问请求分别分配至相应的RBDcache。优选地,所述target层包括若干个对应于所述逻辑单元的target,所述target设置于所述ceph内的服务器中,且与所述服务器一一对应。优选地,所述RBDcache设置于相应的服务器内,各个所述RBDcache所位于的服务器之间通过网线两两相连。优选地,所述客户端与服务器通过网线连接。本专利技术提供了一种基于ceph的存储交互装置,各个RBDcache基于客户端设置,当RBDcache接收到访问请求后,首先同步至其他RBDcache,各个RBDcache依据其他RBDcache同步过来的访问请求对自身接收到的访问请求进行调整,然后依据调整后的访问请求进行RBD卷的访问操作。可见,本专利技术在当不同RBDcache同时接收到访问相同RBD卷但操作内容不同的访问请求时,会通过不同RBDcache之间的相互同步操作调整这些访问请求的先后顺序,或者访问请求对应的访问位置,从而避免该种情况下系统报错,可靠性高。本专利技术还提供了一种包括上述存储交互装置的存储系统,也具有上述优点,在此不再赘述。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为当前ceph内的存储交互系统的结构示意图;图2为本专利技术提供的一种基于ceph的存储系统的结构示意图。具体实施方式本专利技术的核心是提供一种基于ceph的存储交互装置,避免多个客户端通过不同的RBDcache同时对一个RBD卷访问时数据不同步而报错的问题,可靠性高;本专利技术的另一核心是提供一种包括上述存储交互装置的基于ceph的存储系统。为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供了一种基于ceph的存储交互装置,包括若干个RBD卷、分别与若干个客户端一一对应的若干个RBDcache;RBDcache,用于将接收到的访问请求同步至其他RBDcache;接收并依据其他RBDcache同步过来的访问请求对自身接收到的访问请求进行相应的调整,依据调整后的访问请求访问相应的RBD卷;将访问RBD卷后得到的数据返回对应的客户端。作为优选地,RBDcache具体用于:将接收到的访问请求同步至其他RBDcache;接收并依据其他RBDcache同步过来的访问请求对自身接收到的访问请求的访问地址或访问顺序进行相应的调整,依据调整后的访问请求访问相应的RBD卷;将访问RBD卷后得到的数据通过相应的逻辑单元和target层返回对应的客户端。可以理解的是,一般仅在多个的RBDcache收到的访问请求有冲突时才会进行调整,若没有冲突的话,则可按照接收到的访问请求依次进行访问操作。另外,RBDcache需要根据访问请求的类型对其进行调整,例如,当两个RBDcache均接收到写操作,且待写本文档来自技高网
...
一种基于ceph的存储交互装置及存储系统

【技术保护点】
一种基于ceph的存储交互装置,其特征在于,包括若干个RBD卷、分别与若干个客户端一一对应的若干个RBD cache;所述RBD cache,用于将接收到的所述访问请求同步至其他RBD cache;接收并依据其他RBD cache同步过来的访问请求对自身接收到的访问请求进行相应的调整,依据调整后的访问请求访问相应的RBD卷;将访问RBD卷后得到的数据返回对应的客户端。

【技术特征摘要】
1.一种基于ceph的存储交互装置,其特征在于,包括若干个RBD卷、分别与若干个客户端一一对应的若干个RBDcache;所述RBDcache,用于将接收到的所述访问请求同步至其他RBDcache;接收并依据其他RBDcache同步过来的访问请求对自身接收到的访问请求进行相应的调整,依据调整后的访问请求访问相应的RBD卷;将访问RBD卷后得到的数据返回对应的客户端。2.根据权利要求1所述的装置,其特征在于,所述RBDcache具体用于:将接收到的所述访问请求同步至其他RBDcache;接收并依据其他RBDcache同步过来的访问请求对自身接收到的访问请求的访问地址或访问顺序进行相应的调整,依据调整后的访问请求访问相应的RBD卷;将访问RBD卷后得到的数据返回对应的客户端。3.一种基于ceph的存储系统,其特征在于,包括如权利要求1-2中任一项所述的存储交互装置、分别通过各...

【专利技术属性】
技术研发人员:刘斌
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南;41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1