System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种提高双控双活系统存储业务连续性的方法技术方案_技高网

一种提高双控双活系统存储业务连续性的方法技术方案

技术编号:40925894 阅读:3 留言:0更新日期:2024-04-18 14:49
本发明专利技术属于计算机存储技术领域,公开了一种提高双控双活系统存储业务连续性的方法,包括以下步骤:当主控制器或主控制器的前端链路故障时,在副控制器的路径上下发IO;替换主控制器上映射过来的不可用的逻辑单元号;替换成功后,对IO流放行;当主控制器恢复后,将主机在主控制器逻辑单元号的IO回切到主控制器。本发明专利技术通过在target驱动中对IO的“引流”实现业务的切换接管,避免了双控缓存同步,减少了数据同步开销和复杂性,并提供了一种故障场景下提高存储业务连续性的方法。

【技术实现步骤摘要】

本专利技术涉及一种提高双控双活系统存储业务连续性的方法,属于计算机存储。


技术介绍

1、由于企业存储的持久化,通常采用hdd等低速介质,业界通常是在卷上铺一层缓存实现读写性能的提升,在控制器内采用掉电保护的方式保证控制器掉电时,掉电保护模块能够将本地缓存的数据下刷到磁盘介质,保证数据不丢失。此外,为了保证业务的连续性,专用的存储设备通常会采用冗余机制消除单点故障,保障存储服务的高可用,比如双控制器架构。双控架构在双活工作方式下,用户可以通过两个控制器对同一存储资源进行读写,充分利用两个控制器的计算资源,但由于涉及到控制器间的缓存同步,使得双活场景下的读写流程和高可用保证方式较为复杂。

2、现有公告号为:cn 107179967b公开了一种非对称双活双控系统的故障处理方法,基于非对称双活双控系统,该系统包括双控制器,即a控制器、b控制器,其实现过程为:当前端链路故障中,某控制器接收到不属于自己的io数据时,触发故障接管过程,完成归属权的切换;故障接管后,在前端链路故障恢复时,设置定时器,等状态保持一定时间后,进行下一次切换;故障控制器恢复正常,进行故障恢复时,根据lun是否回到初始状态来判断,哪些lun归属于对端。

3、上述现有的方法虽然可以在一定程度上简化双活场景下的读写流程和高可用保证方式,但是在故障场景下,属主的切换、io控制权的切换需要经过双控复杂的协商,增加了业务切换接管的难度,对此本专利技术提出了一种提高双控双活系统存储业务连续性的方法。


技术实现思路

1、本专利技术的目的是提供一种提高双控双活系统存储业务连续性的方法,通过在target端口驱动中对io的“引流”,达到业务的切换接管,保障业务在秒级范围内不中断。

2、为达到上述目的/为解决上述技术问题,本专利技术是采用下述技术方案实现的。

3、一方面,本专利技术提供一种提高双控双活系统存储业务连续性的方法,其实现步骤如下:

4、s1:确定双控制器并在双控制器上部署集群管理软件,双控制器间通过内部链路维持心跳;

5、s2:设定双控制器分别为主控制器和副控制器,并设定主控制器为最优路径;

6、s3:在主控制器上创建目标端口,所述目标端口包括主机host访问的端口一和副控制器访问的输入端口,同时在本地激活逻辑单元号,并将本地激活的逻辑单元号加入主控制器创建的目标端口;

7、s4:副控制器通过内部链路连接有逻辑单元号,并在本地映射,形成映射磁盘,在副控制器上创建主机host访问的端口二,将新增的映射磁盘加入端口二中;

8、s5:主机上的多路径输入/输出mpio将端口一和端口二映射过来的卷聚合成一块盘,并在进行业务读写时,优先在端口一上下发io,下发在端口二上的io由副控制器转发给主控制器执行实际的读写;

9、s6:判断主机在读写磁盘存储的过程中io是否发生了中断,若发生了中断,则有故障发生,当有故障发生时,判断故障位置;

10、若在主机读写磁盘存储的过程中io没有发生中断,则没有故障发生,继续执行当前的读写操作;

11、s7:若发生故障后,主机通过主控制器依旧正常读写磁盘存储,则为副控制器或副控制器的前端链路发生故障,由于host从主控制器下发io,所以业务正常;

12、若发生故障后,主机无法通过主控制器正常读写磁盘存储,则为主控制器或主控制器的前端链路发生故障,需要副控制器做切换接管;

13、s8:若主机通过副控制器可以连接到映射磁盘,则副控制器及其前端链路恢复,副控制器恢复io路径;

14、若主机通过主控制器可以连接到磁盘,则主控制器及其前端链路恢复,将主机在主控制器上逻辑单元号的io回切到主控制器,回到故障前的状态。

15、进一步地,所述步骤s2中,主控制器通过最优路径为主机host提供服务,同时指定副控制器为initiator,副控制器通过内部链路连接逻辑单元号,并在本地映射出映射磁盘。

16、进一步地,所述步骤s3中,副控制器设置initiator的自动重连,在映射磁盘上线时,将映射磁盘通过本地的端口二以直通模式导出,为host提供次优路径的存储服务。

17、进一步地,所述步骤s5具体步骤包括:

18、s51:host通过多路径输入/输出mpio聚合两个路径;

19、s52:存储上报两条路径的优先级;

20、s53:优先在高优先级端口在下发io,下发在优先级端口的io传递给高优先级的端口处理。

21、进一步地,所述步骤s53中,设定主控制器的优先级高于副控制器,由于io最终都是在主控制器处理,所以不会涉及到双控的数据同步,但会延长副控制器的io路径,因此将副控制器作为次优路径,如果存在多个逻辑单元号,则让主、副控制器交替作为逻辑单元号的主控。

22、进一步地,所述步骤s7中,集群监控软件通过控制器间的心跳区分故障位置为主控制器或主控制器前端链路。

23、进一步地,在步骤s7中,当主控制器发生故障时,具体切换接管方法包括以下步骤:

24、a1:host在副控制器的io路径上下发io;

25、a2:在端口二的驱动中用实际的逻辑单元号替换主控制器映射过来的不可用逻辑单元号;

26、a3:端口二驱动恢复该逻辑单元号上的io,并对io流放行,以使host继续读写该逻辑单元号;

27、当主控制器前端链路发生故障时,具体切换接管方法包括以下步骤:

28、b1:主控制器释放对逻辑单元号的占用,并执行挂起副控制器io的动作;

29、b2:在端口二的驱动中用实际的逻辑单元号替换主控制器映射过来的不可用逻辑单元号;

30、b3:端口二驱动恢复该逻辑单元号上的io,对io流放行,host继续读写该逻辑单元号。

31、进一步地,所述步骤a1中,设定host上io路径的报错时间为t1,控制器间内部端口二的超时时间为t2,双控的集群管理软件会在(t1+t2)之前通过端口二驱动的挂起接口挂起副控制器上的io,端口二给host回复busy,同时host在副控制器上重试io。

32、进一步地,所述步骤s8中,主机在主控制器上逻辑单元号的io回切到主控制器包括如下步骤:

33、c1:使用端口二提供的挂起接口挂起host在副控制器上的io;

34、c2:副控制器释放对逻辑单元号的占用,主控制器重新激活该逻辑单元号,同时将逻辑单元号重新加入端口一;

35、c3:副控制器自动重连内部端口二;

36、c4:重新上报双io路径的优先级,host感知到优先级变化后主动将io切换到主控制器上,恢复到故障前状态,io被引流到最优路径。

37、进一步地,所述步骤c3的具体步骤包括:

38、c31:副控制器通过端口二提供的replace backend接口将逻辑单本文档来自技高网...

【技术保护点】

1.一种提高双控双活系统存储业务连续性的方法,其特征在于,包括:

2.根据权利要求1所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

3.根据权利要求1所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

4.根据权利要求1所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

5.根据权利要求4所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

6.根据权利要求1所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

7.根据权利要求6所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

8.根据权利要求7所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

9.根据权利要求1所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

10.根据权利要求9所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

【技术特征摘要】

1.一种提高双控双活系统存储业务连续性的方法,其特征在于,包括:

2.根据权利要求1所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

3.根据权利要求1所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

4.根据权利要求1所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

5.根据权利要求4所述的一种提高双控双活系统存储业务连续性的方法,其特征在于:

6...

【专利技术属性】
技术研发人员:曹梦飞张翼刘啸滨白杨
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

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

1