一种多控制器间的存储池元数据处理方法和装置制造方法
【专利摘要】本发明提供一种多控制器间的存储池元数据处理方法和装置,属于数据存储【技术领域】,高端磁盘阵列冗余控制器间接管过程中,多个存储池和多个逻辑卷在接管控制器中重新启动比较耗时。在冗余控制器间,进行存储池和逻辑卷的预同步,提前构建存储池逻辑卷的映射关系和数据结构,在控制器接管过程中,加速存储池和逻辑卷的启动,可以存储阵列的存储性能,提高存储资源的响应时间。
【专利说明】 一种多控制器间的存储池元数据处理方法和装置
【技术领域】
[0001]本发明涉及数据存储技术,尤其涉及到高端磁盘阵列中多控制器之间接管回切的元数据处理方法,具体说是一种多控制器间的存储池元数据处理方法和装置。
【背景技术】
[0002]高端磁盘阵列提供存储数据的高可用服务,常采用多个控制器冗余设计。控制器之间通过高速互联网络相互连接,当系统启动时,控制器之间通过互联网络建立连接,相互发送心跳、缓存镜像。当一个控制器故障时,相互连接的冗余控制器通过心跳检测到对方故障,接管故障控制器的存储资源。
[0003]对于高端磁盘阵列,存储池系统每个存储池支持多大4096— 32768个以上的逻辑卷,当发生控制器故障,冗余控制器接管时,存储池中上千或者上万个逻辑卷在接管控制器上重新启动,从存储池硬盘中读出存储池、逻辑卷的元数据到内存中,再到内存中构建存储池和逻辑卷对象,这样处理可以完整启动起接管过来的存储池和逻辑卷,但是特别耗时、影响性能。
【发明内容】
[0004]本发明实施提出一种高端磁盘阵列多控制器间的存储池元数据处理方法,可有效的缩减在多控制器间接管过程中,上万个逻辑卷重新启动时间,提高存储池系统响应时间。本发明实施例还提供了相应的装置。
[0005]本发明第一方面提供一种多控制器间的存储池元数据处理方法,包括:
1、相互冗余的控制器之间通过高速互联网络进行存储池、逻辑卷的元数据同步;
2、同步条件为元数据更新时同步和定时同步,满一即可同步;
3、冗余控制器利用同步过来的元数据和服务,提前构建好存储池、逻辑卷以及映射表等数据结构;
4、存储池元数据记录更新版本号,冗余控制器同步的元数据中记录该值,当进行接管时,查询接管过来存储资源(物理卷)上该版本号,如果一致,再着已预构建的存储池和逻辑卷数据结构有效,则不需要重新加载存储池和逻辑卷元数据,只需要加载物理卷,即可完成存储池启动;
5、启用多线程方式加速存储池启动。
[0006]多控制器存储系统中,控制器间通过高速互联网络infiniband网络互联,进行存储池和逻辑卷的元数据同步备份操作。
[0007]元数据同步的条件为是SI控制器中存储池或者逻辑卷的元数据有更新,S2定时更新;如果一个条件满足,即可执行元数据同步操作。
[0008]控制器使用同步过来的存储池和逻辑卷的元数据,预构建存储池、逻辑卷的映射关系和数据结构。
[0009]元数据中包含元数据更新版本号。
[0010]在控制器接管过程后,冗余控制器根据同步过来的元数据更新版本号和物理卷中的元数据更新版本号比较,如果相同,就使用预构建的存储池、逻辑卷数据结构启动接管的存储池逻辑卷;如果不相同,就需要重新加载存储池和逻辑卷元数据,只需要加载物理卷,即可完成存储池启动。
[0011]在重新启动多个存储池、逻辑卷的时候,多线程并行执行。
[0012]本发明第二方面提供一种多控制器间的存储池元数据处理装置,包括:
同步单元,用于将更新的存储池、逻辑卷元数据同步到冗余的对端控制器中。
[0013]扫描单元,用于实时扫描存储池、逻辑卷元数据是否更新,如果更新就启动同步单元,同步元数据。
[0014]构建单元,在冗余控制器系统中,使用同步不单元通过过来的元数据,提前构建存储池、逻辑卷和逻辑卷与物理卷的映射关系。
[0015]启动单元,采用多线程并行加速存储池启动。在控制器接管时,比较同步过来的元数据版本号和接管过来的存储资源上的存储池元数据版本号是否一致,如果一致就使用提前重构好的存储池、逻辑卷快速启动。如果不一致,就需要从物理卷中加载元数据,重新启动存储池和逻辑卷。
【专利附图】
【附图说明】
[0016]图1是控制器间元数据预同步策略示意图。
【具体实施方式】
[0017]下面对本发明的内容进行更加详细的阐述:
本发明实施例提供一种高端磁盘阵列多控制器间的存储池元数据处理方法,可有效的加速多控制器间接管资源的处理,提高磁盘阵列的处理速度。
[0018]在冗余控制器间,进行存储池和逻辑卷的预同步,提前构建存储池逻辑卷的映射关系和数据结构,在控制器接管过程中,加速存储池和逻辑卷的启动。
[0019]相互冗余的控制器之间通过高速互联网络进行存储池、逻辑卷的元数据同步。
[0020]同步条件为元数据更新时同步和定时同步,满一即可同步。
[0021]冗余控制器利用同步过来的元数据和服务,提前构建好存储池、逻辑卷以及映射表等数据结构。
[0022]存储池元数据记录更新版本号,冗余控制器同步的元数据中记录该值,当进行接管时,查询接管过来存储资源(物理卷)上该版本号,如果一致,再着已预构建的存储池和逻辑卷数据结构有效,则不需要重新加载存储池和逻辑卷元数据,只需要加载物理卷,即可完成存储池启动。
[0023]启用多线程方式加速存储池启动下面参考图1详细说明。
[0024]在高端磁盘阵列中,多控制器间通过高速互联网络infiniband网络连接,形成控制器相互冗余。在控制器系统中,设计存储池元数据远程同步模块和存储池元数据更新扫描模块,当存储池、逻辑卷创建或者其元数据有更新了,将其元数据远程同步到相互冗余的控制器中,并在冗余的控制器中启动存储池、逻辑卷构建模块,提前构建存储池和逻辑卷的元数据数据结构等。磁盘阵列控制器间有接管流程后,存储池和逻辑卷启动模块,采用多线程并行启动存储池逻辑卷,在启动前先要比较远程同步过来的元数据更新版本号和接管过来的物理卷中的更新版本号是否一样,如果一样,使用构建模块重构好的存储池、逻辑卷快速启动。如果不一样,就需要从物理卷中加载元数据,重新启动存储池和逻辑卷。
【权利要求】
1.一种多控制器间的存储池元数据处理方法,其特征在于,包括: 相互冗余的控制器之间通过高速互联网络进行存储池、逻辑卷的元数据同步; 同步条件为元数据更新时同步和定时同步,满一即可同步; 冗余控制器利用同步过来的元数据和服务,提前构建好存储池、逻辑卷以及映射表等数据结构; 存储池元数据记录更新版本号,冗余控制器同步的元数据中记录该值,当进行接管时,查询接管过来存储资源上该版本号,如果一致,再着已预构建的存储池和逻辑卷数据结构有效,则不需要重新加载存储池和逻辑卷元数据,只需要加载物理卷,即可完成存储池启动; 启用多线程方式加速存储池启动。
2.根据权利I所述的方法,其特征在于, 多控制器存储系统中,控制器间通过高速互联网络infiniband网络互联,进行存储池和逻辑卷的元数据同步备份操作。
3.根据权利I所述的方法,其特征在于, 元数据同步的条件为是SI控制器中存储池或者逻辑卷的元数据有更新,S2定时更新;如果一个条件满足,即可执行元数据同步操作。
4.根据权利I所述的方法,其特征在于, 控制器使用同步过来的存储池和逻辑卷的元数据,预构建存储池、逻辑卷的映射关系和数据结构。
5.根据权利I所述的方法,其特征在于,还包括: 元数据中包含元数据更新版本号。
6.根据权利I所述的方法,其特征在于, 在控制器接管过程后,冗余控制器根据同步过来的元数据更新版本号和物理卷中的元数据更新版本号比较,如果相同,就使用预构建的存储池、逻辑卷数据结构启动接管的存储池逻辑卷;如果不相同,就需要重新加载存储池和逻辑卷元数据,只需要加载物理卷,即可完成存储池启动。
7.根据权利I所述的方法,其特征在于, 在重新启动多个存储池、逻辑卷的时候,多线程并行执行。
8.一种多控制器间的存储池元数据处理装置,其特征在于,包括: 同步单元,用于将更新的存储池、逻辑卷元数据同步到冗余的对端控制器中; 扫描单元,用于实时扫描存储池、逻辑卷元数据是否更新,如果更新就启动同步单元,同步元数据; 构建单元,在冗余控制器系统中,使用同步不单元通过过来的元数据,提前构建存储池、逻辑卷和逻辑卷与物理卷的映射关系; 启动单元,采用多线程并行加速存储池启动;在控制器接管时,比较同步过来的元数据版本号和接管过来的存储资源上的存储池元数据版本号是否一致,如果一致就使用提前重构好的存储池、逻辑卷快速启动; 如果不一致,就需要从物理卷中加载元数据,重新启动存储池和逻辑卷。
【文档编号】G06F11/14GK104407939SQ201410678537
【公开日】2015年3月11日 申请日期:2014年11月24日 优先权日:2014年11月24日
【发明者】周耀辉, 赵静 申请人:浪潮电子信息产业股份有限公司