CN102200949A - 多控存储系统实现控制器故障保护的装置及方法 - Google Patents
多控存储系统实现控制器故障保护的装置及方法 Download PDFInfo
- Publication number
- CN102200949A CN102200949A CN2011101256134A CN201110125613A CN102200949A CN 102200949 A CN102200949 A CN 102200949A CN 2011101256134 A CN2011101256134 A CN 2011101256134A CN 201110125613 A CN201110125613 A CN 201110125613A CN 102200949 A CN102200949 A CN 102200949A
- Authority
- CN
- China
- Prior art keywords
- disk
- controller
- information
- module
- pattern
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000003139 buffering effect Effects 0.000 claims description 18
- 238000003491 array Methods 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003716 rejuvenation Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Abstract
本发明披露了多控存储系统实现控制器故障保护的装置及方法,其中装置包括:写策略设置模块在上电时将磁盘的写策略模式设置为数据总被写入磁盘的模式,磁盘缓存开关模块在上电时关闭磁盘的高速缓存,磁盘定位模块在上电时将获取的存储系统中所有磁盘所处物理位置的信息输出给磁盘置位模块,磁盘置位模块在控制器发生故障并接管该发生故障的控制器使用的磁盘资源时,根据输入的磁盘所处物理的位置信息对被接管的磁盘进行置位操作。本发明可有效地避免故障控制器被接管后常会出现的磁盘写数据不一致的问题。
Description
技术领域
本发明涉及存储装置掉电保护的方法,尤其涉及多控制器存储系统实现控制器故障保护的方法及装置。
背景技术
在多控制器存储系统中为提高系统的可靠性,引入了缓存管理模块,控制器接收写数据的请求后,在将数据写入磁盘前会把要写入的数据发送至其它控制器进行镜像缓存。当接收写请求的控制器发生故障后,由其它控制器接管发生故障的控制器的存储资源,并把经镜像缓存的数据写入被接管的磁盘。
在多控制器存储系统中的一个控制器出现掉电故障后,会导致正在进行读/写操作的磁盘无法向操作系统返回响应;另外,当其它控制器接管故障控制器的存储资源后,在短时间内对被接管的磁盘进行读/写操作,可能会出现错误;由此均会导致出现向被接管的磁盘写数据不一致的故障。
因此,需要针对由于多控制器存储系统中的控制器掉电后会引发的磁盘故障,提供一种可靠易行的解决办法及装置,能够有效地避免出现这类故障。
发明内容
本发明所要解决的技术问题是提供一种多控存储系统实现掉电保护的方法及装置,能够在控制器掉电后有效地避免出现磁盘故障。
为了解决上述技术问题,本发明提供了一种多控制器存储系统实现控制器故障保护的装置,包括写策略设置模块、磁盘缓存开关模块以及相互连接的磁盘定位模块和磁盘置位模块,其中:
写策略设置模块,用于在上电时将磁盘的写策略模式设置为数据总被写入磁盘的模式;
磁盘缓存开关模块,用于在上电时关闭磁盘的高速缓存;
磁盘定位模块,用于在上电时将获取的存储系统中所有磁盘所处物理位置的信息输出给磁盘置位模块;
磁盘置位模块,用于在控制器发生故障并接管该发生故障的控制器使用的磁盘资源时,根据输入的磁盘所处物理的位置信息对被接管的磁盘进行置位操作。
进一步地,
写策略设置模块在上电时将磁盘的写策略模式由默认的回写模式设置为透写模式,即数据总被写入磁盘的模式。
进一步地,
磁盘缓存开关模块获取及分析小型计算机系统接口协议的0x08协议页中控制磁盘缓存模式的信息,将设为控制打开缓存模式修改为控制关闭缓存模式,然后将修改的信息以命令数据的形式写回磁盘,以关闭磁盘的高速缓存。
进一步地,
磁盘定位模块通过小型计算机系统接口SCSI协议的0xA、0x83协议页信息获取并输出所有磁盘所处物理位置的信息,包括所有磁盘所在阵列及其串行SCSI地址以及磁盘的槽位号。
进一步地,
磁盘置位模块使用smp_utils工具执行置位操作,使得被接管的磁盘由不确定状态恢复到正常状态。
为了解决上述技术问题,本发明提供了一种多控制器存储系统实现控制器故障保护的方法,包括:
控制器在上电时将磁盘的写策略模式设置为数据总被写入磁盘的模式,并关闭使用磁盘的高速缓存,以及获取存储系统中所有控制器使用磁盘所处物理位置的信息。
进一步地,该方法还包括:
当有控制器发生故障时,其它控制器根据磁盘所处物理位置的信息对发生故障的控制器所使用的磁盘进行置位操作,完成对磁盘的接管操作。
进一步地,控制器在上电时将磁盘的写策略模式由默认的回写模式设置为透写模式,即数据总被写入磁盘的模式。
进一步地,控制器在上电时关闭使用磁盘的高速缓存,具体包括:
获取及分析小型计算机系统接口协议的0x08协议页中控制磁盘缓存模式的信息,将设为控制打开缓存模式修改为控制关闭缓存模式,然后将修改的信息以命令数据的形式写回磁盘,以关闭磁盘的高速缓存。
进一步地,控制器在上电时获取存储系统中所有控制器使用磁盘所处物理位置的信息,具体包括:
通过小型计算机系统接口SCSI协议的0xA、0x83协议页信息获取所有磁盘所处物理位置的信息,包括所有磁盘所在阵列及其串行SCSI地址以及所述磁盘的槽位号。
本发明提供的方法及装置,通过修改存储系统的磁盘写入策略及写模式,并在其它控制器接管故障控制器存储资源的过程中对被接管的磁盘进行置位操作,从而可有效地避免故障控制器被接管后常会出现的磁盘写数据不一致的问题。
附图说明
图1为本发明的多控存储系统实现控制器故障保护的装置实施例的结构框图;
图2为本发明的多控存储系统实现控制器故障保护的方法实施例流程图。
具体实施方式
下面结合附图和优选实施例对本发明的技术方案进行详细地描述。以下例举的实施例仅用于说明和解释本发明,而不构成对本发明技术方案的限制。
本发明提供的多控存储系统实现控制器故障保护的装置实施例,其结构如图1所示,包括写策略设置模块110、磁盘缓存开关模块120以及相互连接的磁盘定位模块130和磁盘置位模块140,其中:
写策略设置模块110,用于在上电时将磁盘的写策略设置为数据总被写入磁盘的模式;
写策略设置模块110将磁盘的写策略由默认的回写模式(write back)设置为透写模式(write through)。
通常,磁盘的写策略有回写模式(write back)和透写模式两种,其中,回写模式代表被写入高速缓存的数据只有在其要被清除时才会被写入磁盘,该模式是默认情况下的写策略;透写模式代表数据在被写入高速缓存的同时也被写入磁盘,即数据总被写入磁盘的模式。
当数据由处理器写入到磁盘上时,要写入的数据由于可能会被频繁访问而先被写入高速缓存中,故在默认情况下的写策略为write back模式;处于此模式下若发生控制器故障(譬如掉电),会造成高速缓存中尚未被写入磁盘的数据丢失。因此需要在存储系统上电时将磁盘的写策略设为透写模式,由于数据在被写入到高速缓存的同时也会被写到磁盘,故此模式可在发生控制器故障时避免造成数据的丢失。
磁盘缓存开关模块120,用于在上电时通过小型计算机系统接口(SCSI,Small Computer Systems Interface)协议关闭磁盘的高速缓存;
SCSI协议的0x80协议页中包含了控制磁盘缓存模式的信息,当该信息为打开缓存模式时,写入磁盘的数据会首先写到被打开的高速缓存中;在对磁盘进行置位操作时,会造成已被写入高速缓存但尚未写入磁盘的数据丢失。如果将0x80协议页中控制磁盘缓存模式修改为控制关闭缓存模式,则写入磁盘的数据会直接写到磁盘上,故此情况下再对磁盘进行置位操作时,不会造成数据丢失。
磁盘缓存开关模块120获取及分析SCSI协议的0x08协议页中控制磁盘缓存模式的信息,将设为控制打开缓存模式修改为控制关闭缓存模式,然后将修改的信息以命令数据的形式写回磁盘,以关闭磁盘的高速缓存。
磁盘定位模块130,用于在上电时将通过SCSI协议获取的存储系统中所有磁盘所处物理位置的信息输出给磁盘置位模块140;
磁盘定位模块130通过SCSI协议的0xA、0x83协议页信息,获取所有磁盘所在阵列(expander)及其串行SCSI(SAS,Serial Attached SCSI)地址以及各磁盘的槽位号。
磁盘置位模块140,用于在控制器发生故障并接管其使用磁盘资源时,根据输入的磁盘所处物理位置的信息对被接管的磁盘进行置位操作。
磁盘置位模块140根据输入的磁盘所处物理位置的信息找到被接管磁盘的物理位置,通过smp_utils工具对相应的磁盘进行置位操作。
在多控制器存储系统中,磁盘阵列通常会通过SAS卡或SAS线与控制器连接。当一个控制器在向磁盘写入数据时发生掉电,造成被写入数据的磁盘处于不确定状态,当另一个控制器接管这些磁盘时,会触发对这些磁盘的状态恢复机制,每个磁盘的恢复时间大约为2秒且恢复过程是顺序执行,如果磁盘数量较多时,另外的控制器接管这些磁盘时间过长,会造成基于磁盘数据的上层业务的中断。
磁盘置位模块140使用smp_utils工具可以在短时间内将处于不确定状态的磁盘通过置位操作恢复到正常状态,并且不会影响到上层业务的进行。在置位操作中,如果磁盘的高速缓存处于打开状态,置位操作会造成高速缓存中数据的丢失,所以在进行置位操作前需要磁盘缓存开关模块120将磁盘的高速缓存关闭。
本发明针对上述装置实施例,相应地还提供了多控制器存储系统实现控制器故障保护的方法实施例,其流程如图2所示,包括如下步骤:
210:各控制器在上电时重设磁盘的写策略模式,并关闭磁盘的高速缓存;
各控制器上电时将磁盘的写策略由默认的回写模式重设为透写模式,并将SCSI协议的0x80协议页中控制磁盘缓存模式修改为控制关闭缓存模式,从而关闭磁盘的高速缓存。
220:获取存储系统中所有控制器使用磁盘的位置信息;
在上电时将通过SCSI协议的0xA、0x83协议页信息,获取所有磁盘所在阵列(expander)及其串行SCSI(SAS,Serial Attached SCSI)地址以及各磁盘的槽位号。
230:当一控制器发生故障时,另一控制器开始接管该故障控制器使用的磁盘资源;
譬如当一控制器突然掉电时,另一控制器开始接管该掉电控制器使用的磁盘资源。
240:接管控制器根据磁盘的位置信息对故障控制器使用的磁盘进行置位操作,完成对故障磁盘存储资源的操作。
使用smp_utils工具在短时间内将处于不确定状态的磁盘通过置位操作恢复到正常状态,在接管存储资源完成后继续数据的写请求,写数据便可在此过程中无任何丢失。
对于本领域的专业人员来说,在了解了本发明内容和原理后,能够在不背离本发明的原理和范围的情况下,根据本发明的方法进行形式和细节上的各种修正和改变,但是这些基于本发明的修正和改变仍在本发明的权利要求保护范围之内。
Claims (10)
1.一种多控制器存储系统实现控制器故障保护的装置,其特征在于,包括写策略设置模块、磁盘缓存开关模块以及相互连接的磁盘定位模块和磁盘置位模块,其中:
写策略设置模块,用于在上电时将磁盘的写策略模式设置为数据总被写入磁盘的模式;
磁盘缓存开关模块,用于在上电时关闭磁盘的高速缓存;
磁盘定位模块,用于在上电时将获取的所述存储系统中所有磁盘所处物理位置的信息输出给磁盘置位模块;
磁盘置位模块,用于在控制器发生故障并接管该发生故障的控制器使用的磁盘资源时,根据输入的磁盘所处物理的位置信息对被接管的磁盘进行置位操作。
2.按照权利要求1所述的装置,其特征在于,
所述写策略设置模块在所述上电时将所述磁盘的写策略模式由默认的回写模式设置为透写模式,即所述数据总被写入磁盘的模式。
3.按照权利要求1所述的装置,其特征在于,
所述磁盘缓存开关模块获取及分析小型计算机系统接口协议的0x08协议页中控制磁盘缓存模式的信息,将设为控制打开缓存模式修改为控制关闭缓存模式,然后将修改的信息以命令数据的形式写回磁盘,以关闭所述磁盘的高速缓存。
4.按照权利要求1所述的装置,其特征在于,
所述磁盘定位模块通过小型计算机系统接口SCSI协议的0xA、0x83协议页信息获取并输出所述所有磁盘所处物理位置的信息,包括所有磁盘所在阵列及其串行SCSI地址以及所述磁盘的槽位号。
5.按照权利要求1至4任一项所述的装置,其特征在于,
所述磁盘置位模块使用smp_utils工具执行所述置位操作,使得所述被接管的磁盘由不确定状态恢复到正常状态。
6.一种多控制器存储系统实现控制器故障保护的方法,包括:
所述控制器在上电时将磁盘的写策略模式设置为数据总被写入磁盘的模式,并关闭使用磁盘的高速缓存,以及获取所述存储系统中所有控制器使用磁盘所处物理位置的信息。
7.按照权利要求6所述的方法,其特征在于,还包括:
当有控制器发生故障时,其它控制器根据所述磁盘所处物理位置的信息对发生故障的控制器所使用的磁盘进行置位操作,完成对所述磁盘的接管操作。
8.按照权利要求6所述的方法,其特征在于,所述控制器在上电时将所述磁盘的写策略模式由默认的回写模式设置为透写模式,即所述数据总被写入磁盘的模式。
9.按照权利要求6所述的方法,其特征在于,所述控制器在上电时关闭使用磁盘的高速缓存,具体包括:
获取及分析小型计算机系统接口协议的0x08协议页中控制磁盘缓存模式的信息,将设为控制打开缓存模式修改为控制关闭缓存模式,然后将修改的信息以命令数据的形式写回磁盘,以关闭所述磁盘的高速缓存。
10.按照权利要求6所述的方法,其特征在于,所述控制器在上电时获取所述存储系统中所有控制器使用磁盘所处物理位置的信息,具体包括:
通过小型计算机系统接口SCSI协议的0xA、0x83协议页信息获取所述所有磁盘所处物理位置的信息,包括所有磁盘所在阵列及其串行SCSI地址以及所述磁盘的槽位号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101256134A CN102200949A (zh) | 2011-05-16 | 2011-05-16 | 多控存储系统实现控制器故障保护的装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101256134A CN102200949A (zh) | 2011-05-16 | 2011-05-16 | 多控存储系统实现控制器故障保护的装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102200949A true CN102200949A (zh) | 2011-09-28 |
Family
ID=44661639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101256134A Pending CN102200949A (zh) | 2011-05-16 | 2011-05-16 | 多控存储系统实现控制器故障保护的装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102200949A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105740172A (zh) * | 2016-01-26 | 2016-07-06 | 浪潮(北京)电子信息产业有限公司 | 一种块设备数据缓存掉电保护的方法及系统 |
CN106155943A (zh) * | 2015-04-01 | 2016-11-23 | 浙江大华技术股份有限公司 | 一种双控存储设备的掉电保护的方法及装置 |
CN108491162A (zh) * | 2018-03-13 | 2018-09-04 | 山东超越数控电子股份有限公司 | 一种提高存储系统性能的方法及装置 |
CN109213446A (zh) * | 2018-08-23 | 2019-01-15 | 郑州云海信息技术有限公司 | 写缓存模式的切换方法、装置、设备及可读存储介质 |
CN111813589A (zh) * | 2020-06-01 | 2020-10-23 | 北京百卓网络技术有限公司 | 一种分布式集群故障定位方法、装置、设备及存储介质 |
CN112162940A (zh) * | 2020-09-11 | 2021-01-01 | 北京浪潮数据技术有限公司 | 一种减小缓存故障域的方法、装置、系统及存储系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6438647B1 (en) * | 2000-06-23 | 2002-08-20 | International Business Machines Corporation | Method and apparatus for providing battery-backed immediate write back cache for an array of disk drives in a computer system |
US6629211B2 (en) * | 2001-04-20 | 2003-09-30 | International Business Machines Corporation | Method and system for improving raid controller performance through adaptive write back/write through caching |
CN1904840A (zh) * | 2005-07-25 | 2007-01-31 | 英业达股份有限公司 | 硬盘阵列重建程序中断接续处理方法及系统 |
CN101576837A (zh) * | 2009-06-12 | 2009-11-11 | 成都市华为赛门铁克科技有限公司 | 一种存储控制系统及方法 |
-
2011
- 2011-05-16 CN CN2011101256134A patent/CN102200949A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6438647B1 (en) * | 2000-06-23 | 2002-08-20 | International Business Machines Corporation | Method and apparatus for providing battery-backed immediate write back cache for an array of disk drives in a computer system |
US6629211B2 (en) * | 2001-04-20 | 2003-09-30 | International Business Machines Corporation | Method and system for improving raid controller performance through adaptive write back/write through caching |
CN1904840A (zh) * | 2005-07-25 | 2007-01-31 | 英业达股份有限公司 | 硬盘阵列重建程序中断接续处理方法及系统 |
CN101576837A (zh) * | 2009-06-12 | 2009-11-11 | 成都市华为赛门铁克科技有限公司 | 一种存储控制系统及方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106155943A (zh) * | 2015-04-01 | 2016-11-23 | 浙江大华技术股份有限公司 | 一种双控存储设备的掉电保护的方法及装置 |
CN106155943B (zh) * | 2015-04-01 | 2019-03-26 | 浙江大华技术股份有限公司 | 一种双控存储设备的掉电保护的方法及装置 |
CN105740172A (zh) * | 2016-01-26 | 2016-07-06 | 浪潮(北京)电子信息产业有限公司 | 一种块设备数据缓存掉电保护的方法及系统 |
CN108491162A (zh) * | 2018-03-13 | 2018-09-04 | 山东超越数控电子股份有限公司 | 一种提高存储系统性能的方法及装置 |
CN109213446A (zh) * | 2018-08-23 | 2019-01-15 | 郑州云海信息技术有限公司 | 写缓存模式的切换方法、装置、设备及可读存储介质 |
CN109213446B (zh) * | 2018-08-23 | 2022-03-22 | 郑州云海信息技术有限公司 | 写缓存模式的切换方法、装置、设备及可读存储介质 |
CN111813589A (zh) * | 2020-06-01 | 2020-10-23 | 北京百卓网络技术有限公司 | 一种分布式集群故障定位方法、装置、设备及存储介质 |
CN112162940A (zh) * | 2020-09-11 | 2021-01-01 | 北京浪潮数据技术有限公司 | 一种减小缓存故障域的方法、装置、系统及存储系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9927999B1 (en) | Trim management in solid state drives | |
EP2483782B1 (en) | Power interrupt management | |
CN102200949A (zh) | 多控存储系统实现控制器故障保护的装置及方法 | |
US8331123B2 (en) | High performance solid-state drives and methods therefor | |
US7882316B2 (en) | Shared data mirroring apparatus, method, and system | |
US20120159244A1 (en) | Memory system | |
KR102233400B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
CN105934747B (zh) | 混合内存模块以及操作混合内存模块的系统和方法 | |
JP2001166993A (ja) | 記憶制御装置およびキャッシュメモリの制御方法 | |
CN101329641A (zh) | 一种磁盘阵列的数据重建方法 | |
CN109388517A (zh) | 存储器控制器、包括存储器控制器的存储器系统和应用处理器 | |
CN108431783A (zh) | 访问请求处理方法、装置及计算机系统 | |
US11507307B2 (en) | Storage system including a memory controller that enables each storage controller of a plurality of storage controllers to exclusively read and write control information of the memory | |
US20100191944A1 (en) | Data storage apparatus | |
CN104035886B (zh) | 磁盘重映射方法、装置及电子设备 | |
JP2006099802A (ja) | 記憶制御装置およびキャッシュメモリの制御方法 | |
US9740423B2 (en) | Computer system | |
KR20170104112A (ko) | 메모리 시스템 및 그것을 제어하는 방법 | |
US7698500B2 (en) | Disk array system, host interface unit, control method for disk array system, and computer program product for disk array system | |
US11681638B2 (en) | Method of synchronizing time between host device and storage device and system performing the same | |
US11733920B2 (en) | NVMe simple copy command support using dummy virtual function | |
KR101152108B1 (ko) | 하이브리드 하드 디스크 드라이브 장치 및 그 리드/라이트 제어 방법 | |
CN116888585A (zh) | 用于简单复制命令的基于高速缓存的流 | |
US9836359B2 (en) | Storage and control method of the same | |
EP4196881A1 (en) | Prevention of ram access pattern attacks via selective data movement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110928 |