路径切换方法及装置制造方法及图纸

技术编号:25947004 阅读:30 留言:0更新日期:2020-10-17 03:38
本申请提供一种路径切换方法及装置,应用于服务器。服务器监测目标LUN对应各下发路径的运行状态,根据目标LUN所属类型以及各下发路径的运行状态,确定是否需要切换路径;在确定需要切换路径时,根据目标LUN所属存储节点上各控制器的运行状态以及对应端口的运行状态,确定是否存在空闲的路径;在存在空闲路径时,控制目标LUN从下发路径切换至空闲路径,以提升存储系统的IO处理性能。

【技术实现步骤摘要】
路径切换方法及装置
本申请涉及存储
,尤其涉及一种路径切换方法及装置。
技术介绍
存储节点指提供存储功能的设备,通常包括多个控制器以及多个用于存储数据的磁盘。该多个磁盘组成磁盘阵列。存储节点在磁盘阵列上创建可供服务器使用的逻辑单元号(英文:LogicalUnitNumber,缩写:LUN)。服务器可通过多条路径访问同一LUN。比如,针对单一存储节点,服务器可通过该存储节点上的多个控制器(对应多条路径)访问同一LUN;针对双活集群,服务器可通过该集群中的多个存储节点(对应多条路径)访问同一LUN。服务器利用本设备上运行的多路径软件,从LUN对应的多条路径中,为LUN选择下发IO的路径。比如,针对非对称逻辑单元访问(英文:AsymmetricLogicalUnitAccess,缩写:ALUA)类型的LUN,多路径软件优先选择LUN所属控制器对应路径下发IO;针对双活集群中的LUN,多路径软件优先选择LUN所属主存储节点对应路径下发IO。当将单一存储节点或双活集群中的多个LUN分配给不同服务器使用时,可能会因为配置不合理或者LUN的业务压力不均衡等原因,导致存储节点中各控制器或者双活集群中各存储节点,有的繁忙、有的空闲,无法充分发挥存储系统(单一存储节点或双活集群)的处理性能。
技术实现思路
有鉴于此,本申请提出一种路径切换方法及装置,用以提升存储系统的处理性能。为实现上述申请目的,本申请提供了如下技术方案:第一方面,本申请提供一种路径切换方法,应用于服务器,该方法包括:针对目标LUN对应的每一条下发路径,确定下发路径的运行状态;根据所述目标LUN所属类型以及各下发路径的运行状态,确定是否需要切换路径;当确定需要切换路径时,获取所述目标LUN所属存储节点上各控制器的运行状态以及控制器对应端口的运行状态;当确定存在控制器运行状态空闲且对应端口运行状态空闲的目标路径时,控制所述目标LUN从所述下发路径切换至所述目标路径。可选的,所述确定下发路径的运行状态,包括:统计所述目标LUN在下发路径上的IO延时;当统计的IO延时大于预设的延时阈值时,确定该下发路径的运行状态繁忙。可选的,所述IO延时包括平均IO延时和/或最大IO延时;所述当统计的IO延时大于预设的延时阈值时,确定该下发路径的运行状态繁忙,包括:当所述目标LUN在下发路径上的平均IO延时大于预设的平均延时阈值,和/或,最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙。可选的,所述当所述目标LUN在下发路径上的平均IO延时大于预设的平均延时阈值,和/或,最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙,包括:当所述目标LUN在下发路径上连续N个统计周期的平均IO延时均大于预设的平均延时阈值,和/或,连续N个统计周期的最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙。可选的,所述根据所述目标LUN所属类型以及各下发路径的运行状态,确定是否需要切换路径,包括:如果所述目标LUN所属类型为ALUA或双活LUN,且所述目标LUN对应的所有下发路径的运行状态均繁忙时,确定需要切换路径;否则,确定不需要切换路径。可选的,所述方法还包括:当确定不需要切换路径,且所述目标LUN对应下发路径中存在部分下发路径运行状态繁忙时,暂停或减少通过运行状态繁忙的下发路径下发所述目标LUN的IO。可选的,所述获取所述目标LUN所属存储节点上各控制器的运行状态以及控制器对应端口的运行状态,包括:针对所述存储节点上每一个控制器,通过该控制器对应端口向控制器下发用于读取控制器状态的指令;接收该控制器基于所述指令返回的状态数据,所述状态数据包括该控制器的运行状态以及接收所述指令的端口的运行状态。可选的,所述指令基于SCSI规范自定义。可选的,所述控制所述目标LUN从所述下发路径切换至所述目标路径,包括:如果所述目标LUN所属类型为ALUA,通知所述目标LUN所属存储节点更新所述目标LUN所属控制器为所述目标路径上的控制器;通过所述目标路径下发所述目标LUN的IO。可选的,所述控制所述目标LUN从所述下发路径切换至所述目标路径,包括:如果所述目标LUN所属类型为双活LUN,且所述目标LUN所属主存储节点上存在所述目标路径,通知所述目标LUN所属主存储节点更新所述目标LUN所属控制器为本存储节点上所述目标路径对应的控制器;并通过所述主存储节点上目标路径下发所述目标LUN的IO;如果所述目标LUN所属类型为双活LUN,且所述目标LUN所属主存储节点上不存在所述目标路径,且所述目标LUN所属备存储节点上存在所述目标路径,通知双活集群将所述目标LUN所属主存储节点更新为备存储节点,将原备存储节点更新为主存储节点;并通知所述目标LUN所属新的主存储节点更新所述目标LUN所属控制器为所述新的主存储节点上目标路径对应的控制器;通过所述目标LUN所属新的主存储节点上的目标路径下发所述目标LUN的IO。第二方面,本申请提供一种路径切换装置,应用于服务器,该装置包括:监测单元,用于针对目标LUN对应的每一条下发路径,确定下发路径的运行状态;确定单元,用于根据所述目标LUN所属类型以及各下发路径的运行状态,确定是否需要切换路径;获取单元,用于当确定需要切换路径时,获取所述目标LUN所属存储节点上各控制器的运行状态以及控制器对应端口的运行状态;切换单元,用于当确定存在控制器运行状态空闲且对应端口运行状态空闲的目标路径时,控制所述目标LUN从所述下发路径切换至所述目标路径。可选的,所述监测单元确定下发路径的运行状态,包括:统计所述目标LUN在下发路径上的IO延时;当统计的IO延时大于预设的延时阈值时,确定该下发路径的运行状态繁忙。可选的,所述IO延时包括平均IO延时和/或最大IO延时;所述监测单元在统计的IO延时大于预设的延时阈值时,确定该下发路径的运行状态繁忙,包括:当所述目标LUN在下发路径上的平均IO延时大于预设的平均延时阈值,和/或,最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙。可选的,所述监测单元在所述目标LUN在下发路径上的平均IO延时大于预设的平均延时阈值,和/或,最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙,包括:当所述目标LUN在下发路径上连续N个统计周期的平均IO延时均大于预设的平均延时阈值,和/或,连续N个统计周期的最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙。可选的,所述确定单元根据所述目标LUN所属类型以及各下发路径的运行状态,确定是否需要切换路径,包括:如果所述目标LUN所属类型为ALUA或双活LUN,且所述目标LUN对应的所有下发路径的运行状态均繁忙时本文档来自技高网...

【技术保护点】
1.一种路径切换方法,其特征在于,应用于服务器,所述方法包括:/n针对目标LUN对应的每一条下发路径,确定下发路径的运行状态;/n根据所述目标LUN所属类型以及各下发路径的运行状态,确定是否需要切换路径;/n当确定需要切换路径时,获取所述目标LUN所属存储节点上各控制器的运行状态以及控制器对应端口的运行状态;/n当确定存在控制器运行状态空闲且对应端口运行状态空闲的目标路径时,控制所述目标LUN从所述下发路径切换至所述目标路径。/n

【技术特征摘要】
1.一种路径切换方法,其特征在于,应用于服务器,所述方法包括:
针对目标LUN对应的每一条下发路径,确定下发路径的运行状态;
根据所述目标LUN所属类型以及各下发路径的运行状态,确定是否需要切换路径;
当确定需要切换路径时,获取所述目标LUN所属存储节点上各控制器的运行状态以及控制器对应端口的运行状态;
当确定存在控制器运行状态空闲且对应端口运行状态空闲的目标路径时,控制所述目标LUN从所述下发路径切换至所述目标路径。


2.如权利要求1所述的方法,其特征在于,所述确定下发路径的运行状态,包括:
统计所述目标LUN在下发路径上的IO延时;
当统计的IO延时大于预设的延时阈值时,确定该下发路径的运行状态繁忙。


3.如权利要求2所述的方法,其特征在于,所述IO延时包括平均IO延时和/或最大IO延时;所述当统计的IO延时大于预设的延时阈值时,确定该下发路径的运行状态繁忙,包括:
当所述目标LUN在下发路径上的平均IO延时大于预设的平均延时阈值,和/或,最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙。


4.如权利要求3所述的方法,其特征在于,所述当所述目标LUN在下发路径上的平均IO延时大于预设的平均延时阈值,和/或,最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙,包括:
当所述目标LUN在下发路径上连续N个统计周期的平均IO延时均大于预设的平均延时阈值,和/或,连续N个统计周期的最大IO延时大于预设的最大延时阈值时,确定该下发路径的运行状态繁忙。


5.如权利要求1所述的方法,其特征在于,所述根据所述目标LUN所属类型以及各下发路径的运行状态,确定是否需要切换路径,包括:
如果所述目标LUN所属类型为ALUA或双活LUN,且所述目标LUN对应的所有下发路径的运行状态均繁忙时,确定需要切换路径;否则,确定不需要切换路径。


6.如权利要求1或5所述的方法,其特征在于,所述方法还包括:
当确定不需要切换路径,且所述目标LUN对应下发路径中存在部分下发路径运行状态繁忙时,暂停或减少通过运行状态繁忙的下发路径下发所述目标LUN的IO。


7.如权利要求1所述的方法,其特征在于,所述获取所述目标LUN所属存储节点上各控制器的运行状态以及控制器对应端口的运行状态,包括:
针对所述存储节点上每一个控制器,通过该控制器对应端口向控制器下发用于读取控制器状态的指令;
接收该控制器基于所述指令返回的状态数据,所述状态数据包括该控制器的运行状态以及接收所述指令的端口的运行状态。


8.如权利要求7所述的方法,其特征在于,所述指令基于SCSI规范自定义。


9.如权利要求1所述的方法,其特征在于,所述控制所述目标LUN从所述下发路径切换至所述目标路径,包括:
如果所述目标LUN所属类型为ALUA,通知所述目标LUN所属存储节点更新所述目标LUN所属控制器为所述目标路径上的控制器;
通过所述目标路径下发所述目标LUN的IO。


10.如权利要求1所述的方法,其特征在于,所述控制所述目标LUN从所述下发路径切换至所述目标路径,包括:
如果所述目标LUN所属类型为双活LUN,且所述目标LUN所属主存储节点上存在所述目标路径,通知所述目标LUN所属主存储节点更新所述目标LUN所属控制器为本存储节点上所述目标路径对应的控制器;并通过所述主存储节点上目标路径下发所述目标LUN的IO;
如果所述目标LUN所属类型为双活LUN,且所述目标LUN所属主存储节点上不存在所述目标路径,且所述目标LUN所属备存储节点上存在所述目标路径,通知双活集群将所述目标LUN所属主存储节点更新为备存储节点,将原备存储节点更新为主存储节点;并通知所述目标LUN所属新的主存储节点更新所述目标LUN所属控制器为所述新的主存储节点上目标路径对应的控制器;通过所述目标LUN所属新的主存储节点上的目标路径下发所述目标LUN的IO。


11.一种路径切换装置,其特征在于,应用于服务器,所述装置包括:

【专利技术属性】
技术研发人员:王婵娟
申请(专利权)人:杭州宏杉科技股份有限公司
类型:发明
国别省市:浙江;33

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

1