基于ZooKeeper的Lunmap管理方法技术

技术编号:24334018 阅读:81 留言:0更新日期:2020-05-29 21:18
本申请公开了一种基于ZooKeeper的Lunmap管理方法,该方法包括:用户将所要保存的Lunmap数据,通过ZooKeeper客户端发送Lunmap数据请求到ZooKeeper服务端,ZooKeeper的服务端保存并同步数据;Lunmap包括Lun、Target和Initiator三要素,将Lun作为Lunmap存储主体,构建Lunmap存储结构。本申请的目的至少在于,能够显著减少集群管理中数据不一致且有效提高存储效率和可靠性。

Lunmap management method based on zookeeper

【技术实现步骤摘要】
基于ZooKeeper的Lunmap管理方法
本申请涉及分布式存储管理
,具体来说,涉及一种基于ZooKeeper的Lunmap管理方法。
技术介绍
随着分布式技术和SAN(StorageAreaNetwork,存储区域网络)存储技术的飞速发展,存储系统资源的量级有了巨大的提升。然而,面对如此巨额的资源,如何高效高可靠地进行管理显得尤为重要。为了能向用户提供高效高可靠的SAN服务,一种基于ZooKeeper的Lunmap管理方法应运而生。ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,提供配置维护、域名服务、分布式同步、组服务等功能。ZooKeeper保证了分布式环境中数据的强一致性,可以解决很多分布式问题。目前Hadoop、Hbase、Kafka、Storm都使用ZooKeeper作为自己的核心管理组件。Lunmap代表了用户与可访问存储资源的对应关系,通过Lunmap,存储系统可以为不同用户提供不同的存储资源。但是随着存储系统规模的日益庞大,Lunmap的管理方式将变得越来越重要。现有技术存在的问题:在传统的分布式存储系统中,普遍做法是会将Lunmap关系记载到配置文件中,通过rsync+keepalived的方式,将Lunmap的配置文件同步到不同的节点,这种方式无法保证集群配置的一致性,当某个节点故障或者恢复的时候,集群不能及时感知到,并且当集群的节点数量越来越多的时候,这种方式将难以满足高效性、高可靠性合实时性。
技术实现思路
对相关技术中的上述问题,本申请提出一种基于ZooKeeper的Lunmap管理方法,至少能够显著减少集群管理中数据不一致且有效提高存储效率和可靠性。本申请的技术方案是这样实现的:提供了一种基于ZooKeeper的Lunmap管理方法,包括:用户将所要保存的Lunmap数据,通过ZooKeeper客户端(Client)发送Lunmap数据请求到ZooKeeper服务端(Server),ZooKeeper的服务端(Server)保存并同步数据;Lunmap包括Lun(LogicalUnitNumber,逻辑单元号)、Target和Initiator三要素,将Lun作为Lunmap存储主体,构建Lunmap存储结构。根据本申请的实施例,客户端包括第一客户端和第二客户端,服务端包括第一客户端和第二服务端,Lunmap包括第一Lunmap和第二Lunmap。根据本申请的实施例,服务端保存并同步数据,包括:第一服务端将第一客户端的第一Lunmap数据请求交由领导者(Leader)决策数据读写操作;第一服务端将第一Lunmap数据请求发送给第二服务端。根据本申请的实施例,服务端保存并同步数据,还包括:第一服务端和第二服务端执行数据读写操作后通知领导者;领导者收到通知并判断执行结果并把执行结果返回客户端。根据本申请的实施例,存储主体是指按照Lun至少分为第一Lun和第二Lun。根据本申请的实施例,第一Lun下,对应多个Lunmap三要素组且Lun都是第一Lun,至少包括:第一Lun、Target和第一Initiator;第一Lun、Target和第二Initiator。根据本申请的实施例,第二Lun下,对应多个Lunmap三要素组且Lun都是第二Lun,至少包括:第二Lun、Target和第一Initiator;第二Lun、Target和第二Initiator。本申请的有益技术效果在于:使用zookeeper作为集群配置管理软件,并结合精炼的Lunmap存储结构可以有效提高集群的效率和可靠性。相对于传统的方式,本方法可以显著减少集群管理中数据不一致的问题,降低管理的繁琐度。同时也会减少集群管理可能存在的隐患。附图说明为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是应用根据本申请实施例的基于ZooKeeper的Lunmap管理方法示意图;图2是应用根据本申请实施例的基于ZooKeeper的Lunmap管理方法习用Lunmap存储结构图;图3是应用根据本申请实施例的基于ZooKeeper的Lunmap管理方法本专利技术Lunmap存储结构图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。根据本申请的实施例,提供了一种基于ZooKeeper的Lunmap管理方法。ZooKeeper是一个开放源码的分布式应用程序协调服务。Lunmap代表用户与可访问存储资源的对应关系。图1示出了根据本申请实施例的基于ZooKeeper的Lunmap管理方法示意图。参考图1所示,本专利技术的基于ZooKeeper的Lunmap管理方法包括:用户将所要保存的Lunmap数据,通过ZooKeeper客户端(Client)发送Lunmap数据请求到ZooKeeper服务端(Server),ZooKeeper的服务端(Server)保存并同步数据;Lunmap包括Lun(LogicalUnitNumber,逻辑单元号)、Target(目标端)和Initiator(启动端)三要素,将Lun作为Lunmap存储主体,构建Lunmap存储结构。其中,ZooKeeper是一个开放源码的分布式应用程序协调服务,Lunmap代表用户与可访问存储资源的对应关系。本专利技术的上述技术方案,通过支持基于ZooKeeper的Lunmap管理方法,能够显著减少集群管理中数据不一致且有效提高存储效率和可靠性。如图1中ZooKeeper11、服务端12、Lunmap13、客户端14处所示,Lunmap数据与ZooKeeper的交互如下:ZooKeeper11分为服务端12和客户端14,多个服务端只会有一个对外提供服务,即Leader;并且11ZooKeeper便于横向扩展,服务端节点数量的增加不会影响整体的读写性能,理论上节点数量只受限于系统内存。11ZooKeeper为客户端提供了丰富的API,供客户端使用多种服务。用户将所要保存的Lunmap13的Lunmap数据,通过客户端保存至ZooKeeper11的服务端。客户端14的每个Client都会将数据发送给服务端12的某个Server,该Server会将数据交由Leader,由Leader决策数据的写入或者读取。客户端14的Client1将写入Lunmap1数据的请求发送给服务端12的Server1,服务端12的Server1将这个本文档来自技高网...

【技术保护点】
1.一种基于ZooKeeper的Lunmap管理方法,其特征在于,包括:/n用户将所要保存的Lunmap数据,通过ZooKeeper客户端发送Lunmap数据请求到ZooKeeper服务端,ZooKeeper的服务端保存并同步数据;/n所述Lunmap包括Lun、Target和Initiator三要素,其中,将所述Lun作为Lunmap存储主体,构建Lunmap存储结构。/n

【技术特征摘要】
1.一种基于ZooKeeper的Lunmap管理方法,其特征在于,包括:
用户将所要保存的Lunmap数据,通过ZooKeeper客户端发送Lunmap数据请求到ZooKeeper服务端,ZooKeeper的服务端保存并同步数据;
所述Lunmap包括Lun、Target和Initiator三要素,其中,将所述Lun作为Lunmap存储主体,构建Lunmap存储结构。


2.按照权利要求1所述的基于ZooKeeper的Lunmap管理方法,其特征在于,所述客户端包括第一客户端和第二客户端,所述服务端包括第一客户端和第二服务端,所述Lunmap包括第一Lunmap和第二Lunmap。


3.按照权利要求1或2所述的基于ZooKeeper的Lunmap管理方法,其特征在于,所述服务端保存并同步数据,包括:
所述第一服务端将所述第一客户端的第一Lunmap数据请求交由领导者决策数据读写操作;
所述第一服务端将所述第一Lunmap数据请求发送给第二服务端。


4.按照权利要求3所述的基于ZooKeeper的Lunmap管理方法,其特征在于,所述服务端保存并同步数据,还包括:
所述第一服务端和所述第二服务端执行所...

【专利技术属性】
技术研发人员:江慧强
申请(专利权)人:天津中科曙光存储科技有限公司
类型:发明
国别省市:天津;12

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

1