CN106453360B - 基于iSCSI协议的分布式块存储数据访问方法及系统 - Google Patents

基于iSCSI协议的分布式块存储数据访问方法及系统 Download PDF

Info

Publication number
CN106453360B
CN106453360B CN201610946021.1A CN201610946021A CN106453360B CN 106453360 B CN106453360 B CN 106453360B CN 201610946021 A CN201610946021 A CN 201610946021A CN 106453360 B CN106453360 B CN 106453360B
Authority
CN
China
Prior art keywords
virtual
node
address
resource
cluster
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610946021.1A
Other languages
English (en)
Other versions
CN106453360A (zh
Inventor
何云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Eisoo Information Technology Co Ltd
Original Assignee
Shanghai Eisoo Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Eisoo Information Technology Co Ltd filed Critical Shanghai Eisoo Information Technology Co Ltd
Priority to CN201610946021.1A priority Critical patent/CN106453360B/zh
Publication of CN106453360A publication Critical patent/CN106453360A/zh
Application granted granted Critical
Publication of CN106453360B publication Critical patent/CN106453360B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/631Small computer system interface [SCSI] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种基于iSCSI协议的分布式块存储数据访问方法及系统,包括构建基于虚拟IP机制的多资源管理系统,所述多资源管理系统包括主机层、iSCSI协议层和存储层;基于动态反馈将虚拟IP资源分配到集群各节点,使得集群各节点均衡负载。本发明的基于iSCSI协议的分布式块存储数据访问方法及系统,能够满足分布式集群块存储iSCSI多路径访问,提供高可用与高并发的访问网关,并减少分布式块存储并发访问的权限冲突,避免资源均衡的性能瓶颈,为数据访问的安全性、可靠性提供保障。

Description

基于iSCSI协议的分布式块存储数据访问方法及系统
技术领域
本发明涉及云存储的技术领域,特别是涉及一种基于iSCSI协议的分布式块存储数据访问方法及系统。
背景技术
传统的网络存储系统采用集中的存储服务器存放所有数据。存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。
分布式存储是将数据分散存储在多台独立的设备上,其采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
现有技术中,对分布式块存储采用的是内核态的LIO访问方法。但是该访问方法的二次开发难度大,且用户的可选择性不强。
Internet小型计算机系统接口协议(Internet Small Computer SystemInterface,iSCSI)是2003年IETF(InternetEngineering Task Force,互联网工程任务组)制订的一项标准,用于将小型计算机系统接口(Small Computer System Interface,SCSI)数据块映射成以太网数据包。从根本上说,iSCSI协议是一种利用IP网络来传输潜伏时间短的SCSI数据块的方法,iSCSI使用以太网协议传送SCSI命令、响应和数据。iSCSI克服了直接连接存储的局限性,能够跨不同服务器共享存储资源,并可以在不停机状态下扩充存储容量,实现远程存储管理。
iSCSI协议的工作过程:当iSCSI主机应用程序发出数据读写请求后,操作系统会生成一个相应的SCSI命令,该SCSI命令在iSCSI主机(initiator)层被封装成ISCSI消息包并通过TCP/IP传送到设备侧,设备侧的iSCSI目标(target)层会解开iSCSI消息包,得到SCSI命令的内容,然后传送给SCSI设备执行;设备执行SCSI命令后的响应,在经过设备侧iSCSI target层时被封装成ISCSI响应PDU,通过TCP/IP网络传送给主机的ISCSIinitiator层,iSCSI initiator会从ISCSI响应PDU里解析出SCSI响应并传送给操作系统,操作系统再响应给应用程序。
对于规模不大的iSCSI target采用用户态的iSCSI协议访问虽然更为便捷,但也存在以下问题:
(1)无法满足Active/passive多路径环境和集群多节点访问存储需求;
(2)多节点通过iSCSI协议访问时,访问冲突导致对同一逻辑单元号(LogicalUnit Number,LUN)的操作异常;
(3)在分布式访问存储中,均衡器成为资源均衡的瓶颈。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于iSCSI协议的分布式块存储数据访问方法及系统,能够满足分布式集群块存储iSCSI多路径访问,提供高可用与高并发的访问网关,并减少分布式块存储并发访问的权限冲突,避免资源均衡的性能瓶颈,为数据访问的安全性、可靠性提供保障。
为实现上述目的及其他相关目的,本发明提供一种基于iSCSI协议的分布式块存储数据访问方法,包括构建基于虚拟IP机制的多资源管理系统,所述多资源管理系统包括主机层、iSCSI协议层和存储层;所述主机层用于提供访问分布式块存储的访问路径列表;所述iSCSI协议层用于提供主机层访问分布式块存储的路径;所述存储层用于基于Ceph分布式文件系统,对存储驱动层通过块存储接口RBD提供块访问;在该多资源管理系统中,集群中所有节点的同一分布式块存储的LUN信息完全一致;所有主机的访问路径列表完全一致;每个分布式块存储都与唯一的虚拟IP一一对应;基于动态反馈将虚拟IP资源分配到集群各节点,使得集群各节点均衡负载;其中分配虚拟IP资源时循环执行以下操作:设置可分配最低虚拟IP资源容余Mmin;计算集群各节点的虚拟IP资源容余;选取集群中的满足条件Mi>Mmin的所有节点,Mi为集群中节点的虚拟IP资源容余;若集群中不存在满足该条件的节点,则重新设置可分配最低虚拟IP资源容余,直至选取到满足该条件的节点;将选取的节点加入到备选节点集合;计算备选节点集合中各节点的权值;选取备选节点集合中权值最大的节点;计算备选节点集合中权值最大的节点的负载变化值;根据备选节点集合中权值最大的节点的负载变化值,修改备选节点集合中权值最大的节点的虚拟IP资源容余。
于本发明一实施例中,所述虚拟IP机制通过分布式集群组件管理系统来实现;所述分布式集群组件管理系统包括集群资源管理器、本地资源管理器和消息及成员管理模块;
所述集群资源管理器用于对集群和资源的各种事件做出反应和决策;资源事件包括虚拟IP的创建、删除、链路异常;
所述本地资源管理器用于提供虚拟IP资源及块存储操作的bash脚本;
所述消息及成员管理模块用于集群资源管理器和本地资源管理器之间的消息传递以及分布式集群中成员关系管理。
于本发明一实施例中,所述基于虚拟IP机制的多资源管理系统采用以下方式管理虚拟IP资源:
创建虚拟IP-分布式块存储-LUN资源组;
设置虚拟IP-分布式块存储-LUN资源组属性;
若属性设置失败,则删除虚拟IP-分布式块存储-LUN资源组;若属性设置成功,则将虚拟IP-分布式块存储-LUN资源组映射至主机层;若虚拟IP-分布式块存储-LUN资源组映射至主机层失败,则删除虚拟IP-分布式块存储-LUN映射和虚拟IP-分布式块存储-LUN资源组;若虚拟IP-分布式块存储-LUN资源组映射至主机层成功,则更新虚拟IP-分布式块存储-LUN数据库信息。
于本发明一实施例中,根据公式Mi=Mn+k1*Δt*C/L-k2*Rn/C计算集群各节点的虚拟IP资源容余;其中Mn为上次时间片到达时由集群的仲裁节点传入节点的负载容余,k1*Δt*C/L为时间段Δt内节点完成的负载,k2*Rn/C为时间段Δt内为集群的仲裁节点添加新请求而增加的负载;k1、k2为自定义系数;Rn为Δt时间段内增加的请求个数;C为节点的性能;L为节点的当前负载;Δt为当前时间与上次时间片到达时的时间差。
于本发明一实施例中,备选集合中权值最大的节点的虚拟IP资源容余修改为备选集合中权值最大的节点的原虚拟IP资源容余与Δt时间内该节点的负载变化值之差,Δt为当前时间与上次时间片到达时的时间差。
同时,本发明还提供一种基于iSCSI协议的分布式块存储数据访问系统,包括构建模块和均衡模块;
所述构建模块用于构建基于虚拟IP机制的多资源管理系统,所述多资源管理系统包括主机层、iSCSI协议层和存储层;所述主机层用于提供访问分布式块存储的访问路径列表;所述iSCSI协议层用于提供主机层访问分布式块存储的路径;所述存储层用于基于Ceph分布式文件系统,对存储驱动层通过块存储接口RBD提供块访问;在该多资源管理系统中,集群中所有节点的同一分布式块存储的LUN信息完全一致;所有主机的访问路径列表完全一致;每个分布式块存储都与唯一的虚拟IP一一对应;
所述均衡模块用于基于动态反馈将虚拟IP资源分配到集群各节点,使得集群各节点均衡负载;其中分配虚拟IP资源时循环执行以下操作:
设置可分配最低虚拟IP资源容余Mmin
计算集群各节点的虚拟IP资源容余;
选取集群中的满足条件Mi>Mmin的所有节点,Mi为集群中节点的虚拟IP资源容余;若集群中不存在满足该条件的节点,则重新设置可分配最低虚拟IP资源容余,直至选取到满足该条件的节点;
将选取的节点加入到备选节点集合;
计算备选节点集合中各节点的权值;
选取备选节点集合中权值最大的节点;
计算备选节点集合中权值最大的节点的负载变化值;
根据备选节点集合中权值最大的节点的负载变化值,修改备选节点集合中权值最大的节点的虚拟IP资源容余。
于本发明一实施例中,所述构建模块中,所述虚拟IP机制通过分布式集群组件管理系统来实现;所述分布式集群组件管理系统包括集群资源管理器、本地资源管理器和消息及成员管理模块;
所述集群资源管理器用于对集群和资源的各种事件做出反应和决策;资源事件包括虚拟IP的创建、删除、链路异常;
所述本地资源管理器用于提供虚拟IP资源及块存储操作的bash脚本;
所述消息及成员管理模块用于集群资源管理器和本地资源管理器之间的消息传递以及分布式集群中成员关系管理。
于本发明一实施例中,所述基于虚拟IP机制的多资源管理系统采用以下方式管理虚拟IP资源:
创建虚拟IP-分布式块存储-LUN资源组;
设置虚拟IP-分布式块存储-LUN资源组属性;
若属性设置失败,则删除虚拟IP-分布式块存储-LUN资源组;若属性设置成功,则将虚拟IP-分布式块存储-LUN资源组映射至主机层;若虚拟IP-分布式块存储-LUN资源组映射至主机层失败,则删除虚拟IP-分布式块存储-LUN映射和虚拟IP-分布式块存储-LUN资源组;若虚拟IP-分布式块存储-LUN资源组映射至主机层成功,则更新虚拟IP-分布式块存储-LUN数据库信息。
于本发明一实施例中,所述均衡模块中,根据公式Mi=Mn+k1*Δt*C/L-k2*Rn/C计算集群各节点的虚拟IP资源容余;其中Mn为上次时间片到达时由集群的仲裁节点传入节点的负载容余,k1*Δt*C/L为时间段Δt内节点完成的负载,k2*Rn/C为时间段Δt内为集群的仲裁节点添加新请求而增加的负载;k1、k2为自定义系数;Rn为Δt时间段内增加的请求个数;C为节点的性能;L为节点的当前负载;Δt为当前时间与上次时间片到达时的时间差。
于本发明一实施例中,所述均衡模块中,备选集合中权值最大的节点的虚拟IP资源容余修改为备选集合中权值最大的节点的原虚拟IP资源容余与Δt时间内该节点的负载变化值之差,Δt为当前时间与上次时间片到达时的时间差。
如上所述,本发明的基于iSCSI协议的分布式块存储数据访问方法及系统,具有以下有益效果:
(1)采用虚拟IP机制为分布式块存储提供高可用与高并发访问网关,减少了分布式块存储并发访问的权限冲突,提高了数据并发访问的安全性、可靠性;
(2)通过基于动态反馈的虚拟IP资源均衡算法,将虚拟IP资源合理分配到分布式集群各节点,使得分布式集群各节点均衡负载,从而保证分布式块存储系统的处理能力和服务质量。
附图说明
图1显示为本发明的基于iSCSI协议的分布式块存储数据访问方法的流程图;
图2显示为本发明的基于虚拟IP机制的多资源管理系统的结构示意图;
图3显示为本发明的基于iSCSI协议的分布式块存储数据访问系统的结构示意图。
元件标号说明
1 构建模块
2 均衡模块
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本发明的基于iSCSI协议的分布式块存储数据访问方法及系统采用虚拟IP(Virtual IP,VIP)机制实现分布式集群中各业务节点通过iSCSI链路、采用Active/Passive多路径策略访问分布式块存储。集群多节点访问分布式块存储时,由于分布式块存储的访问网关是唯一的,故能够提供分布式块存储的并发性访问。一旦集群节点出现故障,分布式块存储访问网关能够在各节点间有效的切换,以提供分布式块存储访问网关的高可用性。同时,采用基于动态反馈的虚拟IP资源均衡算法,将虚拟IP资源合理分配到集群各节点,使得集群各节点均衡负载,从而保证分布式块存储系统的处理能力和服务质量。
参照图1,本发明的基于iSCSI协议的分布式块存储数据访问方法包括以下内容:
(1)构建基于虚拟IP机制的多资源管理系统,该多资源管理系统包括主机层(intiator层)、iSCSI协议层和存储层(target层)。图2所示即为本发明的基于虚拟IP机制的多资源管理系统的结构示意图。
具体地,initiator层用于提供访问分布式块存储(target)的访问路径列表,每条访问路径包括虚拟IP、端口(port)和iSCSI唯一标识(iSCSI qualified name,iqn)。
通过每条访问路径,能够获取对应的虚拟设备。其中,该虚拟设备是存储端的分布式块存储在initiator端的映射表现。即:分布式块存储在存储端体现为/dev/a,在initator端体现为/dev/b。
iSCSI协议层用于提供主机层访问分布式块存储的路径。
存储层用于基于Ceph分布式文件系统,对存储驱动层通过块存储RBD接口提供块访问。其中,存储层基于RADOS协议提供一层块设备的抽象,支持对iSCSI的支持。
在该多资源管理系统中,集群中所有节点的同一target的LUN信息完全一致;所有initiator的访问路径列表完全一致;每个target都与唯一的虚拟IP一一对应。
具体地,LUN添加到集群所有节点的target中,每个节点允许多个target,但同一target有且只有一个LUN。任意initiator可访问任意target和LUN信息。
在构建模块中,通过分布式集群组件管理系统来实现虚拟IP机制。该分布式集群组件管理系统包括集群资源管理器、本地资源管理器和消息及成员管理模块。
其中,集群资源管理器用于对集群和资源的各种事件做出反应和决策。其中,资源事件包括虚拟IP的创建、删除、链路异常等情况。
本地资源管理器用于提供虚拟IP资源及块存储操作的bash脚本。本地资源管理中与虚拟IP资源及块存储相关的bash脚本运行的逻辑关系由集群资源管理器进行决策。也就是说,本地资源管理器是执行者;集群资源管理器是决策者,能够统筹本地资源脚本。
消息及成员管理模块用于集群资源管理器和本地资源管理器之间的消息传递以及分布式集群中成员关系管理。
具体地,在基于虚拟IP机制的多资源管理系统中,采用以下方式管理虚拟IP资源:
步骤S11、创建虚拟IP-分布式块存储-LUN(虚拟IP-target-LUN)资源组。
具体地,采用本地资源脚本创建虚拟IP-target-LUN资源组。
步骤S12、设置IP-target-LUN资源组属性。
具体地,IP-target-LUN资源组属性包括节点分布吸附性、资源的启动顺序等等。
步骤S13、若属性设置失败,则删除虚拟IP-target-LUN资源组;若属性设置成功,则将虚拟IP-target-LUN资源组映射至initiator;若虚拟IP-target-LUN资源组映射至initiator失败,则删除虚拟IP-target-LUN映射和虚拟IP-target-LUN资源组;若虚拟IP-target-LUN资源组映射至initiator成功,则更新虚拟IP-target-LUN数据库信息。
其中,虚拟IP-target-LUN数据库存放在存储端。故存储端可管理映射关系。
(2)基于动态反馈将虚拟IP资源分配到集群各节点,使得集群各节点均衡负载;其中分配虚拟IP资源时循环执行以下操作:
步骤S21、设置可分配最低虚拟IP资源容余Mmin
步骤S22、计算集群各节点的虚拟IP资源容余。
具体地,根据公式Mi=Mn+k1*Δt*C/L-k2*Rn/C计算集群各节点的虚拟IP资源容余;其中Mn为上次时间片到达时由集群的仲裁节点传入节点的负载容余,k1*Δt*C/L为时间段Δt内节点完成的负载,k2*Rn/C为时间段Δt内为集群的仲裁节点添加新请求而增加的负载。其中,k1、k2为自定义系数;Rn为Δt时间段内增加的请求个数;C为节点的性能;L为节点的当前负载;Δt为当前时间与上次时间片到达时的时间差。
仲裁节点相当于集群中的管理节点,对资源具有仲裁属性。
步骤S23、选取集群中的满足条件Mi>Mmin的所有节点,Mi为集群中节点的虚拟IP资源容余;若集群中不存在满足该条件的节点,则重新设置可分配最低虚拟IP资源容余,直至选取到满足该条件的节点。
步骤S24、将选取的节点加入到备选节点集合。
步骤S25、计算备选节点集合中各节点的权值。
具体地,根据公式W=C/L计算备选节点集合中各节点的权值,其中C为节点性能参数,L为节点当前负载。
步骤S26、选取备选节点集合中权值最大的节点。
步骤S27、计算备选节点集合中权值最大的节点的负载变化值。
具体地,-k1*Δt*C/L+k/C为Δt时间内权值最大的节点的负载变化值,k为自定义参数。因此,权值最大的节点的当前负载为Li-k1*Δt*C/L+k/C,其中Li为上次时间片到达时由集群的仲裁节点传入权值最大的节点的负载值。
步骤S28、根据备选节点集合中权值最大的节点的负载变化值,修改备选节点集合中权值最大的节点的虚拟IP资源容余。
具体地,根据公式M=Mi+k1*Δt*C/L-k/C修改备选节点集合中权值最大的节点的虚拟IP资源容余;其中Mi为权值最大的节点的虚拟IP资源容余,-k1*Δt*C/L+k/C为Δt时间内权值最大的节点的负载变化值,也就是Δt时间内权值最大的节点的虚拟IP资源容余的变化值。因此,权值最大的节点的虚拟IP资源容余修改为权值最大的节点的原虚拟IP资源容余与Δt时间内权值最大的节点的负载变化值之差。
参照图3,本发明的基于iSCSI协议的分布式块存储数据访问系统包括构建模块1和均衡模块2。
构建模块1用于构建基于虚拟IP机制的多资源管理系统,该多资源管理系统包括主机层(intiator层)、iSCSI协议层和存储层(target层)。
具体地,initiator层用于提供访问分布式块存储(target)的访问路径列表,每条访问路径包括虚拟IP、端口(port)和iSCSI唯一标识(iSCSI qualified name,iqn)。
通过每条访问路径,能够获取对应的虚拟设备。其中,该虚拟设备是存储端的分布式块存储在initiator端的映射表现。即:分布式块存储在存储端体现为/dev/a,在initator端体现为/dev/b。
iSCSI协议层用于提供主机层访问分布式块存储的路径。
存储层用于基于Ceph分布式文件系统,对存储驱动层通过块存储RBD接口提供块访问。其中,存储层基于RADOS协议提供一层块设备的抽象,支持对iSCSI的支持。
在该多资源管理系统中,集群中所有节点的同一target的LUN信息完全一致;所有initiator的访问路径列表完全一致;每个target都与唯一的虚拟IP一一对应。
具体地,LUN添加到集群所有节点的target中,每个节点允许多个target,但同一target有且只有一个LUN。任意initiator可访问任意target和LUN信息。
在本发明中,通过分布式集群组件管理系统来实现虚拟IP机制。该分布式集群组件管理系统包括集群资源管理器、本地资源管理器和消息及成员管理模块。
其中,集群资源管理器用于对集群和资源的各种事件做出反应和决策。其中,资源事件包括虚拟IP的创建、删除、链路异常等情况。
本地资源管理器用于提供虚拟IP资源及块存储操作的bash脚本。本地资源管理中与虚拟IP资源及块存储相关的bash脚本运行的逻辑关系由集群资源管理器进行决策。也就是说,本地资源管理器是执行者;集群资源管理器是决策者,能够统筹本地资源脚本。
消息及成员管理模块用于集群资源管理器和本地资源管理器之间的消息传递以及分布式集群中成员关系管理。
具体地,在基于虚拟IP机制的多资源管理系统中,采用以下方式管理虚拟IP资源:
步骤S11、创建虚拟IP-分布式块存储-LUN(虚拟IP-target-LUN)资源组。
具体地,采用本地资源脚本创建虚拟IP-target-LUN资源组。
步骤S12、设置IP-target-LUN资源组属性。
具体地,IP-target-LUN资源组属性包括节点分布吸附性、资源的启动顺序等等。
步骤S13、若属性设置失败,则删除虚拟IP-target-LUN资源组;若属性设置成功,则将虚拟IP-target-LUN资源组映射至initiator;若虚拟IP-target-LUN资源组映射至initiator失败,则删除虚拟IP-target-LUN映射和虚拟IP-target-LUN资源组;若虚拟IP-target-LUN资源组映射至initiator成功,则更新虚拟IP-target-LUN数据库信息。
其中,虚拟IP-target-LUN数据库存放在存储端。故存储端可管理映射关系。
均衡模块2与构建模块1相连,用于基于动态反馈将虚拟IP资源分配到集群各节点,使得集群各节点均衡负载;其中分配虚拟IP资源时循环执行以下操作:
步骤S21、设置可分配最低虚拟IP资源容余Mmin
步骤S22、计算集群各节点的虚拟IP资源容余。
具体地,根据公式Mi=Mn+k1*Δt*C/L-k2*Rn/C计算集群各节点的虚拟IP资源容余;其中Mn为上次时间片到达时由集群的仲裁节点传入节点的负载容余,k1*Δt*C/L为时间段Δt内节点完成的负载,k2*Rn/C为时间段Δt内为集群的仲裁节点添加新请求而增加的负载。其中,k1、k2为自定义系数;Rn为Δt时间段内增加的请求个数;C为节点的性能;L为节点的当前负载;Δt为当前时间与上次时间片到达时的时间差。
仲裁节点相当于集群中的管理节点,对资源具有仲裁属性。
步骤S23、选取集群中的满足条件Mi>Mmin的所有节点,Mi为集群中节点的虚拟IP资源容余;若集群中不存在满足该条件的节点,则重新设置可分配最低虚拟IP资源容余,直至选取到满足该条件的节点。
步骤S24、将选取的节点加入到备选节点集合。
步骤S25、计算备选节点集合中各节点的权值。
具体地,根据公式W=C/L计算备选节点集合中各节点的权值,其中C为节点性能参数,L为节点当前负载。
步骤S26、选取备选节点集合中权值最大的节点。
步骤S27、计算备选节点集合中权值最大的节点的负载变化值。
具体地,-k1*Δt*C/L+k/C为Δt时间内权值最大的节点的负载变化值,k为自定义参数。因此,权值最大的节点的当前负载为Li-k1*Δt*C/L+k/C,其中Li为上次时间片到达时由集群的仲裁节点传入权值最大的节点的负载值。
步骤S28、根据备选节点集合中权值最大的节点的负载变化值,修改备选节点集合中权值最大的节点的虚拟IP资源容余。
具体地,根据公式M=Mi+k1*Δt*C/L-k/C修改备选节点集合中权值最大的节点的虚拟IP资源容余;其中Mi为权值最大的节点的虚拟IP资源容余,-k1*Δt*C/L+k/C为Δt时间内权值最大的节点的负载变化值,也就是Δt时间内权值最大的节点的虚拟IP资源容余的变化值。因此,权值最大的节点的虚拟IP资源容余修改为权值最大的节点的原虚拟IP资源容余与Δt时间内权值最大的节点的负载变化值之差。
综上所述,本发明的基于iSCSI协议的分布式块存储数据访问方法及系统采用VIP机制为分布式块存储提供高可用与高并发访问网关,减少了分布式块存储并发访问的权限冲突,提高了数据并发访问的安全性、可靠性;通过基于动态反馈的VIP资源均衡算法,将VIP资源合理分配到集群各节点,使得集群各节点均衡负载,从而保证分布式块存储系统的处理能力和服务质量。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (8)

1.一种基于iSCSI协议的分布式块存储数据访问方法,其特征在于:包括
构建基于虚拟IP机制的多资源管理系统,所述多资源管理系统包括主机层、iSCSI协议层和存储层;所述主机层用于提供访问分布式块存储的访问路径列表;所述iSCSI协议层用于提供主机层访问分布式块存储的路径;所述存储层用于基于Ceph分布式文件系统,对存储驱动层通过块存储RBD接口提供块访问;在该多资源管理系统中,集群中所有节点的同一分布式块存储的LUN信息完全一致;所有主机的访问路径列表完全一致;每个分布式块存储都与唯一的虚拟IP一一对应;
基于动态反馈将虚拟IP资源分配到集群各节点,使得集群各节点均衡负载;其中分配虚拟IP资源时循环执行以下操作:
设置可分配最低虚拟IP资源容余Mmin
计算集群各节点的虚拟IP资源容余;
选取集群中的满足条件Mi>Mmin的所有节点,Mi为集群中节点的虚拟IP资源容余;若集群中不存在满足该条件的节点,则重新设置可分配最低虚拟IP资源容余,直至选取到满足该条件的节点;
将选取的节点加入到备选节点集合;
计算备选节点集合中各节点的权值;
选取备选节点集合中权值最大的节点;
计算备选节点集合中权值最大的节点的负载变化值;
根据备选节点集合中权值最大的节点的负载变化值,修改备选节点集合中权值最大的节点的虚拟IP资源容余;
备选集合中权值最大的节点的虚拟IP资源容余修改为备选集合中权值最大的节点的原虚拟IP资源容余与Δt时间内该节点的负载变化值之差,Δt为当前时间与上次时间片到达时的时间差。
2.根据权利要求1所述的基于iSCSI协议的分布式块存储数据访问方法,其特征在于:所述虚拟IP机制通过分布式集群组件管理系统来实现;所述分布式集群组件管理系统包括集群资源管理器、本地资源管理器和消息及成员管理模块;
所述集群资源管理器用于对集群和资源的各种事件做出反应和决策;资源事件包括虚拟IP的创建、删除、链路异常;
所述本地资源管理器用于提供虚拟IP资源及块存储操作的bash脚本;
所述消息及成员管理模块用于集群资源管理器和本地资源管理器之间的消息传递以及分布式集群中成员关系管理。
3.根据权利要求1所述的基于iSCSI协议的分布式块存储数据访问方法,其特征在于:所述基于虚拟IP机制的多资源管理系统采用以下方式管理虚拟IP资源:
创建虚拟IP-分布式块存储-LUN资源组;
设置虚拟IP-分布式块存储-LUN资源组属性;
若属性设置失败,则删除虚拟IP-分布式块存储-LUN资源组;若属性设置成功,则将虚拟IP-分布式块存储-LUN资源组映射至主机层;若虚拟IP-分布式块存储-LUN资源组映射至主机层失败,则删除虚拟IP-分布式块存储-LUN映射和虚拟IP-分布式块存储-LUN资源组;若虚拟IP-分布式块存储-LUN资源组映射至主机层成功,则更新虚拟IP-分布式块存储-LUN数据库信息。
4.根据权利要求1所述的基于iSCSI协议的分布式块存储数据访问方法,其特征在于:根据公式Mi=Mn+k1*Δt*C/L-k2*Rn/C计算集群各节点的虚拟IP资源容余;其中Mn为上次时间片到达时由集群的仲裁节点传入节点的负载容余,k1*Δt*C/L为时间段Δt内节点完成的负载,k2*Rn/C为时间段Δt内为集群的仲裁节点添加新请求而增加的负载;k1、k2为自定义系数;Rn为Δt时间段内增加的请求个数;C为节点的性能;L为节点的当前负载;Δt为当前时间与上次时间片到达时的时间差。
5.一种基于iSCSI协议的分布式块存储数据访问系统,其特征在于:包括构建模块和均衡模块;
所述构建模块用于构建基于虚拟IP机制的多资源管理系统,所述多资源管理系统包括主机层、iSCSI协议层和存储层;所述主机层用于提供访问分布式块存储的访问路径列表;所述iSCSI协议层用于提供主机层访问分布式块存储的路径;所述存储层用于基于Ceph分布式文件系统,对存储驱动层通过块存储接口RBD提供块访问;在该多资源管理系统中,集群中所有节点的同一分布式块存储的LUN信息完全一致;所有主机的访问路径列表完全一致;每个分布式块存储都与唯一的虚拟IP一一对应;
所述均衡模块用于基于动态反馈将虚拟IP资源分配到集群各节点,使得集群各节点均衡负载;其中分配虚拟IP资源时循环执行以下操作:
设置可分配最低虚拟IP资源容余Mmin
计算集群各节点的虚拟IP资源容余;
选取集群中的满足条件Mi>Mmin的所有节点,Mi为集群中节点的虚拟IP资源容余;若集群中不存在满足该条件的节点,则重新设置可分配最低虚拟IP资源容余,直至选取到满足该条件的节点;
将选取的节点加入到备选节点集合;
计算备选节点集合中各节点的权值;
选取备选节点集合中权值最大的节点;
计算备选节点集合中权值最大的节点的负载变化值;
根据备选节点集合中权值最大的节点的负载变化值,修改备选节点集合中权值最大的节点的虚拟IP资源容余;
所述均衡模块中,备选集合中权值最大的节点的虚拟IP资源容余修改为备选集合中权值最大的节点的原虚拟IP资源容余与Δt时间内该节点的负载变化值之差,Δt为当前时间与上次时间片到达时的时间差。
6.根据权利要求5所述的基于iSCSI协议的分布式块存储数据访问系统,其特征在于:所述构建模块中,所述虚拟IP机制通过分布式集群组件管理系统来实现;所述分布式集群组件管理系统包括集群资源管理器、本地资源管理器和消息及成员管理模块;
所述集群资源管理器用于对集群和资源的各种事件做出反应和决策;资源事件包括虚拟IP的创建、删除、链路异常;
所述本地资源管理器用于提供虚拟IP资源及块存储操作的bash脚本;
所述消息及成员管理模块用于集群资源管理器和本地资源管理器之间的消息传递以及分布式集群中成员关系管理。
7.根据权利要求5所述的基于iSCSI协议的分布式块存储数据访问系统,其特征在于:所述基于虚拟IP机制的多资源管理系统采用以下方式管理虚拟IP资源:
创建虚拟IP-分布式块存储-LUN资源组;
设置虚拟IP-分布式块存储-LUN资源组属性;
若属性设置失败,则删除虚拟IP-分布式块存储-LUN资源组;若属性设置成功,则将虚拟IP-分布式块存储-LUN资源组映射至主机层;若虚拟IP-分布式块存储-LUN资源组映射至主机层失败,则删除虚拟IP-分布式块存储-LUN映射和虚拟IP-分布式块存储-LUN资源组;若虚拟IP-分布式块存储-LUN资源组映射至主机层成功,则更新虚拟IP-分布式块存储-LUN数据库信息。
8.根据权利要求5所述的基于iSCSI协议的分布式块存储数据访问系统,其特征在于:所述均衡模块中,根据公式Mi=Mn+k1*Δt*C/L-k2*Rn/C计算集群各节点的虚拟IP资源容余;其中Mn为上次时间片到达时由集群的仲裁节点传入节点的负载容余,k1*Δt*C/L为时间段Δt内节点完成的负载,k2*Rn/C为时间段Δt内为集群的仲裁节点添加新请求而增加的负载;k1、k2为自定义系数;Rn为Δt时间段内增加的请求个数;C为节点的性能;L为节点的当前负载;Δt为当前时间与上次时间片到达时的时间差。
CN201610946021.1A 2016-10-26 2016-10-26 基于iSCSI协议的分布式块存储数据访问方法及系统 Active CN106453360B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610946021.1A CN106453360B (zh) 2016-10-26 2016-10-26 基于iSCSI协议的分布式块存储数据访问方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610946021.1A CN106453360B (zh) 2016-10-26 2016-10-26 基于iSCSI协议的分布式块存储数据访问方法及系统

Publications (2)

Publication Number Publication Date
CN106453360A CN106453360A (zh) 2017-02-22
CN106453360B true CN106453360B (zh) 2019-04-16

Family

ID=58178629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610946021.1A Active CN106453360B (zh) 2016-10-26 2016-10-26 基于iSCSI协议的分布式块存储数据访问方法及系统

Country Status (1)

Country Link
CN (1) CN106453360B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107741909A (zh) * 2017-10-13 2018-02-27 郑州云海信息技术有限公司 一种用于分布式块存储的自动化测试方法及系统
CN108399099A (zh) * 2018-03-07 2018-08-14 成都创信特电子技术有限公司 文件安全存储和内容保护方法
CN108388658A (zh) * 2018-03-07 2018-08-10 成都创信特电子技术有限公司 数据文件可靠存储方法
CN108881512B (zh) * 2018-06-15 2021-06-29 郑州云海信息技术有限公司 Ctdb的虚拟ip均衡分配方法、装置、设备及介质
CN109327332B (zh) * 2018-09-28 2020-12-01 南京易捷思达软件科技有限公司 一种Ceph云存储下基于LIO的iSCSI GateWay高可用实现方法
CN110971631B (zh) * 2018-09-29 2022-07-05 北京金山云网络技术有限公司 访问ceph集群的方法、装置、服务器及介质
CN109451057B (zh) * 2018-12-20 2021-04-20 深圳市瑞驰信息技术有限公司 一种基于安卓云分布式操作系统
CN111431980B (zh) * 2020-03-17 2021-12-17 星辰天合(北京)数据科技有限公司 分布式存储系统及其路径切换方法
CN112261079B (zh) * 2020-09-11 2022-05-10 苏州浪潮智能科技有限公司 一种基于iSCSI的分布式块存储服务链接管理的方法及系统
CN112491592B (zh) * 2020-11-11 2022-07-08 苏州浪潮智能科技有限公司 一种存储资源分组方法、系统、终端及存储介质
CN114116216A (zh) * 2021-11-24 2022-03-01 北京大道云行科技有限公司 一种基于vip实现分布式块存储高可用方法和装置
CN115378962B (zh) * 2022-08-18 2023-04-21 北京志凌海纳科技有限公司 一种基于iSCSI协议的存储集群的高可用性连通方法和系统
CN117648710B (zh) * 2024-01-30 2024-04-05 北京点聚信息技术有限公司 一种ofd版式文档权限控制方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529816B2 (en) * 2005-06-03 2009-05-05 Hewlett-Packard Development Company, L.P. System for providing multi-path input/output in a clustered data storage network
CN101938516B (zh) * 2010-09-02 2012-11-14 华中科技大学 一种面向用户的动态分配存储资源的方法
CN103533006B (zh) * 2012-07-06 2019-09-24 中兴通讯股份有限公司 一种联合云盘客户端、服务器、系统和联合云盘服务方法
US9692707B2 (en) * 2012-09-07 2017-06-27 Transoft (Shanghai), Inc. Virtual resource object component
CN104020961B (zh) * 2014-05-15 2017-07-25 深信服科技股份有限公司 分布式数据存储方法、装置及系统

Also Published As

Publication number Publication date
CN106453360A (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
CN106453360B (zh) 基于iSCSI协议的分布式块存储数据访问方法及系统
US11340672B2 (en) Persistent reservations for virtual disk using multiple targets
US11210035B2 (en) Creating, by host computers, respective object of virtual disk based on virtual disk blueprint
US10855602B2 (en) Distributed policy-based provisioning and enforcement for quality of service
US11218364B2 (en) Network-accessible computing service for micro virtual machines
JP6607901B2 (ja) スケーラブル分散ストレージアーキテクチャ
CN109565515B (zh) 分布式资源管理系统中的动态租户结构调整的系统、设备和过程
CN105549904B (zh) 一种应用于存储系统中的数据迁移方法及存储设备
CN103797770B (zh) 一种共享存储资源的方法和系统
US20230033296A1 (en) Managing composition service entities with complex networks
JP6073246B2 (ja) 大規模記憶システム
WO2015176636A1 (zh) 分布式数据库服务管理系统
JP2015506523A (ja) スケーラブルな環境における動的負荷均衡化
US11379405B2 (en) Internet small computer interface systems extension for remote direct memory access (RDMA) for distributed hyper-converged storage systems
US9747176B2 (en) Data storage with virtual appliances
WO2014183531A1 (zh) 一种分配远程内存的方法及装置
CN106412030B (zh) 一种选择存储资源方法、装置及系统
CN110661865A (zh) 一种网络通信方法及网络通信架构
Carver et al. λFS: A Scalable and Elastic Distributed File System Metadata Service using Serverless Functions
US20220237051A1 (en) Method and system for providing composable infrastructure capabilities
Carver et al. 𝜆FS: A Scalable and Elastic Distributed File System Metadata Service using Serverless Functions
US11704159B2 (en) System and method for unified infrastructure architecture
US20230081147A1 (en) System and method for a system control processor-controlled partitioning of bare-metal system resources
CN114816725A (zh) 使用操作数据来管理组合系统的系统和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant