CN114265702A - 一种iSCSI服务负载均衡方法、装置、设备及介质 - Google Patents

一种iSCSI服务负载均衡方法、装置、设备及介质 Download PDF

Info

Publication number
CN114265702A
CN114265702A CN202210194947.5A CN202210194947A CN114265702A CN 114265702 A CN114265702 A CN 114265702A CN 202210194947 A CN202210194947 A CN 202210194947A CN 114265702 A CN114265702 A CN 114265702A
Authority
CN
China
Prior art keywords
available
information
storage nodes
available storage
storage node
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.)
Granted
Application number
CN202210194947.5A
Other languages
English (en)
Other versions
CN114265702B (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202210194947.5A priority Critical patent/CN114265702B/zh
Publication of CN114265702A publication Critical patent/CN114265702A/zh
Application granted granted Critical
Publication of CN114265702B publication Critical patent/CN114265702B/zh
Priority to PCT/CN2023/078917 priority patent/WO2023165499A1/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提出了一种iSCSI服务负载均衡方法,包括:将卷均匀分布至不同目标对象中;获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷;将确定的待访问的存储节点返回给客户端供用户使用,本发明还提出了一种iSCSI服务负载均衡装置、设备及介质,有效地提高了iSCSI服务负载均衡的可靠性,降低存储节点选择的成本,提高了选择效率。

Description

一种iSCSI服务负载均衡方法、装置、设备及介质
技术领域
本发明涉及iSCSI服务领域,尤其是涉及一种iSCSI服务负载均衡方法、装置、设备及介质。
背景技术
在iSCSI存储服务中,卷一般分布在不同存储节点中的目标对象中,但是在存储服务中一般是随机选择存储节点或随机选择卷,使得服务负载不够均衡。
为了使得服务负载均衡,现有技术中,用户可以在非常熟悉存储环境的情况下,手动选择不同存储节点,但是用户并不清楚选择哪些存储节点,可以使得存储集群iSCSI(互联网小型计算机系统接口)服务提供的卷可以均衡的分布在不同的rack(机柜)、存储节点和target(目标对象)上,而且,手动选择的方式效率低下、时间成本高,可靠性也不高。
发明内容
本发明为了解决现有技术中存在的问题,创新提出了一种iSCSI服务负载均衡方法、装置、设备及介质,有效解决由于手动选择存储节点造成效率低、成本高,且可靠性差的问题,有效地提高了iSCSI服务负载均衡的可靠性,降低存储节点选择的成本,提高了选择效率。
本发明第一方面提供了一种iSCSI服务负载均衡方法,包括:
将卷均匀分布至不同目标对象中;
获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷;
将确定的待访问的存储节点返回给客户端供用户使用。
可选地,将卷均匀分布至不同目标对象中具体包括:
在每个可用存储节点对应的iSCSI服务上创建多个目标对象以及多个线程,每个线程独立对应目标对象上的可用卷;
通过卷标识对目标对象标识进行取余,使得卷均匀分布在不同的目标对象上。
进一步地,目标对象的数量与线程的数量对应相同,且线程与目标对象一一对应绑定。
可选地,获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点具体包括:
获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息;
根据可用存储节点中可用卷信息,对可用存储节点进行排列;
根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点中的一个可用卷,直至用户当前存储任务完成。
进一步地,根据可用存储节点中可用卷信息,对可用存储节点进行排列具体是:
根据可用存储节点中可用卷数量信息,对可用存储节点进行升序排列。
可选地,根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数具体是:
将用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息进行除法运算,如果存在余数,需要访问可用卷列表的轮数为用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息的商+1;如果不存在余数,需要访问可用卷列表的轮数为用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息的商。
可选地,将确定的待访问的存储节点返回给客户端供用户使用具体是:将确定的待访问的存储节点按照可用存储节点中可用卷信息进行排列,并生成存储节点链表,将生成的存储节点链表统一返回给客户端供用户使用。
本发明第二方面提供了一种iSCSI服务负载均衡装置,包括:
分布模块,将卷均匀分布至不同目标对象中;
确定模块,获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷;
返回模块,将确定的待访问的存储节点返回给客户端供用户使用。
本发明第三方面提供了一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如本发明第一方面所述的一种iSCSI服务负载均衡方法的步骤。
本发明第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如本发明第一方面所述的一种iSCSI服务负载均衡方法的步骤。
本发明采用的技术方案包括以下技术效果:
1、本发明将卷均匀分布至不同目标对象中,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点;使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷,有效解决由于手动选择存储节点造成效率低、成本高,且可靠性差的问题,有效地提高了iSCSI服务负载均衡的可靠性,降低存储节点选择的成本,提高了选择效率。
2、本发明技术方案中每个可用存储节点中创建的目标对象的数量与线程的数量对应相同,且线程与目标对象一一对应绑定,不仅使得卷会均衡的分布在不同存储节点与目标对象上,而且充分利用并发访问卷的存储IO性能。
3、本发明技术方案中根据可用存储节点中可用卷信息,对可用存储节点进行排列;根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点中的一个可用卷,直至用户当前存储任务完成,使得在用户大规模访问存储集群时,存储IO可以相对均匀的分布到不同的rack、存储节点和target上。
4、本发明技术方案中将确定的待访问的存储节点按照可用存储节点中可用卷信息进行排列,并生成存储节点链表,将生成的存储节点链表统一返回给客户端供用户使用,便于用户一次性接收所有的当前存储任务对应的可用存储节点,提高了返回效率以及用户体验。
应当理解的是以上的一般描述以及后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
为了更清楚说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见的,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明方案中实施例一方法的流程示意图;
图2为本发明方案中实施例一方法中步骤S1的流程示意图;
图3为本发明方案中实施例一方法中机柜(rack)、存储节点、目标对象(target)、卷(lun)的结构示意图;
图4为本发明方案中实施例一方法中步骤S2的流程示意图;
图5为本发明方案中实施例二装置的结构示意图;
图6为本发明方案中实施例三设备的结构示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例一
如图1所示,本发明提供了一种iSCSI服务负载均衡方法,包括:
S1,将卷均匀分布至不同目标对象中;
S2,获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷;
S3,将确定的待访问的存储节点返回给客户端供用户使用。
其中,如图2-图3所示,步骤S1具体包括:
S11,在每个可用存储节点对应的iSCSI服务上创建多个目标对象以及多个线程,每个线程独立对应目标对象上的可用卷;
S12,通过卷标识对目标对象标识进行取余,使得卷均匀分布在不同的目标对象上。
其中,在步骤S11中,目标对象的数量与线程的数量对应相同,且线程与目标对象一一对应绑定。首先在TGT服务(一种iSCSI服务,即图3中的tgtd)上创建8个target(目标对象)。TGT服务中默认8个线程,每个线程可以独立的访问对应target上的卷(线程1仅可以访问target1中的lun,依次类推),并发访问卷存储IO性能。
在步骤S12中,卷均匀分布到不同target上。每个target都有一个tid来标识target,每个卷也都有一个lun_id来标识不同的卷,通过lun_id % tid,即通过卷标识对目标对象标识进行取余,可以使得卷分布在不同的target上,其中tid和lun_id都可以重复利用。
如图4所示,步骤S2具体包括:
S21,获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息;
S22,根据可用存储节点中可用卷信息,对可用存储节点进行排列;
S23,根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点中的一个可用卷,直至用户当前存储任务完成,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷。
其中,在步骤S21中,从MON服务进程(监控服务进程)获取可用存储节点(即处于工作状态的存储节点)所在机柜信息rackid以及可用存储节点中可用卷的数量信息。
在步骤S22中,根据可用存储节点中可用卷信息,对可用存储节点进行排列具体是:根据可用存储节点中可用卷数量信息,对可用存储节点进行升序排列,可用存储节点中可用卷数量越少,可用存储节点的排列顺序越靠前。举例说明,例如存储节点1中可用lun数量为12个,存储节点2中可用lun数量为11个,存储节点3中可用lun数量为14个,存储节点4中可用lun数量为13个,存储节点1、存储节点2、存储节点3、存储节点4均为可用存储节点,根据可用存储节点中可用卷数量信息,对可用存储节点进行升序排列为:存储节点2、存储节点1、存储节点4、存储节点3。便于步骤S23中,根据同一机柜中的多个可用存储节点的排列顺序,确定当前存储任务中当前轮次当前轮询机柜中进行多个可用存储节点的优先选择。
在步骤S23中,根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数具体是:
将用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息进行除法运算,如果存在余数,需要访问可用卷列表的轮数为用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息的商+1;如果不存在余数,需要访问可用卷列表的轮数为用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息的商。举例说明,如果用户当前存储任务需要的可用存储节点数目为12,可用存储节点对应的机柜数量信息为2个,则需要访问可用卷列表的轮数为12/2=6次,即轮询可用卷列表6次,即可完成用户当前存储任务;如果用户当前存储任务需要的可用存储节点数目为12,可用存储节点对应的机柜数量信息为5个,则需要访问可用卷列表的轮数为12/5=2⋯⋯2,即轮询可用卷列表2+1=3次,即可完成用户当前存储任务。
确定好当前存储任务需要访问可用卷列表的轮数后,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点(包括可用卷数量少的可用存储节点优先被访问)中的一个可用卷,直至用户当前存储任务完成,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷。
进一步地,为了使得当前存储任务均匀分配至多个机柜中的不同可用存储节点中的不同目标对象的可用卷,同一个可用存储节点中可用卷的选择顺序也可以按照目标对象包含可用卷数量的排序进行选择,还可以按照其他顺序进行选择,本发明在此不做限制。按照目标对象的排序进行选择即首先根据每个可用存储节点中的可用目标对象中可用卷数量信息,对可用目标对象进行升序排列,可用目标对象中可用卷数量越少,可用目标对象的排列顺序越靠前。举例说明,例如target1中可用lun数量为2个,target2中可用lun数量为1个,target3中可用lun数量为4个,target4中可用lun数量为3个,根据可用存储节点中可用卷数量信息,对可用存储节点进行升序排列为:target2、target1、target4、target3。每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点(包括可用卷数量少的可用存储节点优先被访问)中一个排列顺序在前的可用目标对象(包括可用卷数量少的可用目标对象优先被访问)中的一个可用卷,直至用户当前存储任务完成,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点中不同目标对象中的可用卷。
优选地,每个机柜可以建立一个轮询链表,轮询链表将获取的rackid,为下标生成一个hash表,记录该机柜的已轮询次数。进一步地,每个机柜的已轮询次数相同,且与当前存储任务需要访问可用卷列表的轮数相同。特殊情况下,至少一个机柜的已轮询次数与当前存储任务需要访问可用卷列表的轮数相同,且与当前存储任务需要访问可用卷列表的轮数相同的机柜的已轮询次数为可用存储节点对应的所有机柜中已轮询次数中最小值,以保证当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷。
在步骤S3中,将确定的待访问的存储节点返回给客户端供用户使用具体是:将确定的待访问的存储节点按照可用存储节点中可用卷信息进行排列,并生成存储节点链表,将生成的存储节点链表统一返回给客户端initiator供用户使用。
生成存储节点链表可以是单向链表,即确定的待访问的可用存储节点之间为单向访问,也可以是双向链表,即确定的待访问的可用存储节点之间为双向访问。
本发明将卷均匀分布至不同目标对象中,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点;使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷,有效解决由于手动选择存储节点造成效率低、成本高,且可靠性差的问题,有效地提高了iSCSI服务负载均衡的可靠性,降低存储节点选择的成本,提高了选择效率。
本发明技术方案中每个可用存储节点中创建的目标对象的数量与线程的数量对应相同,且线程与目标对象一一对应绑定,不仅使得卷会均衡的分布在不同存储节点与目标对象上,而且充分利用并发访问卷的存储IO性能。
本发明技术方案中根据可用存储节点中可用卷信息,对可用存储节点进行排列;根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点中的一个可用卷,直至用户当前存储任务完成,使得在用户大规模访问存储集群时,存储IO可以相对均匀的分布到不同的rack、存储节点和target上。
本发明技术方案中将确定的待访问的存储节点按照可用存储节点中可用卷信息进行排列,并生成存储节点链表,将生成的存储节点链表统一返回给客户端供用户使用,便于用户一次性接收所有的当前存储任务对应的可用存储节点,提高了返回效率以及用户体验。
实施例二
如图5所示,本发明技术方案还提供了一种iSCSI服务负载均衡装置,包括:
分布模块101,将卷均匀分布至不同目标对象中;
确定模块102,获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷;
返回模块103,将确定的待访问的存储节点返回给客户端供用户使用,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷。
本发明将卷均匀分布至不同目标对象中,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点;使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷,有效解决由于手动选择存储节点造成效率低、成本高,且可靠性差的问题,有效地提高了iSCSI服务负载均衡的可靠性,降低存储节点选择的成本,提高了选择效率。
本发明技术方案中每个可用存储节点中创建的目标对象的数量与线程的数量对应相同,且线程与目标对象一一对应绑定,不仅使得卷会均衡的分布在不同存储节点与目标对象上,而且充分利用并发访问卷的存储IO性能。
本发明技术方案中根据可用存储节点中可用卷信息,对可用存储节点进行排列;根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点中的一个可用卷,直至用户当前存储任务完成,使得在用户大规模访问存储集群时,存储IO可以相对均匀的分布到不同的rack、存储节点和target上。
本发明技术方案中将确定的待访问的存储节点按照可用存储节点中可用卷信息进行排列,并生成存储节点链表,将生成的存储节点链表统一返回给客户端供用户使用,便于用户一次性接收所有的当前存储任务对应的可用存储节点,提高了返回效率以及用户体验。
实施例三
如图6所示,本发明技术方案还提供了一种电子设备,包括:存储器201,用于存储计算机程序;处理器202,用于执行所述计算机程序时实现如实施例一中的一种iSCSI服务负载均衡方法的步骤。
本申请实施例中的存储器201用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。可以理解,存储器201可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,ErasableProgrammable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,ElectricallyErasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagneticrandom access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous StaticRandom Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous DynamicRandom Access Memory)、增强型同步动态随机存取存储器(ESDRAM,EnhancedSynchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本申请实施例描述的存储器201旨在包括但不限于这些和任意其它适合类型的存储器。
上述本申请实施例揭示的方法可以应用于处理器202中,或者由处理器202实现。处理器202可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器202中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器202可以是通用处理器、DSP(Digital Signal Processing,即指能够实现数字信号处理技术的芯片),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器202可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器201,处理器202读取存储器201中的程序,结合其硬件完成前述方法的步骤。处理器202执行所述程序时实现本申请实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
本发明将卷均匀分布至不同目标对象中,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点;使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷,有效解决由于手动选择存储节点造成效率低、成本高,且可靠性差的问题,有效地提高了iSCSI服务负载均衡的可靠性,降低存储节点选择的成本,提高了选择效率。
本发明技术方案中每个可用存储节点中创建的目标对象的数量与线程的数量对应相同,且线程与目标对象一一对应绑定,不仅使得卷会均衡的分布在不同存储节点与目标对象上,而且充分利用并发访问卷的存储IO性能。
本发明技术方案中根据可用存储节点中可用卷信息,对可用存储节点进行排列;根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点中的一个可用卷,直至用户当前存储任务完成,使得在用户大规模访问存储集群时,存储IO可以相对均匀的分布到不同的rack、存储节点和target上。
本发明技术方案中将确定的待访问的存储节点按照可用存储节点中可用卷信息进行排列,并生成存储节点链表,将生成的存储节点链表统一返回给客户端供用户使用,便于用户一次性接收所有的当前存储任务对应的可用存储节点,提高了返回效率以及用户体验。
实施例四
本发明技术方案还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如实施例一中的一种iSCSI服务负载均衡方法的步骤。
例如包括存储计算机程序的存储器201,上述计算机程序可由处理器202执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、FlashMemory、磁表面存储器、光盘、或CD-ROM等存储器。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本发明将卷均匀分布至不同目标对象中,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点;使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷,有效解决由于手动选择存储节点造成效率低、成本高,且可靠性差的问题,有效地提高了iSCSI服务负载均衡的可靠性,降低存储节点选择的成本,提高了选择效率。
本发明技术方案中每个可用存储节点中创建的目标对象的数量与线程的数量对应相同,且线程与目标对象一一对应绑定,不仅使得卷会均衡的分布在不同存储节点与目标对象上,而且充分利用并发访问卷的存储IO性能。
本发明技术方案中根据可用存储节点中可用卷信息,对可用存储节点进行排列;根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点中的一个可用卷,直至用户当前存储任务完成,使得在用户大规模访问存储集群时,存储IO可以相对均匀的分布到不同的rack、存储节点和target上。
本发明技术方案中将确定的待访问的存储节点按照可用存储节点中可用卷信息进行排列,并生成存储节点链表,将生成的存储节点链表统一返回给客户端供用户使用,便于用户一次性接收所有的当前存储任务对应的可用存储节点,提高了返回效率以及用户体验。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (10)

1.一种iSCSI服务负载均衡方法,其特征是,包括:
将卷均匀分布至不同目标对象中;
获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷;
将确定的待访问的存储节点返回给客户端供用户使用。
2.根据权利要求1所述的iSCSI服务负载均衡方法,其特征是,将卷均匀分布至不同目标对象中具体包括:
在每个可用存储节点对应的iSCSI服务上创建多个目标对象以及多个线程,每个线程独立对应目标对象上的可用卷;
通过卷标识对目标对象标识进行取余,使得卷均匀分布在不同的目标对象上。
3.根据权利要求2所述的iSCSI服务负载均衡方法,其特征是,目标对象的数量与线程的数量对应相同,且线程与目标对象一一对应绑定。
4.根据权利要求1所述的iSCSI服务负载均衡方法,其特征是,获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点具体包括:
获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息;
根据可用存储节点中可用卷信息,对可用存储节点进行排列;
根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数,依次轮询所有可用存储节点对应的机柜,每轮在当前轮询的一个机柜中选择一个当前轮询的机柜中排列顺序在前的可用存储节点中的一个可用卷,直至用户当前存储任务完成。
5.根据权利要求4所述的iSCSI服务负载均衡方法,其特征是,根据可用存储节点中可用卷信息,对可用存储节点进行排列具体是:
根据可用存储节点中可用卷数量信息,对可用存储节点进行升序排列。
6.根据权利要求4所述的iSCSI服务负载均衡方法,其特征是,根据用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜信息确定出需要访问可用卷列表的轮数具体是:
将用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息进行除法运算,如果存在余数,需要访问可用卷列表的轮数为用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息的商+1;如果不存在余数,需要访问可用卷列表的轮数为用户当前存储任务需要的可用存储节点数目与可用存储节点对应的机柜数量信息的商。
7.根据权利要求1-6任意一项所述的iSCSI服务负载均衡方法,其特征是,将确定的待访问的存储节点返回给客户端供用户使用具体是:将确定的待访问的存储节点按照可用存储节点中可用卷信息进行排列,并生成存储节点链表,将生成的存储节点链表统一返回给客户端供用户使用。
8.一种iSCSI服务负载均衡装置,其特征是,包括:
分布模块,将卷均匀分布至不同目标对象中;
确定模块,获取可用存储节点所在机柜信息以及可用存储节点中可用卷信息,根据获取的可用存储节点所在机柜信息以及可用存储节点中可用卷信息确定当前存储任务对应的待访问的存储节点,使得当前存储任务均匀分配至多个机柜中的不同可用存储节点的可用卷;
返回模块,将确定的待访问的存储节点返回给客户端供用户使用。
9.一种电子设备,其特征是,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的一种iSCSI服务负载均衡方法的步骤。
10.一种计算机可读存储介质,其特征是,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的一种iSCSI服务负载均衡方法的步骤。
CN202210194947.5A 2022-03-02 2022-03-02 一种iSCSI服务负载均衡方法、装置、设备及介质 Active CN114265702B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210194947.5A CN114265702B (zh) 2022-03-02 2022-03-02 一种iSCSI服务负载均衡方法、装置、设备及介质
PCT/CN2023/078917 WO2023165499A1 (zh) 2022-03-02 2023-03-01 一种iSCSI服务负载均衡方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210194947.5A CN114265702B (zh) 2022-03-02 2022-03-02 一种iSCSI服务负载均衡方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN114265702A true CN114265702A (zh) 2022-04-01
CN114265702B CN114265702B (zh) 2022-05-31

Family

ID=80833815

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210194947.5A Active CN114265702B (zh) 2022-03-02 2022-03-02 一种iSCSI服务负载均衡方法、装置、设备及介质

Country Status (2)

Country Link
CN (1) CN114265702B (zh)
WO (1) WO2023165499A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023165499A1 (zh) * 2022-03-02 2023-09-07 苏州浪潮智能科技有限公司 一种iSCSI服务负载均衡方法、装置、设备及介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117640642B (zh) * 2024-01-26 2024-04-09 深圳联友科技有限公司 一种api网关负载均衡方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484133A (zh) * 2014-12-18 2015-04-01 浪潮(北京)电子信息产业有限公司 一种存储管理方法及系统
KR20150061316A (ko) * 2013-11-27 2015-06-04 주식회사 유투앤 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서의 부하 분산 방법 및 시스템
CN108282516A (zh) * 2017-12-21 2018-07-13 创新科存储技术(深圳)有限公司 一种基于iSCSI的分布式存储集群负载均衡方法和装置
CN110784515A (zh) * 2019-09-19 2020-02-11 平安科技(深圳)有限公司 基于分布式集群的数据存储方法、及其相关设备
CN113806086A (zh) * 2021-09-10 2021-12-17 济南浪潮数据技术有限公司 一种Openstack使用iSCSI多路径均衡对接存储方法、装置及介质
CN113849136A (zh) * 2021-10-13 2021-12-28 上海威固信息技术股份有限公司 一种基于国产平台的自动化fc块存储处理方法和系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9098525B1 (en) * 2012-06-14 2015-08-04 Emc Corporation Concurrent access to data on shared storage through multiple access points
CN113687795A (zh) * 2021-10-25 2021-11-23 浩鲸云计算科技股份有限公司 一种实现有状态应用的存储卷隔离性分配的方法和系统
CN114265702B (zh) * 2022-03-02 2022-05-31 苏州浪潮智能科技有限公司 一种iSCSI服务负载均衡方法、装置、设备及介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150061316A (ko) * 2013-11-27 2015-06-04 주식회사 유투앤 네트워크 분산 파일 시스템 기반 iSCSI 스토리지 시스템에서의 부하 분산 방법 및 시스템
CN104484133A (zh) * 2014-12-18 2015-04-01 浪潮(北京)电子信息产业有限公司 一种存储管理方法及系统
CN108282516A (zh) * 2017-12-21 2018-07-13 创新科存储技术(深圳)有限公司 一种基于iSCSI的分布式存储集群负载均衡方法和装置
CN110784515A (zh) * 2019-09-19 2020-02-11 平安科技(深圳)有限公司 基于分布式集群的数据存储方法、及其相关设备
CN113806086A (zh) * 2021-09-10 2021-12-17 济南浪潮数据技术有限公司 一种Openstack使用iSCSI多路径均衡对接存储方法、装置及介质
CN113849136A (zh) * 2021-10-13 2021-12-28 上海威固信息技术股份有限公司 一种基于国产平台的自动化fc块存储处理方法和系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023165499A1 (zh) * 2022-03-02 2023-09-07 苏州浪潮智能科技有限公司 一种iSCSI服务负载均衡方法、装置、设备及介质

Also Published As

Publication number Publication date
CN114265702B (zh) 2022-05-31
WO2023165499A1 (zh) 2023-09-07

Similar Documents

Publication Publication Date Title
CN114265702B (zh) 一种iSCSI服务负载均衡方法、装置、设备及介质
CN106407207B (zh) 一种实时新增数据更新方法和装置
CN110333951B (zh) 一种商品抢购请求分配方法
US20120191724A1 (en) Storage of data objects based on a time of creation
US7478083B2 (en) Method and system for estimating cardinality in a database system
CN103970870A (zh) 数据库查询方法和服务器
CN107256233B (zh) 一种数据存储方法和装置
US10116329B1 (en) Method and system for compression based tiering
CN111782640B (zh) 一种云平台的数据处理方法、系统、电子设备及存储介质
CN113126887B (zh) 用于重建盘阵列的方法、电子设备和计算机程序产品
US20190286629A1 (en) Method for processing transactions using blockchain network, and transaction management server using the same
CN115757066A (zh) 硬盘性能测试方法、装置、设备、存储介质和程序产品
CN109634524B (zh) 一种数据处理守护进程的数据分区配置方法、装置及设备
CN108572914B (zh) 一种生成用于压力测试的日志的方法及装置
US11487731B2 (en) Read iterator for pre-fetching nodes of a B-tree into memory
CN110990207B (zh) 基于Whitley平台的BPS内存测试方法、系统、终端及存储介质
CN112035524A (zh) 列表数据查询方法、装置、计算机设备及可读存储介质
CN110688395A (zh) 一种信息查询方法、装置、信息统计方法及相关设备
WO2016088237A1 (ja) 配信方法、装置、及びプログラム
CN115269347A (zh) 一种存储性能测试方法、装置、介质和电子设备
CN112464049B (zh) 号码详单下载方法、装置和设备
CN111104435B (zh) 一种元数据组织方法、装置、设备及计算机可读存储介质
CN111367750B (zh) 一种异常处理方法、装置及其设备
US20150134919A1 (en) Information processing apparatus and data access method
CN111506790B (zh) 抽取对象确定及数据刷新方法、系统、设备和存储介质

Legal Events

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