一种双机集群的节点热替换方法

文档序号:9865364阅读:373来源:国知局
一种双机集群的节点热替换方法
【技术领域】
[0001]本发明涉及一种节点热替换方法,该方法保证设备在系统盘出现故障的情况下依旧可以恢复到故障之前状态,适用于双机集群存储系统,属于集群海量数据存储技术领域。
【背景技术】
[0002]随着大数据的发展,大规模存储阵列,因其将多块单盘组织起来发挥磁盘的高容量、高性能、高可靠性的特点而越来越多地被用来存储和管理企业、数据中心、计算中心的庞大数据。通常,一台高可用阵列除了存储单元外会随带一系列满足客户应用的服务,服务的各种配置信息、磁盘阵列自身的配置信息、网络管理信息、系统运行配置等,组成了存储阵列非常重要的配置信息子系统,如何有效地管理这些配置信息,关系到存储系统是否能对外提供灵活可配置的应用服务、管理接口、以及存储系统服务的高可用,阵列的运行可靠性等一系列问题。
[0003]在现有技术中,管理存储阵列配置信息的方法通常只适用于单台存储设备。随着数据业务量的日剧加大,90%的数据在最近几年爆发性的产生。单台的存储设备无法满足外部业务对存储设备抗灾难性的高要求时,双机集群被更多的运用到用户现场,更多的业务范围中。双机的协调工作完全依赖于配置信息,当任何一个节点失效,只要将该节点设备以其它好的设备替换并在其上恢复出原失效节点的配置即可立即替换掉原失效节点,接管原失效节点的所有工作,从而继续以双机方式对外提供服务。而传统的配置文件保存方法只能保存单节点的信息,当双机集群采用该策略时,由于信息保存在同一块共享磁盘存储区域上,所以2个节点在保存配置文件时会互相覆盖对方的信息,无法完全的保存2个节点的配置。当某一节点出现故障(系统盘坏掉等),导致系统配置信息丢失时,可能就无法恢复该故障节点的配置信息,使得原来由2个节点负担的业务全部转移到另一节点,而该故障节点又无法被及时替换(若想替换,只能关闭双机集群,停止对外提供存储服务),使得双机集群的可靠性急剧降低,不能满足用户对双机集群高可靠性、高可用性的要求。因此,目前迫切需要一个针对双机集群中节点的热替换解决方案。
[0004]下面对RAID中常用的技术术语进行解释:
[0005]节点:传统概念中的一个控制器,为本文中提到的一个节点。
[0006]双机:单独一个节点运行时为单机,两个节点协调工作为双机。

【发明内容】

[0007]本发明的目的是为解决如何实现双机节点热替换的问题,提供一种双机集群节点热替换方法,利用该方法可以在不中断双机集群业务的情况下,替换其中的一个节点。
[0008]本发明的思想是通过采用二段式的存储配置保存方式,第一段保存当前存储模式以及各节点配置信息的保存地址,第二段保存节点自身的配置信息文件以及概况校验信息,使得各节点的配置信息单独存储,避免相互覆盖,并在某节点失效的情况下,通过读取其配置信息恢复节点以实现节点热替换。
[0009]本发明的目的是通过以下技术方案实现的:
[0010]—种双机集群节点热替换方法,包括配置信息存储方法以及节点恢复方法;其中配置信息存储方法包括以下内容:
[0011]改良RAID创建存储池时的策略,在不影响磁盘正常I/O的情况下,预留出一部分用于存储配置信息的空间;
[0012]当节点的配置发生改变时,将节点的配置信息压缩成配置包,并根据该配置包以及节点工作模式获取相关配置信息后存储于配置信息存储空间;
[0013]节点恢复方法包括以下内容:
[0014]从上述配置信息存储空间获取待替换节点的配置信息,将配置信息解压缩后拷贝到替换的节点即可恢复待替换节点的工作。
[0015]作为优选,所述配置信息采用head+组织模式,即由头区域和数据区域两部分组成,头区域包括存储模式model以及配置信息存储位置索引posit1n;数据区域包括节点的配置数据,配置数据由元数据me ta和配置包data组成,meta中包括data的大小si ze、完整性校验值pr int以及存储计数sequence,具体说明如下:
[0016]model:用于标识节点的工作模式,不同的工作模式带来存储模式的不同,其值为单机模式和双机模式之一;
[0017]posit1n:用于标识节点配置数据的保存地址,采用节点名称=配置数据起始位置的表示方式;当mode I为单机模式时,只有I个posit 1n,当mode I为双机模式时,有2个posit1n,不同的posit1n之间使用预设的分隔符分隔;
[0018]size:用于标识data的大小;
[0019]print:用于对data的完整性进行校验,其值根据data利用校验算法获取;
[0020]sequence:用于标识节点配置信息更改次数。
[0021]作为优选,为提高配置信息的可用性,所述存储配置采用轮询方式将配置信息存储于存储池的所有磁盘中,由此在进行所述节点恢复时获取配置信息过程如下:
[0022]首先设置配置计数初值为0,然后进行以下步骤:
[0023]步骤一:遍历所有磁盘获取当前磁盘的配置头数据,直到没有磁盘可供读取,输出data;
[0024]步骤二:根据待恢复节点名称得到配置数据的存储位置;
[°°25] 步骤三:根据存储位置读取meta数据,并解析出size、print以及sequence;
[0026]步骤四:如果sequence大于配置计数,根据size、meta大小以及存储位置读取data;否则,转步骤一读取下一个磁盘的配置头数据;
[0027]步骤五:采用与存储时一致的校验算法计算data的校验值;
[0028]步骤六:如果校验值与print相同,保存当前data,转步骤一读取下一个磁盘的配置头数据;否则,转步骤一读取下一个磁盘的配置头数据。
[0029]作为优选,所述当节点的配置发生改变时,将节点的配置信息压缩成配置包,并根据该配置包以及节点工作模式获取相关配置信息后存储于配置信息存储空间,为了提高配置改变的效率,采用异步工作模式,即改变配置以及存储配置分开进行的方式,二者间采用事件驱动。
[0030]有益效果
[0031]本发明实现了基于存储阵列的配置灵活管理机制,该机制保证了配置数据的高一致性、可靠性和有效性;
[0032]本发明的配置信息包括但不限于各种系统所使用到的应用、服务配置、系统本身的网络、硬盘配置等。
[0033]本发明存储介质并不局限于普通硬盘,还可包括固态硬盘等其他可存储数据的设备。
[0034]本发明对于存储设备为单机架构和双机架构没有限制,能同时适应这两种情况,更加灵活,更能适应多变的应用场景。
【附图说明】
[0035]图1本发明实施例双机存储模式配置信息组织方式示意图;
[0036]图2本发明实施例单机存储模式配置信息组织方式示意图。
【具体实施方式】
[0037]下面结合具体实施例对本发明进行详细说明。
[0038]为解决本发明所述的节点热替换问题,首先要解决双机集群环境下配置信息的存储问题,为解决此问题,考虑到单机的工作模式,本发明提出一种配置信息的head+组织模式,即配置信息由头区域和数据区域两部分组成,如图1和图2所示,头区域包括存储模式model以及配置信息存储位置索引posit1n;数据区域包括节点的配置数据,配置数据由元数据meta和配置包data组成,meta中包括data的大小size、完整性校验值print以及存储计数sequence,具体说明如下:
[0039]model:用于标识节点的工作模式,不同的工作模式带来存储模式的不同,其值为单机模式和双机模式之一;
[0040]posit1n:用于标识节点配置数据的保存地址,采用节点名称=配置数据起始位置的表示方式;当mode I为单机模式时,只有I个posit 1n,当mode I为双机模式时,有2个posit1n,不同的posit1n之间使用预设的分隔符分隔;
[0041 ] size:用于标识data的大小;
[0042]print:用于对data的完整性进行校验,其值根据data利用校验算法获取,本实施例采用md5算法;
[0043]sequence:用于标识节点配置信息更改次数。
[0044]配置信息的存储方式:
[0045]步骤一:改良RAID创建存储池时的策略,在不影
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1