一种双控磁盘阵列的配置同步方法与流程

文档序号:11286059阅读:1300来源:国知局
一种双控磁盘阵列的配置同步方法与流程

本发明涉及计算机信息存储技术领域,特别是涉及一种双控磁盘阵列的配置同步方法。



背景技术:

随着信息技术和网络技术的迅猛发展,互联网上的信息总量以爆炸式的增长,同时信息的重要性和价值也不断地增长,信息技术行业也逐步进入了以信息存储为核心的时代。在云存储技术快速发展的背后,是对海量信息存储系统提出的更高要求和挑战:存储容量更大、存取速度更快、可靠性更强、稳定性更优等。现代存储系统应当具备高性能、高可用性、高可靠性、易扩展性、易使用性和易维护性等特征。磁盘阵列控制器作为磁盘阵列的核心部件,它的性能高低已经成为影响磁盘阵列系统整体性能的关键因素,与之相应的磁盘阵列存储系统的单点故障开始逐渐向控制器端转移,通过控制器的冗余机制,保证了在控制器端出现单点故障的情况下,系统不会瘫痪,仍能对外提供不间断服务。传统双控磁盘阵列中控制器组内部控制器配置信息的同步需要依靠共享存储介质,在不使用共享存储介质的情况下无法保证控制器组内部控制器配置信息的一致性。因此,在不使用共享存储介质的前提下,能够实现控制器间配置信息的可用性和一致性,需要一种新的设计方法。



技术实现要素:

本发明提出一种双控磁盘阵列的配置同步方法,以解决双控磁盘阵列的控制器组内部的两个控制器中配置信息不一致的问题。

本发明一种双控磁盘阵列的配置同步方法,其中,将双控磁盘阵列的每个磁盘阵列的控制器设置一仲裁节点以及一数据节点,双控磁盘阵列的两仲裁节点以及两数据节点划为一同步组;数据节点用于同步组中配置信息的同步以及同步组的选主;而仲裁节点用于同步组的选主;数据节点作为同步组中主节点的备选节点;对两个数据节点作为候选节点向同步组中发送请求作为主节点的投票,发送之后,会接收来自同步组的各节点的投票,确定主节点;选出主节点后,同步组可以进行配置信息的读写,配置信息通过同步组进行控制器中的数据节点配置信息同步;在同步组中,只有作为主节点的数据节点,接收双控磁盘阵列中配置信息的更新;主节点完成配置信息更新后,将更新同步到作为备节点的数据节点。

根据本发明的双控磁盘阵列的配置同步方法的一实施例,其中,同步组中的节点之间通过心跳检测节点是否宕机。

根据本发明的双控磁盘阵列的配置同步方法的一实施例,其中,同步组中各节点每隔2秒发送一次心跳,如果某个节点在10秒后还没有将心跳回应返回给发送节点,则该节点被判定为宕机。

根据本发明的双控磁盘阵列的配置同步方法的一实施例,其中,在节点之间发送的心跳中,包含对当前节点存放配置信息新旧程度的检测,如果同步组中备节点配置信息落后于主节点的配置信息,则主节点将与备节点同步配置信息。

根据本发明的双控磁盘阵列的配置同步方法的一实施例,其中,当一控制器宕机时,另外一个控制器上的数据节点成为同步组的主节点,接收双控磁盘阵列中配置信息的更新;当宕机控制器恢复使用或更换一个新控制器时,进行同步组的同步操作,将宕机控制器或新控制器中的配置信息更新到最新。

根据本发明的双控磁盘阵列的配置同步方法的一实施例,其中,双控磁盘阵列包括一个控制器组,控制器组包括两个控制器,两个控制器通过心跳线互连;两个控制器并行工作且互为备份冗余,当控制器组中一个控制器出现故障,另外一个控制器接管。

本发明的双控磁盘阵列的配置同步方法建立一个四个节点的同步组。控制器组中的两个控制器,每个控制器中运行两个节点。当控制器组初始运行时,四个节点选举出一个主节点,提供配置信息的读写;同步组中四个节点通过心跳检测各节点的状态;当同步组通过心跳检测出主节点宕机时,同步组使用选举策略重新选举出新的主节点,提供配置信息的读写。该方法保证控制器组中,在至少有一个控制器正常运行的情况下,仍能够提供配置信息的读写。

附图说明

图1为本发明双控磁盘阵列的配置同步方法硬件架构图;

图2为本发明双控磁盘阵列的配置同步方法状态图;

图3是本发明同步组节点示意图;

图4是本发明同步组中配置信息读写示意图;

图5是本发明同步组中各节点心跳检测示意图;

图6是本发明同步组中节点宕机处理流程示意图

其中,附图标记:

1双控磁盘阵列;2控制器组;

3控制器;4心跳线;

31控制器内存;32控制器磁盘;

33同步组;34数据节点;

35仲裁节点;36主节点;

37备节点。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

图1所示为本发明的一种双控磁盘阵列的配置同步系统的模块图,本发明一种双控磁盘阵列的配置同步系统包括双控磁盘阵列1,双控磁盘阵列1包括一个控制器组2,如图1所示:控制器组2包括两个控制器3,两个控制器3通过心跳线4互连;其中,两个控制器3并行工作且互为备份冗余,当控制器组中一个控制器3出现故障,另外一个控制器3接管。

如图1所示,控制器组2中,每个控制器3都会存储双控磁盘阵列的配置信息。在控制器3正常运行时,配置信息会加载到控制器3的内存31中;当控制器关机后,配置信息会被本地化到磁盘32中;控制器3间配置信息通过心跳线4同步。

图2为本发明双控磁盘阵列的配置同步方法状态图,如图1以及图2所示,在分布式一致性算法中,实现各节点的一致性至少需要一个三节点的集群,实现两个节点的集群需要附加机制。本发明建立一个四个节点的同步组。按是否存放配置信息区分,同步组中分为两种节点类型:数据节点,在数据节点中,针对不同的功能,又分为两种节点类型:主节点和备节点,主节点负责配置信息的读写;备节点作为热备节点,和主节点保持一致,不提供读写操作。仲裁节点,不负责任何读写,只作为一个仲裁者,负责同步组中不存在主节点时所有存活节点的选举操作。

图3是本发明同步组节点示意图,如图1、图2以及图3所示,控制器组2中的两个控制器3,每个控制器3中运行两个节点(节点的定义是什么),如图3所示。其中,有两个数据节点和两个仲裁节点,每个控制器3各部署一个数据节点和仲裁节点。数据节点34和仲裁节点35的区别在于:数据节点34既负责同步组33中配置信息的同步,又参与同步组33的选主阶段;而仲裁节点35只参与同步组33的选主阶段,并不实际同步任何配置信息,此外仲裁节点35无法作为同步组33中主节点的备选节点,主节点只能从两个数据节点34中选出。每个控制器都部署数据节点34,保证任意一个控制器3宕机的情况下,同步组33中仍能保证已同步的配置信息可用性和一致性。

如图1、图2以及图3所示,当一套新的双控磁盘阵列使用时,控制器组2处于初始状态,需要进行参数配置,发起选举,选出主节点。在选举过程中,节点自检,检测出自身并未配置成仲裁节点,才能成为主节点的候选节点。候选节点向同步组中发送“选举我为主节点”的投票,发送之后,会接收来自同步组所有存活节点的投票。若得票数小于一半,(如何判断的)不将自身变为主节点;若大于等于一半,设置自身为主节点。

图4是本发明同步组中配置信息读写示意图,如图1至图4所示,当同步组选举完成,选出主节点后,同步组可以进行配置信息的读写。控制器组2中配置信息通过同步组33实现控制器3中数据节点34配置信息同步。在同步组33中,只有作为主节点36的数据节点34,接收双控磁盘阵列中配置信息的更新;主节点36完成配置信息更新后,将更新同步到作为备节点37的数据节点。

图5是本发明同步组中各节点心跳检测示意图,如图1至图5所示,同步组中节点之间通过心跳检测节点是否宕机。控制器组2通过心跳线4检测同步组33中数据节点34和仲裁节点35的心跳状态:同步组33中各节点每隔2秒发送一次心跳,如果某个节点在10秒后还没有将心跳回应返回给发送节点,则该节点被判定为宕机。在节点之间发送的心跳中,包含对当前节点存放配置信息新旧程度的检测。如果同步组33中备节点37配置信息落后于主节点36的配置信息,则主节点36将与备节点37同步配置信息。

如图6所示为宕机的处理流程图,如图1至图6所示,当控制器组2中出现某一控制器3宕机时,另外一个控制器3上的数据节点34成为同步组33的主节点36,接收双控磁盘阵列中配置信息的更新,此时因为没有备节点37,所以不需要执行同步操作;当宕机控制器3恢复使用或更换一个新控制器3时,需要进行同步组33的同步操作,将宕机控制器3或新控制器3中的配置信息更新到最新。仲裁节点的宕机不影响同步组配置信息的同步。。

本发明的双控磁盘阵列的配置同步方法建立一个四个节点的同步组。控制器组中的两个控制器,每个控制器中运行两个节点。当控制器组初始运行时,四个节点选举出一个主节点,提供配置信息的读写;同步组中四个节点通过心跳检测各节点的状态;当同步组通过心跳检测出主节点宕机时,同步组使用选举策略重新选举出新的主节点,提供配置信息的读写。该方法保证控制器组中,在至少有一个控制器正常运行的情况下,仍能够提供配置信息的读写。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

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