System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于iSCSI导出分布式存储共享卷的系统及方法技术方案_技高网

一种基于iSCSI导出分布式存储共享卷的系统及方法技术方案

技术编号:40827116 阅读:4 留言:0更新日期:2024-04-01 14:48
本发明专利技术公开了一种基于iSCSI导出分布式存储共享卷的系统及方法,包括:ceph_iscsi_config配置模块通过rtslib将分布式存储卷添加到内核LIO中,并根据所述分布式存储卷的类型,创建不同的target_port_group名字;将分布式存储卷作为设备添加到tcmu‑runner IO模块中时,根据所述分布式存储卷的target_port_group名字,设置failover_type;iSCIS客户端的多路径配置成链路聚合模式时,每个iSCSI网关服务器上的tcmu‑runner IO模块处理来自iSCIS客户端的iSCSI CMD时,通过check_alua_state检查CMD所属的设备的failover_type,根据failover_type确定对分布式存储卷的写操作方案。本发明专利技术使得每个iSCSI网关服务器不再争抢分布式存储卷的排它锁,提升共享分布式存储卷的性能。

【技术实现步骤摘要】

本专利技术属于分布式存储,具体地,涉及一种基于iscsi导出分布式存储共享卷的系统及方法。


技术介绍

1、软件定义存储(software defined storage,sds)将存储软件和存储硬件分离,采用标准化硬件,基于软件实现企业级存储功能和服务,将存储的物理资源通过抽象、池化整合,给应用提供各种存储服务。

2、软件定义存储通常采用分布式存储集群对外提供块存储服务,使用基于网络的小型计算机系统接口(internet small computer system interface,iscsi)技术将分布式存储中的卷导出。先将分布式存储的卷添加到iscsi网关服务器的target中,成为target中的lun,物理主机或者虚拟化宿主机通过initiator连接target,将分布式存储的卷映射为本地硬盘使用。

3、分布式存储支持在多个存储节点上部署iscsi网关服务器,供多个物理主机或者虚拟化宿主机通过不同的iscsi网关服务器连接同一个卷,方便应用主机部署共享文件系统。当前iscsi网关服务器将卷导出时,需要获取卷的排它锁,即同一时刻,只能有一个iscsi网关服务器对卷进行写操作。并且,当前将分布式存储集群中的卷通过iscsi技术导出时,必须同时打开alua功能,并且使能卷的排它锁。

4、但是,多个物理主机或者虚拟化宿主机通过不同的iscsi网关服务器同时写一个卷时,不同iscsi网关服务器之间会相互争抢卷的排它锁,导致整体性能不足单iscsi网关服务器性能的10%,造成上层业务卡顿。p>

技术实现思路

1、针对现有技术中存在的问题,本专利技术提供了一种基于iscsi导出分布式存储共享卷的系统及方法,使得每个iscsi网关服务器不再争抢分布式存储卷的排它锁,提升共享分布式存储卷的性能,为上层业务提供更快的响应。

2、为实现上述技术目的,本专利技术采用如下技术方案:一种基于iscsi导出分布式存储共享卷的系统,包括:ceph_iscsi_config配置模块和tcmu-runner模块,所述ceph_iscsi_config配置模块将分布式存储卷添加到内核lio中,所述tcmu-runner模块工作在用户态,作为内核lio和分布式存储卷之间的数据通道,分为tcmu-runner io模块和tcmu-runner故障恢复模块,所述tcmu-runner io模块根据分布式存储卷的类型进行写操作,所述tcmu-runner故障恢复模块用于布式存储卷所属的网关服务器出现故障时进行恢复。

3、进一步地,本专利技术还提供了一种基于iscsi导出分布式存储共享卷的方法,采用所述的基于iscsi导出分布式存储共享卷的系统,具体包括如下步骤:

4、步骤1、ceph_iscsi_config配置模块通过rtslib将分布式存储卷添加到内核lio中,并根据所述分布式存储卷的类型,创建不同的target_port_group名字;

5、步骤2、将分布式存储卷作为设备添加到tcmu-runnerio模块中时,根据所述分布式存储卷的target_port_group名字,设置failover_type;

6、步骤3、iscis客户端的多路径配置成链路聚合模式时,每个iscsi网关服务器上的tcmu-runner io模块处理来自iscis客户端的iscsi cmd时,通过check_alua_state检查cmd所属的设备的failover_type,根据failover_type确定对分布式存储卷的写操作方案。

7、进一步地,所述分布式存储卷的类型分为三种:alua san、san和src san,所述aluasan表示卷排它锁开启,alua开启;所述san表示卷排它锁关闭,alua开启;所述src san表示卷排它锁关闭,alua关闭。

8、进一步地,若alua关闭,创建的target_port_group名字为null_tg_pt_gp;否则,根据是否是活动路径,若是活动路径,创建的target_port_group名字为ao;否则创建的target_port_group名字为anox。

9、进一步地,所述活动路径为分布式存储卷所属的网关服务器。

10、进一步地,步骤2中若所述分布式存储卷的target_port_group名字为null_tg_pt_gp,设置failover_type为null;否则,设置failover_type为implicit。

11、进一步地,步骤3中若设备的failover_type为implicit,在对设备进行写操作前,需要检查是否持有分布式存储卷的排它锁,如果没有持有锁,则向其他持有锁的tcmu-runner模块申请锁,且同一时刻只有持有分布式存储卷排它锁的网关服务器上的tcmu-runner io模块对分布式存储卷执行写操作。

12、进一步地,步骤3中若设备的failover_type为null,所有网关服务器上的tcmu-runner模块并发对分布式存储卷进行写操作。

13、进一步地,当活动路径节点的tcmu-runner io模块访问分布式存储卷超时或者错误时,故障的活动路径对应的tcmu-runner需要把设备添加到tcmu-runner故障恢复模块的恢复列表中,并根据target_port_group名字,确认是否添加到设备恢复列表。

14、进一步地,若target port group为default_tg_pt_gp,不支持故障恢复;若target port group为null_tg_pt_gp或ao或anox,将设备添加到恢复列表中,当活动路径恢复后,进行切换。

15、与现有技术相比,本专利技术具有如下有益效果:

16、(1)本专利技术基于iscsi导出分布式存储共享卷的系统及方法,将分布式存储卷添加到lio中时,支持alua打开分布式存储卷排它锁使能、alua打开分布式存储卷排它锁不使能、alua关闭分布式存储卷排它锁不使能三种不同的卷类型,本专利技术支持分布式存储卷设置alua关闭和卷排它锁不使能,实现高性能的链路聚合模式的iscsi共享卷;而现有方案只支持alua打开卷排它锁使能一种类型,iscis共享卷性能极低;

17、(2)本专利技术中tcmu-runner io模块根据分布式存储的target port group配置区分卷类型,处理io时决定是否需要获取卷的排它锁,为实现高性能链路聚合共享卷提供必要支持;而现有方案只支持alua打开并且排它锁使能的卷,必须获取卷的排它锁;

18、(3)本专利技术中tcmu-runner故障恢复模块根据分布是存储卷的target port group配置区分分布式存储卷类型,当活动路径故障时决定是否需要加入恢复列表,以便活动路径恢复后,可以正常切换回该活动路径;而现有方案不支持alua关闭时加入恢复列表。

本文档来自技高网...

【技术保护点】

1.一种基于iSCSI导出分布式存储共享卷的系统,其特征在于,包括:ceph_iscsi_config配置模块和tcmu-runner模块,所述ceph_iscsi_config配置模块将分布式存储卷添加到内核LIO中,所述tcmu-runner模块工作在用户态,作为内核LIO和分布式存储卷之间的数据通道,分为tcmu-runner IO模块和tcmu-runner故障恢复模块,所述tcmu-runner IO模块根据分布式存储卷的类型进行写操作,所述tcmu-runner故障恢复模块用于布式存储卷所属的网关服务器出现故障时进行恢复。

2.一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,采用权利要求1所述的基于iSCSI导出分布式存储共享卷的系统,具体包括如下步骤:

3.根据权利要求2所述的一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,所述分布式存储卷的类型分为三种:ALUA SAN、SAN和SRC SAN,所述ALUASAN表示卷排它锁开启,ALUA开启;所述SAN表示卷排它锁关闭,ALUA开启;所述SRC SAN表示卷排它锁关闭,ALUA关闭。

4.根据权利要求3所述的一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,若ALUA关闭,创建的target_port_group名字为null_tg_pt_gp;否则,根据是否是活动路径,若是活动路径,创建的target_port_group名字为ao;否则创建的target_port_group名字为anox。

5.根据权利要求4所述的一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,所述活动路径为分布式存储卷所属的网关服务器。

6.根据权利要求4所述的一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,步骤2中若所述分布式存储卷的target_port_group名字为null_tg_pt_gp,设置failover_type为NULL;否则,设置failover_type为IMPLICIT。

7.根据权利要求6所述的一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,步骤3中若设备的failover_type为IMPLICIT,在对设备进行写操作前,需要检查是否持有分布式存储卷的排它锁,如果没有持有锁,则向其他持有锁的tcmu-runner模块申请锁,且同一时刻只有持有分布式存储卷排它锁的网关服务器上的tcmu-runner IO模块对分布式存储卷执行写操作。

8.根据权利要求6所述的一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,步骤3中若设备的failover_type为NULL,所有网关服务器上的tcmu-runner模块并发对分布式存储卷进行写操作。

9.根据权利要求8所述的一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,当活动路径节点的tcmu-runner IO模块访问分布式存储卷超时或者错误时,故障的活动路径对应的tcmu-runner需要把设备添加到tcmu-runner故障恢复模块的恢复列表中,并根据target_port_group名字,确认是否添加到设备恢复列表。

10.根据权利要求9所述的一种基于iSCSI导出分布式存储共享卷的方法,其特征在于,若target port group为default_tg_pt_gp,不支持故障恢复;若target port group为null_tg_pt_gp或ao或anox,将设备添加到恢复列表中,当活动路径恢复后,进行切换。

...

【技术特征摘要】

1.一种基于iscsi导出分布式存储共享卷的系统,其特征在于,包括:ceph_iscsi_config配置模块和tcmu-runner模块,所述ceph_iscsi_config配置模块将分布式存储卷添加到内核lio中,所述tcmu-runner模块工作在用户态,作为内核lio和分布式存储卷之间的数据通道,分为tcmu-runner io模块和tcmu-runner故障恢复模块,所述tcmu-runner io模块根据分布式存储卷的类型进行写操作,所述tcmu-runner故障恢复模块用于布式存储卷所属的网关服务器出现故障时进行恢复。

2.一种基于iscsi导出分布式存储共享卷的方法,其特征在于,采用权利要求1所述的基于iscsi导出分布式存储共享卷的系统,具体包括如下步骤:

3.根据权利要求2所述的一种基于iscsi导出分布式存储共享卷的方法,其特征在于,所述分布式存储卷的类型分为三种:alua san、san和src san,所述aluasan表示卷排它锁开启,alua开启;所述san表示卷排它锁关闭,alua开启;所述src san表示卷排它锁关闭,alua关闭。

4.根据权利要求3所述的一种基于iscsi导出分布式存储共享卷的方法,其特征在于,若alua关闭,创建的target_port_group名字为null_tg_pt_gp;否则,根据是否是活动路径,若是活动路径,创建的target_port_group名字为ao;否则创建的target_port_group名字为anox。

5.根据权利要求4所述的一种基于iscsi导出分布式存储共享卷的方法,其特征在于,所述活动路径为分布式存储卷所属的网关服务器。

6.根据权利要求4所述的一种基于is...

【专利技术属性】
技术研发人员:刘伟锋李佳徐刘飞龙吴伟李博奇王宜燕
申请(专利权)人:中电信数智科技有限公司
类型:发明
国别省市:

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

1