CN101488077B - 冗余磁盘控制服务器系统 - Google Patents

冗余磁盘控制服务器系统 Download PDF

Info

Publication number
CN101488077B
CN101488077B CN2009100141916A CN200910014191A CN101488077B CN 101488077 B CN101488077 B CN 101488077B CN 2009100141916 A CN2009100141916 A CN 2009100141916A CN 200910014191 A CN200910014191 A CN 200910014191A CN 101488077 B CN101488077 B CN 101488077B
Authority
CN
China
Prior art keywords
hba
card
hba card
active
disk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2009100141916A
Other languages
English (en)
Other versions
CN101488077A (zh
Inventor
张强
李瑞东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Langchao Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Langchao Electronic Information Industry Co Ltd filed Critical Langchao Electronic Information Industry Co Ltd
Priority to CN2009100141916A priority Critical patent/CN101488077B/zh
Publication of CN101488077A publication Critical patent/CN101488077A/zh
Application granted granted Critical
Publication of CN101488077B publication Critical patent/CN101488077B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种冗余磁盘控制服务器系统,是在传统服务器应用模式的基础上,增加一块HBA卡,即在服务器主板上插两块相同的HBA卡,每块HBA卡都被认为是相对独立的,每一块HBA卡均能与其它所有部件组成一个完整的系统,两块HBA卡构成了两个互为冗余,互为备份的系统,本发明的系统与现有技术相比能够很好适应互联网技术的不断发展和网络带宽不断增加,减少服务器的故障几率,还可以实现两个磁盘控制器的负载均衡,以达到提高数据带宽的目的。

Description

冗余磁盘控制服务器系统
技术领域
本发明涉及计算机数据存取领域,具体涉及一种冗余磁盘控制服务器系统。
技术背景
在应用服务器的过程中,说到数据存取的保护,人们首先想到的是RAID技术,通过HBA卡或主板集成的RAID控制器创建磁盘阵列,在服务器应用不间断的前提下,保证在至少一块硬盘出现故障时,可以对硬盘进行在线的替换,避免数据丢失及应用停止。然而,对于I/O子系统来说,仅仅是磁盘方面没有单点故障还远远不够的,磁盘控制器(HBA卡)部分作为一个系统单点,没有任何冗余措施。当经过长时间、大数据量的读写应用后,出现故障是在所难免的。尤其随着互联网技术的不断发展,网络带宽不断增加,个人空间、视频上传等应用变得越来越普遍的时候,每台服务器负责数据存取的磁盘控制器所要承受的负载也在不断增加,出现故障的几率也就相应的增大了。这时如何实现磁盘控制器(HBA)的冗余就显得很有现实意义了。另一方面,参照以太网络的冗余和聚合,除了实现磁盘控制器的冗余功能,理论上还可以实现两个磁盘控制器的负载均衡,以达到提高数据带宽的目的。
发明内容
本发明的目的是提供一种冗余磁盘控制服务器系统。
本发明的目的是按以下方式实现的,实现步骤如下:
在传统服务器应用模式的基础上,增加一块HBA卡,即在服务器主板上插两块相同的HBA卡,每块HBA卡都被认为是相对独立的,每一块HBA卡均能与其它所有部件组成一个完整的系统,两块HBA卡构成了两个互为冗余,互为备份的系统,具体步骤如下:
系统硬件的设置
1)选用双端口的SAS硬盘或使用SATA硬盘通过接口转换成SAS硬盘,转换用的接口芯片或适配器选用LSI SS1300芯片,通过该芯片将一个SATA接口模拟成SAS接口,同时被两个HBA卡识别到;
2)作为连接HBA卡和硬盘的桥梁,针对HBA卡,背板必须提供两组接口,要支持更多的硬盘,背板上要提供磁盘扩展芯片SAS Expander,当系统内有两个HBA卡时,背板上SAS Expander芯片的数量也必须是两个,无论是否通过Expander进行扩展,两组SAS接口之间必须提供连接链路,以使两个HBA卡通过该链路相互通信,这对于两个HBA卡互不冲突的协调工作是必须的;
系统软件的设置
采用高效稳定的基于2.6内核的Linux作为操作系统,实现冗余功能的大多数功能模块都通过开源实现,并在开源的基础上进行修改和完善,软件系统在各个层面设计加入了高可用组件,在管理层面,高可用组件提供了控制管理同步功能;在应用层面,提供了配置同步模块,实现对控制器配置的协调一致,心跳模块实现控制器的无缝切换;在内核层,提供缓存镜像模块,保证应用数据的一致性、完整性;
1)控制管理同步:用户对任意HBA卡的操作,实现对整个磁盘系统的控制,从管理层面对两控制器进行协调控制;
2)配置同步模块:在该服务器系统中,每一个控制器的配置和状态信息变化都会即时同步到另一个控制器,避免单一控制器失效丢失配置及运行信息,为高可用系统的运行提供保障;
3)配置传输采用CRC校验或者MD5校验方式,确保配置信息的完整性和正确性;
4)心跳模块:支持Active-Take over、Active-Active两种模式,当其中的一块RAID卡失效的时候,系统无缝切换到另一个HBA卡,并实时接管失效HBA卡运行的服务,避免单一HBA卡失效所引起的存储服务故障;其中:
Active-Take over模式:正常情况下,只有一片HBA卡对外提供服务,另一片HBA卡处于热备状态,当Active的RAID卡失效的时候,热备HBA卡自动接管,并提供I/O服务;
Active-Active模式:两块HBA卡同时提供I/O服务,互为热备,提高系统带宽,并具有路径冗余功能;
5)写缓存镜像模块:提供对HBA卡缓存内数据镜像的功能,实时备份写数据到另一片HBA卡的缓存中,保证写数据的完整性,在HBA卡接替前者所做的工作时,会造成由于前者故障导致缓存中没有写入磁盘的数据丢失,缓存镜像就是解决双HBA卡服务器系统的两片HBA卡之间切换时的缓存数据丢失的问题;
系统运行控制
服务器启动进入操作系统后,根据关机前的状态,进入一种工作模式:Active-Active or Active-Take over,在操作系统下,通过一个HBA卡对全部磁盘进行控制管理;与此同时,生成的磁盘配置信息通过SAS链路被同步到另一块磁盘控制器HBA卡中;另一块控制器HBA卡会通过心跳监控处于Active状态的磁盘控制器,并对它是否发生故障进行判别;两片HBA卡还要时刻保持缓存内数据完全一致,以保证在一片HBA卡发生故障时,缓存数据不丢失并被写入磁盘,当某一片ActiveHBA卡发生故障时,另一片HBA卡首先作出判别,然后会接管系统硬盘,并将缓存内的数据刷入磁盘,最后全面接管工作,对外提供服务。
本发明的有益效果是:适应互联网技术的不断发展和网络带宽不断增加,减少服务器的故障几率,还可以实现两个磁盘控制器的负载均衡,以达到提高数据带宽的目的。
附图说明
附图1是冗余磁盘控制服务器系统硬件组成及架构示意图;
附图2是冗余磁盘控制服务器系统的工作原理图。
具体实施方式
参照附图对本发明的冗余磁盘控制服务器系统作以下详细的说明。
一、冗余磁盘控制服务器系统硬件组成及架构
与一般的服务器相比,这种冗余I/O架构的服务器的差别主要就是增加一组I/O子系统,换句话说,传统的服务器系统,一般都通过一块HBA卡(RAID卡)控制所有磁盘,通过该HBA卡可以看到所有磁盘,可以对磁盘配置RAID,还可以对RAID的属性进行修改,最终控制所有磁盘的读写操作。一般情况下,HBA卡与硬盘之间通过背板相连。该发明就是在传统服务器应用模式的基础上,增加一块HBA卡(RAID卡),这样就是在服务器主板上插两块相同的HBA卡。对于整个系统来说,每块HBA都被认为是相对独立的,也就是说每一块HBA卡与其它所有部件都可以组成一个完整的系统,两块HBA卡构成了两个互为冗余,互为备份的系统。
为了使上述想法成立,还需要具备以下条件:首先必须选用双端口的硬盘。我们知道,SATA硬盘是单端口的,因此SATA硬盘只能够被一个RAID卡识别到,要想使一块硬盘同时被两个RAID卡都识别到,必须选用具有双端口的硬盘,如SAS硬盘。其实SATA硬盘通过接口转换也可以模拟成SAS硬盘,目前业界也有类似的接口芯片或适配器可用,如LSI SS1300芯片,该芯片就可以将一个SATA接口模拟成SAS接口,同时被两个RAID卡识别到。
其次,作为连接RAID卡和硬盘的桥梁,针对RAID卡,背板必须提供两组接口。如果想要支持更多的硬盘,背板上可能还要提供磁盘扩展芯片(SAS Expander),同样的,当系统内有两个HBA卡时,背板上Expander芯片的数量也必须是两个。无论是否通过Expander进行扩展,两组SAS接口之间还都必须提供连接链路,以使两个HBA卡可以通过该链路相互通信,这对于两个HBA卡可以互不冲突的协调工作是必须的。
二、冗余磁盘控制服务器系统软件实现
上面陈述了这种冗余磁盘控制服务器的硬件架构组成。然而,要想使服务器的磁盘控制系统实现可以做到冗余或者负载均衡,仅仅具备了硬件条件是不够的。必须有软件对硬件进行控制,以达到使两个HBA卡协调工作,不互相冲突的目的。
采用高效稳定的基于2.6内核的Linux作为操作系统,实现冗余功能的大多数功能模块都可以通过开源实现,并在开源的基础上进行修改和完善。
软件系统在各个层面设计加入了高可用组件。在管理层面,高可用组件提供了控制管理同步功能;在应用层面,提供了配置同步模块,实现对控制器配置的协调一致。心跳模块实现控制器的无缝切换;在内核层,提供缓存镜像模块,保证应用数据的一致性、完整性。
控制管理同步:用户对任意RAID卡的操作即可实现对整个磁盘系统的控制,从管理层面对两控制器进行协调控制。
配置同步模块:在该服务器系统中,每一个控制器的配置和状态信息变化都会即时同步到另一个控制器,避免单一控制器失效丢失配置及运行信息,为高可用系统的运行提供保障。
配置传输采用CRC校验或者MD5校验方式,确保配置信息的完整性和正确性。
心跳模块:支持Active-Take over、Active-Active两种模式,当其中的一块RAID卡失效的时候,系统无缝切换到另一个RAID卡,并实时接管失效RAID卡运行的服务,避免单一RAID卡失效所引起的存储服务故障。
■Active-Take over模式:正常情况下,只有一片RAID卡对外提供服务,另一片RAID卡处于热备状态。当Active的RAID卡失效的时候,热备RAID卡自动接管,并提供I/O服务。
■Active-Active模式:两块RAID卡同时提供I/O服务,互为热备。提高系统带宽,并具有路径冗余功能。
写缓存镜像模块:提供对RAID卡缓存内数据镜像的功能,实时备份写数据到另一片RAID卡的缓存中,保证写数据的完整性。在RAID卡接替前者所做的工作时,会造成由于前者故障导致缓存中没有写入磁盘的数据丢失。缓存镜像就是解决双RAID卡服务器系统的两片RAID卡之间切换时的缓存数据丢失的问题。
三、系统运行控制
服务器启动进入操作系统后,根据关机前的状态,进入一种工作模式:
Active-Active or Active-Take over。在操作系统下,通过一个Active控制器(RAID卡)对全部磁盘进行控制管理;与此同时,生成的磁盘配置信息通过SAS链路被同步到另一块磁盘控制器(RAID卡)中;另一块控制器(RAID卡)会通过心跳监控处于Active状态的磁盘控制器,并对它是否发生故障进行判别;两片RAID卡还要时刻保持缓存内数据完全一致,以保证在一片RAID卡发生故障时,缓存数据可以不丢失并被写入磁盘。当某一片Active RAID卡发生故障时,另一片RAID卡首先作出判别,然后会接管系统硬盘,并将缓存内的数据刷入磁盘,最后全面接管工作,对外提供服务。

Claims (1)

1.冗余磁盘控制服务器系统,其特征在于,在传统服务器应用模式的基础上,增加一块主机总线适配器,以下简称HBA卡,即在服务器主板上插两块相同的HBA卡,每块HBA卡都被认为是相对独立的,每一块HBA卡均能与其它所有部件组成一个完整的系统,两块HBA卡构成了两个互为冗余,互为备份的系统,具体步骤如下:
系统硬件的设置
1)选用双端口的SAS硬盘或使用SATA硬盘通过接口转换成SAS硬盘,转换用的接口芯片或适配器选用LSI SSl300芯片,通过该芯片将一个SATA接口模拟成SAS接口,同时被两个HBA卡识别到;
2)作为连接HBA卡和硬盘的桥梁,针对HBA卡,背板必须提供两组接口,要支持更多的硬盘,背板上要提供磁盘扩展芯片SAS Expander,系统内有两个HBA卡时,背板上SAS Expander芯片的数量也必须是两个,无论是否通过SASExpander进行扩展,两组SAS接口之间必须提供连接链路,以使两个HBA卡通过该链路相互通信,这对于两个HBA卡互不冲突的协调工作是必须的;
系统软件的设置
采用高效稳定的基于2.6内核的Linux作为操作系统,实现冗余功能的大多数功能模块通过开源实现,并在开源的基础上进行修改和完善,软件系统在各个层面设计加入了高可用组件,在管理层面,高可用组件提供了控制管理同步功能;在应用层面,提供了配置同步模块,实现对HBA卡配置的协调一致,心跳模块实现HBA卡的无缝切换;在内核层,提供缓存镜像模块,保证应用数据的一致性、完整性;
1)控制管理同步:用户对任意HBA卡的操作,实现对冗余磁盘控制服务器系统的控制,从管理层面对两HBA卡进行协调控制;
2)配置同步模块:在冗余磁盘控制服务器系统中,每一个HBA卡的配置和状态信息变化都会即时同步到另一个HBA卡,避免单一HBA卡失效丢失配置及运行信息,为高可用系统的运行提供保障;
3)配置传输采用CRC校验或者MD5校验方式,确保配置信息的完整性和正 确性;
4)心跳模块:支持Active-Take Over、Active-Active两种模式,当其中的一块HBA卡失效的时候,系统无缝切换到另一个HBA卡,并实时接管失效HBA卡运行的服务,避免单一HBA卡失效所引起的存储服务故障;其中:
Active-Take over模式:正常情况下,只有一片HBA卡对外提供服务,另一片HBA卡处于热备状态,当Active的HBA卡失效的时候,热备HBA卡自动接管,并提供I/O服务;Active-Active模式:两块HBA卡同时提供I/O服务,互为热备,提高系统带宽,并具有路径冗余功能;
5)写缓存镜像模块:提供对HBA卡缓存内数据镜像的功能,实时备份写数据到另一片HBA卡的缓存中,保证写数据的完整性,在一片HBA卡失效时,会造成因失效的HBA卡故障导致缓存中没有写入磁盘的数据丢失,缓存镜像就是解决双HBA卡服务器系统的两片HBA卡之间切换时的缓存数据丢失的问题;
系统运行控制
服务器启动进入操作系统后,根据关机前的状态,进入一种工作模式:
Active-Active或者Active-Take over,在操作系统下,通过一个HBA卡对全部磁盘进行控制管理;与此同时,生成的磁盘配置信息通过SAS链路被同步到另一块HBA卡中;另一块HBA卡会通过心跳监控处于Active状态的HBA卡,并对它是否发生故障进行判别;两片HBA卡还要时刻保持缓存内数据完全一致,以保证在一片HBA卡发生故障时,缓存数据不丢失并被写入磁盘,当某一片处于Active状态的HBA卡发生故障时,另一片HBA卡首先作出判别,然后会接管系统硬盘,并将缓存内的数据刷入磁盘,最后全面接管工作,对外提供服务。 
CN2009100141916A 2009-02-24 2009-02-24 冗余磁盘控制服务器系统 Active CN101488077B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100141916A CN101488077B (zh) 2009-02-24 2009-02-24 冗余磁盘控制服务器系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100141916A CN101488077B (zh) 2009-02-24 2009-02-24 冗余磁盘控制服务器系统

Publications (2)

Publication Number Publication Date
CN101488077A CN101488077A (zh) 2009-07-22
CN101488077B true CN101488077B (zh) 2011-08-24

Family

ID=40890988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100141916A Active CN101488077B (zh) 2009-02-24 2009-02-24 冗余磁盘控制服务器系统

Country Status (1)

Country Link
CN (1) CN101488077B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102566944A (zh) * 2011-12-31 2012-07-11 曙光信息产业股份有限公司 存储路径冗余方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834796B (zh) * 2010-05-06 2015-01-28 中兴通讯股份有限公司 一种双控制器通信系统和方法
CN102053801A (zh) * 2010-12-29 2011-05-11 成都市华为赛门铁克科技有限公司 一种磁盘热备方法及装置、存储系统
CN102629225B (zh) 2011-12-31 2014-05-07 华为技术有限公司 双控制器磁盘阵列、存储系统以及数据存储路径切换方法
CN102662803A (zh) * 2012-03-13 2012-09-12 深圳华北工控股份有限公司 一种双控双活冗余设备
CN102650903A (zh) * 2012-04-20 2012-08-29 浪潮电子信息产业股份有限公司 一种存储服务器备用电源的设计方法
CN103440177A (zh) * 2013-08-23 2013-12-11 浪潮电子信息产业股份有限公司 一种基于numa多物理层分区的存储控制冗余方法
CN104077424A (zh) * 2014-07-24 2014-10-01 北京京东尚科信息技术有限公司 一种实现硬盘在线热切换的方法及装置
CN104484244A (zh) * 2014-12-31 2015-04-01 宁波江东波莫纳电子科技有限公司 一种新型计算机硬盘数据恢复系统
CN105045691B (zh) * 2015-07-16 2018-06-22 浪潮(北京)电子信息产业有限公司 一种故障检测方法和系统
CN105260137B (zh) * 2015-09-28 2018-06-22 天津书生云科技有限公司 在sas存储系统中实现hba卡访问sata磁盘的方法及设备
CN107342894A (zh) * 2017-06-22 2017-11-10 光大环保能源(常州)有限公司 一种用于垃圾焚烧炉的通讯系统及其控制系统和实现方法
CN108646979B (zh) * 2018-03-19 2021-10-19 华为技术有限公司 输入输出io底板、io底板的配置方法及装置
CN109101199A (zh) * 2018-08-29 2018-12-28 郑州云海信息技术有限公司 一种基于冗余sas背板的双路sgpio切换方法及系统
CN109815169B (zh) * 2019-01-16 2021-02-02 浙江大华技术股份有限公司 一种存储设备及其存储链路自适应的方法
CN110362447A (zh) * 2019-06-20 2019-10-22 苏州浪潮智能科技有限公司 一种支持冗余raid的硬盘背板系统架构及raid冗余方法
CN110392267A (zh) * 2019-08-02 2019-10-29 湖南柿竹园有色金属有限责任公司 一种低成本矿山生产现场自动化集中监控方法
CN113867648B (zh) * 2021-10-14 2023-12-29 浪潮商用机器有限公司 一种服务器存储子系统及其控制方法
CN116661688B (zh) * 2023-05-23 2023-12-12 无锡众星微系统技术有限公司 一种sas存储系统的业务响应方法和装置
CN117453146B (zh) * 2023-12-22 2024-04-05 芯能量集成电路(上海)有限公司 数据读取方法、系统、eFlash控制器及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230240B1 (en) * 1998-06-23 2001-05-08 Hewlett-Packard Company Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface
CN1862478A (zh) * 2006-06-02 2006-11-15 杭州华为三康技术有限公司 一种解决磁盘冗余阵列中写空洞的方法
CN101359279A (zh) * 2008-10-06 2009-02-04 浪潮电子信息产业股份有限公司 一种具有内部路径冗余功能的iscsi磁盘阵列控制器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230240B1 (en) * 1998-06-23 2001-05-08 Hewlett-Packard Company Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface
CN1862478A (zh) * 2006-06-02 2006-11-15 杭州华为三康技术有限公司 一种解决磁盘冗余阵列中写空洞的方法
CN101359279A (zh) * 2008-10-06 2009-02-04 浪潮电子信息产业股份有限公司 一种具有内部路径冗余功能的iscsi磁盘阵列控制器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102566944A (zh) * 2011-12-31 2012-07-11 曙光信息产业股份有限公司 存储路径冗余方法
CN102566944B (zh) * 2011-12-31 2015-09-02 曙光信息产业股份有限公司 存储路径冗余方法

Also Published As

Publication number Publication date
CN101488077A (zh) 2009-07-22

Similar Documents

Publication Publication Date Title
CN101488077B (zh) 冗余磁盘控制服务器系统
US8020035B2 (en) Expander circuit for a solid state persistent storage device that provides a plurality of interfaces to corresponding storage controllers
TWI414992B (zh) 遠端非同步資料卷複製的方法及其裝置
JP2007122477A (ja) Raidシステム、raidコントローラ及びそのリビルド/コピーバック処理方法
US20090313428A1 (en) Optimising Remote Mirroring Resynchronisation
CN102710752B (zh) 灾备存储系统
JPH0683717A (ja) 大型耐故障不揮発性複数ポート・メモリー
CN104331254A (zh) 一种基于双活逻辑卷的存储双活系统设计方法
US10649892B2 (en) Operating a raw mirror within a RAID system
US9223658B2 (en) Managing errors in a raid
CN106919473A (zh) 一种数据灾备系统及业务处理方法
CN105843560B (zh) 一种维护主从式双控软Raid6一致性的方法及系统
CN103970486A (zh) 一种数据存储方法和系统
CN104268038A (zh) 磁盘阵列的高可用系统
JP2009053946A (ja) 二重化コントーラ構成ブロックデバイス制御装置
CN112379825B (zh) 基于数据特征分池的分布式数据存储方法及装置
US7496724B2 (en) Load balancing in a mirrored storage system
CN114089923A (zh) 一种双活存储系统及其数据处理方法
CN116204137B (zh) 基于dpu的分布式存储系统、控制方法、装置及设备
JP2005055995A (ja) ストレージ制御方法、および、冗長化機能を有するサーバシステム
US9542273B2 (en) Storage control apparatus, storage control system, and storage control method for failure detection and configuration of cascaded storage cabinets
JP2006114064A (ja) 記憶サブシステム
US20160182638A1 (en) Cloud serving system and cloud serving method
CN105871987A (zh) 数据写入的高可用系统及方法
CN103049505B (zh) 一种存储引擎装置和基于基础引擎的存储结构装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant