一种多控制器缓存备份方法与流程

文档序号:11133773阅读:645来源:国知局
一种多控制器缓存备份方法与制造工艺

本发明涉及存储技术领域,特别是涉及一种多控制器缓存备份方法。



背景技术:

目前,当前主流高端存储系统一般都采用了多个控制器的架构设计,为了保证高端存储系统的高可用性,一般会允许一个或多个控制器失效。为了保证不影响性能,多个控制器之间,会存在冗余备份机制,保证某个控制失效后,其缓存能够被备份到其他控制器中,从而避免了进入写透(WT)模式。现有的主流缓存备份技术都采用了直接备份的技术,在不同的控制节点间直接拷贝缓存内容,通常需要的时间比较多,特别在拷贝内容比较大的情况下,缓存效率很低,当前多控之间的直接备份对存储系统的性能开销影响比较大,会影响到存储系统的可用性。



技术实现要素:

本发明的目的是提供一种多控制器缓存备份方法,以实现提高多控制器间缓存效率。

为解决上述技术问题,本发明提供一种多控制器缓存备份方法,该方法包括:

当第一主控制器发生故障时,第一备份控制器接管所述第一主控制器的读写业务;

所述第一备份控制器拷贝所述第一主控制器的缓存内容到第二主控制器。

优选的,所述第一备份控制器拷贝所述第一主控制器的缓存内容到第二主控制器之后,还包括:

所述第一备份控制器拷贝所述第一主控制器的缓存内容到第三主控制器。

优选的,所述第二主控制器为与所述第一备份控制器距离最近的有效的控制器。

优选的,所述第三主控制器为与所述第一备份控制器相邻的有效的控制器。

优选的,所述第一备份控制器拷贝所述第一主控制器的缓存内容到第二主控制器之后,还包括:

所述第二主控制器将所述缓存内容拷贝到第二备份控制器。

优选的,所述第一备份控制器拷贝所述第一主控制器的缓存内容到第三主控制器之后,还包括:

所述第三主控制器将所述缓存内容拷贝至第三备份控制器。

优选的,所述第一主控制器与第一备份控制器互为备份,所述第二主控制器与第二备份控制器互为备份,所述第三主控制器与第三备份控制器互为备份。

优选的,所述多控制器存储系统中任意两个控制器之间均相连接。

本发明所提供的一种多控制器缓存备份方法,应用于多控制器存储系统,当第一主控制器发生故障时,第一备份控制器接管所述第一主控制器的读写业务;所述第一备份控制器拷贝所述第一主控制器的缓存内容到第二主控制器。可见,当一个控制器即主控制器发生故障时,其伙伴控制器即备份控制器会接管它的读写业务,同时会备份其缓存到其他可用控制器中,该方法相对于现有的直接备份技术调整了缓存备份方式,保证控制器失效情况下,伙伴控制器会及时备份其缓存内容到相邻控制器中,保证其可靠性,同时不产生较大的性能开销,减少由于缓存备份带来的性能损失和时间开销,提高多控制器间缓存效率,提高存储系统可靠性,进而降低存储系统中备份开销同时保证性能。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明所提供的一种多控制器缓存备份方法的流程图;

图2为四控制器缓存拷贝示意图;

图3为六控制器缓存拷贝示意图;

图4为八控制器缓存拷贝示意图。

具体实施方式

本发明的核心是提供一种多控制器缓存备份方法,以实现提高多控制器间缓存效率。

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明所提供的一种多控制器缓存备份方法的流程图,该方法应用于多控制器存储系统,该方法包括:

S11:当第一主控制器发生故障时,第一备份控制器接管第一主控制器的读写业务;

S12:第一备份控制器拷贝第一主控制器的缓存内容到第二主控制器。

可见,当一个控制器即主控制器发生故障时,其伙伴控制器即备份控制器会接管它的读写业务,同时会备份其缓存到其他可用控制器中,该方法相对于现有的直接备份技术调整了缓存备份方式,保证控制器失效情况下,伙伴控制器会及时备份其缓存内容到相邻控制器中,保证其可靠性,同时不产生较大的性能开销,减少由于缓存备份带来的性能损失和时间开销,提高多控制器间缓存效率,提高存储系统可靠性,进而降低存储系统中备份开销同时保证性能。

基于上述方法,进一步的,第一备份控制器拷贝第一主控制器的缓存内容到第二主控制器之后,第一备份控制器拷贝第一主控制器的缓存内容到第三主控制器。第一主控制器与第一备份控制器互为备份。

其中,第二主控制器为与第一备份控制器距离最近的有效的控制器。

其中,第三主控制器为与第一备份控制器相邻的有效的控制器。详细的,第二主控制器和第三主控制器是与第一备份控制器最近的两个有效的控制器。第二主控制器是与第一备份控制器最近的有效的控制器,即是与第一备份控制器第一近的有效控制器。第三控制器是与第一备份控制器第二近的有效的控制器。有效表明控制器没有损坏,是能够使用的。

进一步的,第一备份控制器拷贝第一主控制器的缓存内容到第二主控制器之后,第二主控制器将缓存内容拷贝到第二备份控制器。第二主控制器与第二备份控制器互为备份。详细的,当第二主控制器的负载减小时,第二主控制器将缓存内容拷贝到第二备份控制器,即当第二主控制器的负载小于预设值时,第二主控制器将缓存内容拷贝到第二备份控制器。

其中,第一备份控制器拷贝第一主控制器的缓存内容到第三主控制器之后,第三主控制器将缓存内容拷贝至第三备份控制器。详细的,当第三主控制器的负载减小时,第三主控制器将缓存内容拷贝至第三备份控制器,即当第三主控制器的负载小于预设值时,第二主控制器将缓存内容拷贝到第二备份控制器,这里的预设值和前面所说的第二主控制器的负载小于的预设值是相同的。

具体的,第一主控制器与第一备份控制器互为备份,第二主控制器与第二备份控制器互为备份,第三主控制器与第三备份控制器互为备份。

其中,多控制器存储系统中任意两个控制器之间均相连接。

详细的,多控制存储系统中,多个控制器两两互为备份,即两个控制器其缓存内容相互备份,当其中一个控制器发生故障时,其伙伴控制器会接管它的读写业务,同时会备份其缓存到其他可用控制器中。根据备份环境和控制器数量,会采用不同的备份策略,为了保证备份策略的有效实施,多控制器间采用全互联结构即任意控制器间均有物理连接。本文中的第一主控制器、第一备份控制器、第二主控制器、第二备份控制器、第三主控制器和第三备份控制器均为多控制器存储系统中的控制器,第一主控制器、第一备份控制器、第二主控制器、第二备份控制器、第三主控制器和第三备份控制器中任意两个控制器均相连接。

当前多控之间的缓存备份策略通常对存储系统的性能开销影响比较大,在某些情况下甚至会影响到存储系统的可用性,本方法有效解决了这一问题,提高多控制器间缓存效率,提高存储系统可靠性,降低存储系统中备份开销同时保证性能。

本方法提高缓存效率,降低备份开销,同时保证存储系统的可靠性,适用于不同数量的控制器数量,如四、六、八个控制器。根据系统负载和控制器数量而采取不同的缓存策略。

本方法根据多控系统的应用环境,调整缓存备份方式,保证控制器失效情况下,伙伴控制器会及时备份其缓存内容到相邻控制器中,保证其可靠性,同时不产生较大的性能开销,减少由于缓存备份带来的性能损失和时间开销。

多控制器存储系统中多个控制器两两互为备份,即两个控制器其缓存内容相互备份,本方法中,当其中一个控制器发生故障时,其伙伴控制器会接管它的读写业务,同时会备份其缓存到其他可用控制器中。根据备份环境和控制器数量,会采用不同的备份策略,为了保证备份策略的有效实施,多控制器间采用全互联结构即任意控制器间均有物理连接。

根据控制器数量的不同,会有不同的实现策略。比如,在四控时,即有四个控制器,某个控制器失效,这个失效控制器的伙伴控制器会拷贝其缓存内容到一个最近的有效控制器中,最近的有效控制器记为控制器A。在合适的时机,例如控制器A负载较小时,控制器A会备份其内容到它的伙伴控制器中。当控制器数量为6时,失效控制器的伙伴控制器会拷贝缓存到最近的两个控制器中,这最近的两个控制器会在合适的时机拷贝缓存到其伙伴控制器中,伙伴控制器指代备份控制器。控制器数量为8时,过程类似于6个控制器。

参考图2,有四个控制器,A、B、C和D均指代控制器,A与B为一对,C与D为一对,互为备份。A为第一主控制器,B为第一备份控制器,C为第二主控制器,D为第二备份控制器。当控制器A失效时,B会接管A的LUN,同时B会向D和C备份其缓存内容,根据当前业务情况,备份策略有所不同,如果业务负载较大,则B只备份到C中,根据C负载情况,选择合适的时机进而从C备份到D中。当C负载较小时,启动从C到D的备份过程。

参考图3,有六个控制器,A、B、C、D、E和F均指代控制器,其中A与B为一对,互为备份;C与D为一对,互为备份;E与F为一对,互为备份。A为第一主控制器,B为第一备份控制器,C为第二主控制器,D为第二备份控制器,E为第三主控制器,F为第三备份控制器。控制器A失效时,其伙伴控制器B会立刻拷贝其缓存到C和F中,控制器C和控制器F会选择合适的时机,比如晚上负载小的时刻,拷贝其备份到控制器E和控制器D中。

参考图4,有八个控制器,A、B、C、D、E、F、G和H均指代控制器,其中A与B为一对,互为备份;C与D为一对,互为备份;E与F为一对,互为备份;G与H为一对,互为备份。当控制器A失效时,控制器H会立刻拷贝自己的缓存到最近的两个控制器中,即缓存到控制器G和控制器B中,控制器G和控制器B会在适当的时机,例如负载较小的时候,将备份的缓存拷贝到其伙伴控制器C和F中。

综上所述,本发明所提供的一种多控制器缓存备份方法,应用于多控制器存储系统,当第一主控制器发生故障时,第一备份控制器接管所述第一主控制器的读写业务;所述第一备份控制器拷贝所述第一主控制器的缓存内容到第二主控制器。可见,当一个控制器即主控制器发生故障时,其伙伴控制器即备份控制器会接管它的读写业务,同时会备份其缓存到其他可用控制器中,该方法相对于现有的直接备份技术调整了缓存备份方式,保证控制器失效情况下,伙伴控制器会及时备份其缓存内容到相邻控制器中,保证其可靠性,同时不产生较大的性能开销,减少由于缓存备份带来的性能损失和时间开销,提高多控制器间缓存效率,提高存储系统可靠性,进而降低存储系统中备份开销同时保证性能。

以上对本发明所提供的一种多控制器缓存备份方法进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1