一种多控制器存储阵列读写负载均衡方法及装置制造方法及图纸

技术编号:15690500 阅读:137 留言:0更新日期:2017-06-24 02:56
本发明专利技术公开了一种多控制器存储阵列读写负载均衡方法及装置,应用于具有多个控制器的存储阵列,通过采集存储阵列中各个控制器的基本读写信息,选取决策指数最优的控制器为逻辑单元LUN的主控制器,并将目标端口按照所属控制器进行分组,为逻辑单元LUN主控制器对应的目标端口组设置更高的优先级;然后获取主机访问逻辑单元LUN的路径的状态,建立增强学习算法模型,并根据增强学习算法模型计算得到主机在下一次需要变换访问逻辑单元LUN的路径时对应的最优路径。本发明专利技术的装置包括主控制器选择模块、配置模块和路径选择模块。本发明专利技术的方法及装置,可以使得存储阵列I/O的负载均衡度达到最好,性能达到最优。

Read and write load balancing method and device for multiple controller storage array

The invention discloses a multi controller memory array read-write method and device for load balancing, applied to the memory array has a plurality of controllers, and write the information through the basic reading of each controller acquisition in memory array, controller selects the optimal decision index for the main controller logic unit of LUN, and the destination port were grouped according to the the controller, set a higher priority for the target port group logic unit LUN main controller corresponding to the path; and then obtain the host access logic unit LUN state, a reinforcement learning algorithm model, and the optimal path according to the corresponding calculated path host access logic unit LUN need to transform in the next time when the model of reinforcement learning algorithm. The device of the invention comprises a main controller selection module, a configuration module and a route selection module. The method and the device of the invention can make the load balance degree of the storage array I/O reach the optimum and the performance reach the optimum.

【技术实现步骤摘要】
一种多控制器存储阵列读写负载均衡方法及装置
本专利技术属于计算机存储访问
,尤其涉及一种多控制器存储阵列读写负载均衡方法及装置。
技术介绍
主机(HOST)在访问多控制器存储设备的逻辑单元(LUN)时,由于各存储控制器共享后端磁盘,一个LUN可以同时共存于各存储控制器系统中,为了有效地组织和管理存储资源,取其中一个控制器为优选控制器,也即主控制器,其他存储控制器称为此LUN的备控制器。由于每个存储控制器都有多个业务网络端口(目标端口),因此主机可以通过多条链路来访问同一个LUN,构成多路径场景。在多路径场景下,主机访问一个LUN存在多条读写(I/O)链路,但不同链路由于物理特性(比如千兆、万兆或FC等)或逻辑流程的不同而性能差异很大。因此,在I/O分发时读写指令需要在多条链路间进行路径选择,相关算法的合理与否决定了I/O性能的优劣。同时,由于主控制器对应的链路默认优先级最高,I/O优先从这些路径下发,因此LUN存储控制器属主需要在各控制器间进行均衡分配,以免存储控制器彼此间I/O负载差别过大,导致性能大幅下降。目前,多控制器存储设备中逻辑卷LUN属主分配和多链路路径选择方案多种多样,各厂商都有自己的多路径软件和逻辑卷属主配置子系统,种类繁多、配置复杂,并且存在以下问题:逻辑卷主控制器的分配不够合理。目前,传统的LUN控制器属主的配置都是通过系统管理界面手动操作的,由于难于全面掌握各控制器的状态信息,管理员很难有效地进行主控制器的划分。I/O路径规划对性能和可用性的影响较大。现有的多路径配置无法有效地约束I/O下发路径,I/O在一台控制器上拥堵或饥饿都会损耗I/O性能,对可用性也造成了一定的影响。现有的I/O路径选择算法一般基于启发式的方法,灵活性不足,无法做到自适应地根据当前各控制器负载及各I/O路径物理特性进行路径切换。
技术实现思路
本专利技术的目的是提供一种多控制器存储阵列读写负载均衡方法及装置,以避免现有技术中逻辑卷主控制器的分配不够合理,以I/O路径规划无法有效约束的问题。为了实现上述目的,本专利技术技术方案如下:一种多控制器存储阵列读写负载均衡方法,应用于具有多个控制器的存储阵列,所述多控制器存储阵列读写负载均衡方法,包括:采集存储阵列中各个控制器的基本读写信息,根据各个控制器的基本读写信息,计算得到每个控制器的决策指数,选取决策指数最优的控制器为逻辑单元LUN的主控制器;将目标端口按照所属控制器进行分组,并根据逻辑单元LUN所在的控制器来设置目标端口组TPG的属性,为逻辑单元LUN主控制器对应的目标端口组设置更高的优先级;获取主机访问逻辑单元LUN的路径的状态,建立增强学习算法模型,并根据增强学习算法模型计算得到主机在下一次需要变换访问逻辑单元LUN的路径时对应的最优路径。进一步地,所述各个控制器的基本读写信息包括控制器的带宽、IOPS、LUN数目、LUN总容量、总I/Oerror率、故障率、I/O突发率、总I/O量。进一步地,所述根据各个控制器的基本读写信息,计算得到每个控制器的决策指数,其中所述决策指数计算公式如下:其中,Z为决策指数,为权重因子,X={x1,…,xi,…,xn}为基本读写信息的性能表征参数。进一步地,所述主机访问逻辑单元LUN的路径的状态,包括路径的响应时间t、路径相对吞吐量p、排队I/O大小w和请求I/O大小r。进一步地,所述增强学习算法模型的训练数据包括:动作A,状态S和反馈值R,其中:A={a1,a2,…,aN},表示从当前路径切换到其他路径的所有可能;表示所有N条路径的一次状态;反馈值R对应在某种状态下执行了某种动作后,得到的反馈:R(t,p,w,r)=α/t+β*p+δ/w+μ/r+T其中α、β、δ、μ分别为可调节的权重系数,用于控制当前路径的状态对反馈值的影响程度,其中T表示主控制器对应路径的权重。本专利技术还提出了一种多控制器存储阵列读写负载均衡装置,应用于具有多个控制器的存储阵列,所述多控制器存储阵列读写负载均衡装置,包括:主控制器选择模块,用于采集存储阵列中各个控制器的基本读写信息,根据各个控制器的基本读写信息,计算得到每个控制器的决策指数,选取决策指数最优的控制器为逻辑单元LUN的主控制器;配置模块,用于将目标端口按照所属控制器进行分组,并根据逻辑单元LUN所在的控制器来设置目标端口组TPG的属性,为逻辑单元LUN主控制器对应的目标端口组设置更高的优先级;路径选择模块,用于获取主机访问逻辑单元LUN的路径的状态,建立增强学习算法模型,并根据增强学习算法模型计算得到主机在下一次需要变换访问逻辑单元LUN的路径时对应的最优路径。本专利技术提出的一种多控制器存储阵列读写负载均衡方法及装置,通过各个控制器的基本读写信息,计算得到每个控制器的决策指数,选取决策指数最优的控制器为逻辑单元LUN的控制器属主,并通过增强学习算法模型来选择访问LUN的路径,以控制I/O的下发路径,使I/O的负载均衡度达到最好,性能达到最优。附图说明图1为本专利技术一种多控制器存储阵列读写负载均衡方法流程图;图2为本专利技术实施例逻辑单元选取主控制器方法流程图;图3为本专利技术一种多控制器存储阵列读写负载均衡装置结构示意图。具体实施方式下面结合附图和实施例对本专利技术技术方案做进一步详细说明,以下实施例不构成对本专利技术的限定。本技术方案在双控制器或多控制器的场景下,创建逻辑单元(或者称为逻辑卷)LUN之前,首先收集各控制器的基本读写信息(I/O统计信息),并根据设定的算法决定相应的控制器属主,然后据此通过LIO进行存储端口和端口组的配置,为LUN提供多路径访问。当属主控制器故障时,I/O路径切换到备控制器的端口组,实现失效备援机制。最后,当新创建的LUN投入使用后,反馈并更新各控制器的基本读写信息。在通过存储设备创建存储池和逻辑卷时,卷和池的控制器属主的选择是由用户决定的,用户的选择主要是根据经验来判断的,并不总能反应正常状况,使I/O性能达到最优。为了提高主机访问多控制器存储设备时的性能,需要根据现有的多控制器的状况来决定新建LUN的主控制器。本实施例一种多控制器存储阵列读写负载均衡方法,如图1所示,包括如下步骤:步骤S1、采集存储阵列中各个控制器的基本读写信息,根据各个控制器的基本读写信息,计算得到每个控制器的决策指数,选取决策指数最优的控制器为逻辑单元LUN的主控制器。具体而言,如图2所示,在新建逻辑单元时,首先采集各个控制器的基本I/O信息,包括带宽、IOPS等,然后通过一定的统计方法计算求取均值、方差和积分等性能表征参数,接着,将给定的权重因子与表征向量进行加权平均计算,得到每个控制器的决策指数,最后,选取决策指数较大的控制器为新建逻辑卷LUN的主控制器。本实施例根据存储的特性,选取各个控制器的带宽、IOPS、LUN数目、LUN总容量、总I/Oerror率、故障率、I/O突发率、总I/O量来作为性能指标,计算并表示其性能表征参数为X={x1,…,xi,…,xn},如性能指标的均值、方差等。为了消除数值量纲不同造成的影响,将数据进行归一化处理。以两个控制器为例,Xi与Yi分别表示双端控制器各自的第i个参数。Xi=Xi_observe/(Xi_observe+Yi_observe)Yi=Yi_ob本文档来自技高网
...
一种多控制器存储阵列读写负载均衡方法及装置

【技术保护点】
一种多控制器存储阵列读写负载均衡方法,应用于具有多个控制器的存储阵列,其特征在于,所述多控制器存储阵列读写负载均衡方法,包括:采集存储阵列中各个控制器的基本读写信息,根据各个控制器的基本读写信息,计算得到每个控制器的决策指数,选取决策指数最优的控制器为逻辑单元LUN的主控制器;将目标端口按照所属控制器进行分组,并根据逻辑单元LUN所在的控制器来设置目标端口组TPG的属性,为逻辑单元LUN主控制器对应的目标端口组设置更高的优先级;获取主机访问逻辑单元LUN的路径的状态,建立增强学习算法模型,并根据增强学习算法模型计算得到主机在下一次需要变换访问逻辑单元LUN的路径时对应的最优路径。

【技术特征摘要】
1.一种多控制器存储阵列读写负载均衡方法,应用于具有多个控制器的存储阵列,其特征在于,所述多控制器存储阵列读写负载均衡方法,包括:采集存储阵列中各个控制器的基本读写信息,根据各个控制器的基本读写信息,计算得到每个控制器的决策指数,选取决策指数最优的控制器为逻辑单元LUN的主控制器;将目标端口按照所属控制器进行分组,并根据逻辑单元LUN所在的控制器来设置目标端口组TPG的属性,为逻辑单元LUN主控制器对应的目标端口组设置更高的优先级;获取主机访问逻辑单元LUN的路径的状态,建立增强学习算法模型,并根据增强学习算法模型计算得到主机在下一次需要变换访问逻辑单元LUN的路径时对应的最优路径。2.根据权利要求1所述的多控制器存储阵列读写负载均衡方法,其特征在于,所述各个控制器的基本读写信息包括控制器的带宽、IOPS、LUN数目、LUN总容量、总I/Oerror率、故障率、I/O突发率、总I/O量。3.根据权利要求1所述的多控制器存储阵列读写负载均衡方法,其特征在于,所述根据各个控制器的基本读写信息,计算得到每个控制器的决策指数,其中所述决策指数计算公式如下:其中,Z为决策指数,为权重因子,X={x1,…,xi,…,xn}为基本读写信息的性能表征参数。4.根据权利要求1所述的多控制器存储阵列读写负载均衡方法,其特征在于,所述主机访问逻辑单元LUN的路径的状态,包括路径的响应时间t、路径相对吞吐量p、排队I/O大小w和请求I/O大小r。5.根据权利要求4所述的多控制器存储阵列读写负载均衡方法,其特征在于,所述增强学习算法模型的训练数据包括:动作A,状态S和反馈值R,其中:A={a1,a2,…,aN},表示从当前路径切换到其他路径的所有可能;表示所有N条路径的一次状态;反馈值R对应在某种状态下执行了某种动作后,得到的反馈:R(t,p,w,r)=α/t+β*p+δ/w+μ/r+T其中α、β、δ、μ分别为可调节的权重系数,用于控制当前路径的状态对反馈值的影响程度,其中T表示主控制器对应路径的权重。6.一种多控制器存储阵列读写...

【专利技术属性】
技术研发人员:范长军朱敏杰杨佳东郑寄平
申请(专利权)人:中国电子科技集团公司第五十二研究所
类型:发明
国别省市:浙江,33

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

1