CN114968129B - 磁盘阵列冗余方法、***、计算机设备和存储介质 - Google Patents
磁盘阵列冗余方法、***、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114968129B CN114968129B CN202210895183.2A CN202210895183A CN114968129B CN 114968129 B CN114968129 B CN 114968129B CN 202210895183 A CN202210895183 A CN 202210895183A CN 114968129 B CN114968129 B CN 114968129B
- Authority
- CN
- China
- Prior art keywords
- disk array
- state machine
- operation mode
- normal
- input
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012545 processing Methods 0.000 claims abstract description 106
- 238000011084 recovery Methods 0.000 claims abstract description 83
- 230000002159 abnormal effect Effects 0.000 claims abstract description 77
- 238000012544 monitoring process Methods 0.000 claims abstract description 20
- 230000030279 gene silencing Effects 0.000 claims abstract description 19
- 230000008859 change Effects 0.000 claims description 71
- 238000012423 maintenance Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 13
- 239000003795 chemical substances by application Substances 0.000 description 168
- 230000006870 function Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 8
- 238000003491 array Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013024 troubleshooting Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明涉及磁盘阵列冗余方法、***、计算机设备和存储介质,方法包括:实时监测磁盘阵列的运行状态,当监测到磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过状态机按照预设冗余时长启动定时器进行计时;状态机向代理端发送静默请求,使代理端执行静默处理,以暂停磁盘阵列的输入输出操作,并通过代理端将磁盘阵列的正常运行模式切换为临时运行模式;状态机向代理端发送静默恢复请求,使代理端执行静默恢复处理,以恢复磁盘阵列的输入输出操作;待静默恢复处理完毕后,若定时器的计时时间未超过预设冗余时长,且磁盘阵列的运行状态恢复正常,则通过代理端将磁盘阵列的运行模式切换为正常运行模式。本发明提高了磁盘阵列的冗余能力。
Description
技术领域
本发明涉及磁盘阵列领域,特别是涉及一种磁盘阵列冗余方法、***、计算机设备和存储介质。
背景技术
在存储***中,RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)把多个硬盘设备组合成一个容量更大、安全性更好的磁盘阵列,并把数据切割成多个区段后分别存放在各个不同的物理硬盘设备上,然后利用分散读写技术来提升磁盘阵列整体的性能,同时把多个重要数据的副本同步到不同的物理硬盘设备上,从而起到了非常好的数据冗余备份效果。
在RAID使用过程中,不可避免的会发生各类磁盘故障、链路故障、框间节点故障等,这些故障会导致下线的磁盘数量超过冗余的磁盘数量,会进一步导致硬盘临时下线或者频繁的上下线,虽然RAID在一定程度上提供了容错机制和性能,但是也无法保证业务一直在线,即RAID中下线的磁盘数量超过冗余磁盘的数量时会造成离线,会导致前端业务停止,直接造成业务宕机,对于一些关键行业比如金融、通信等是灾难性的故障。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高磁盘阵列冗余能力的磁盘阵列冗余方法、***、计算机设备和存储介质。
一方面,提供一种磁盘阵列冗余方法,所述磁盘阵列冗余方法包括:
实时监测所述磁盘阵列的运行状态,当监测到所述磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过所述状态机按照预设冗余时长启动定时器进行计时;
所述状态机向代理端发送静默请求,使所述代理端执行静默处理,以暂停所述磁盘阵列的输入输出操作,并通过所述代理端将所述磁盘阵列的正常运行模式切换为临时运行模式;
所述状态机向所述代理端发送静默恢复请求,使所述代理端执行静默恢复处理,以恢复所述磁盘阵列的输入输出操作;
待所述静默恢复处理完毕后,若所述定时器的计时时间未超过所述预设冗余时长,且所述磁盘阵列的运行状态恢复正常,则通过所述代理端将所述磁盘阵列的运行模式切换为正常运行模式。
在其中一个实施例中,所述当监测到所述磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过所述状态机按照预设冗余时长启动定时器进行计时,包括:
当监测到所述磁盘阵列的运行状态异常时,发送所述异常信息至状态机,并将所述异常信息通知运维人员;
将所述状态机的标志状态设置为成圆盘异常状态,按照所述预设冗余时长启动定时器进行计时,并通知运维人员已开始进行计时。
在其中一个实施例中,所述状态机向代理端发送静默请求,使所述代理端执行静默处理,以暂停所述磁盘阵列的输入输出操作,并通过所述代理端将所述磁盘阵列的正常运行模式切换为临时运行模式,包括:
所述状态机向代理端发送静默请求,并准备模式更改数据;
所述代理端执行静默处理,使主机暂停下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待所述代理端执行所述静默处理完毕后,向所述状态机发送静默操作完成消息;
所述状态机将所述模式更改数据发送至所述代理端,所述代理端根据所述模式更改数据将所述磁盘阵列的正常运行模式从正常运行模式切换为临时运行模式。
在其中一个实施例中,所述状态机向所述代理端发送静默恢复请求,使所述代理端执行静默恢复处理,以恢复所述磁盘阵列的输入输出操作,包括:
将所述磁盘阵列的正常运行模式切换为临时运行模式的消息发送至所述状态机,所述状态机向所述代理端发送静默恢复请求;
所述代理端执行静默恢复处理,将所述静默队列中的输入输出操作恢复到正常队列,并使主机继续下发输入输出操作,待所述输入输出操作在所述临时运行模式下恢复正常后,将所述输入输出操作在所述临时运行模式下恢复正常的消息发送至所述状态机。
在其中一个实施例中,所述输入输出操作在所述临时运行模式下恢复正常的消息发送至所述状态机后,还包括:
获取所述磁盘阵列的运行状态,若所述磁盘阵列的运行状态恢复正常,且所述定时器的计时时间未超过所述预设冗余时长,则通过所述代理端将所述磁盘阵列的临时运行模式切换为正常运行模式;
若所述磁盘阵列的运行状态未恢复正常,或者所述定时器的计时时间超过所述预设冗余时长,则通过所述代理端将所述磁盘阵列的临时运行模式切换为离线运行模式。
在其中一个实施例中,所述通过所述代理端将所述磁盘阵列的临时运行模式切换为正常运行模式,包括:
所述状态机向代理端发送静默请求,并准备模式更改数据;
所述代理端执行静默处理,使主机暂停下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待所述代理端执行所述静默处理完毕后,向所述状态机发送静默操作完成消息;
所述状态机将所述模式更改数据发送至所述代理端,所述代理端根据所述模式更改数据将所述磁盘阵列的运行模式从临时运行模式切换为正常运行模式。
在其中一个实施例中,所述通过所述代理端将所述磁盘阵列的临时运行模式切换为正常运行模式,还包括:
将所述磁盘阵列的临时运行模式切换为正常运行模式的消息发送至所述状态机,所述状态机向所述代理端发送静默恢复请求;
所述代理端执行静默恢复处理,将所述静默队列中的输入输出操作恢复到正常队列,并使主机继续下发输入输出操作,待所述输入输出操作在所述正常运行模式下恢复正常后,将所述输入输出操作在所述正常运行模式下恢复正常的消息发送至所述状态机;
将所述状态机的标志状态设置为成圆盘正常状态。
在其中一个实施例中,所述通过所述代理端将所述磁盘阵列的临时运行模式切换为离线运行模式,包括:
所述状态机向代理端发送静默请求,并准备模式更改数据;
所述代理端执行静默处理,使主机停止下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待所述代理端执行所述静默处理完毕后,向所述状态机发送静默操作完成消息;
所述状态机将所述模式更改数据发送至所述代理端,所述代理端根据所述模式更改数据将所述磁盘阵列的运行模式从临时运行模式切换为离线运行模式。
在其中一个实施例中,所述通过所述代理端将所述磁盘阵列的临时运行模式切换为离线运行模式,还包括:
将所述磁盘阵列的临时运行模式切换为离线运行模式的消息发送至所述状态机,所述状态机向所述代理端发送静默恢复请求;
所述代理端执行静默恢复处理,并向主机返回所有输入输出操作请求,断开主机主链路;
将所述状态机的成圆盘异常状态上报给运维人员。
在其中一个实施例中,所述磁盘阵列的运行状态异常指所述磁盘阵列中处于下线状态的磁盘数量超过冗余磁盘的数量。
在其中一个实施例中,所述按照预设冗余时长启动定时器进行计时前,还包括:
根据所述磁盘阵列的故障类型、输入输出操作处理时长和磁盘插拔时长确定所述预设冗余时长数据库。
在其中一个实施例中,所述按照预设冗余时长启动定时器进行计时前,还包括:
根据所述故障类型从所述预设冗余时长数据库中获取相应的预设冗余时长。
另一方面,提供了一种磁盘阵列冗余***,所述磁盘阵列冗余***包括:
磁盘管理端,用于实时监测所述磁盘阵列的运行状态,当所述磁盘阵列的运行状态异常时,发送异常信息至状态机;
状态机,用于按照预设冗余时长启动定时器进行计时,向代理端发送静默请求或者静默恢复请求,及判断所述定时器的计时时间是否超过所述预设冗余时长;
代理端,用于使所述代理端执行静默处理或者静默恢复处理,及切换所述代理端的运行模式。
再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
实时监测所述磁盘阵列的运行状态,当监测到所述磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过所述状态机按照预设冗余时长启动定时器进行计时;
所述状态机向代理端发送静默请求,使所述代理端执行静默处理,以暂停所述磁盘阵列的输入输出操作,并通过所述代理端将所述磁盘阵列的正常运行模式切换为临时运行模式;
所述状态机向所述代理端发送静默恢复请求,使所述代理端执行静默恢复处理,以恢复所述磁盘阵列的输入输出操作;
待所述静默恢复处理完毕后,若所述定时器的计时时间未超过所述预设冗余时长,且所述磁盘阵列的运行状态恢复正常,则通过所述代理端将所述磁盘阵列的运行模式切换为正常运行模式。
又一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序,当所述程序被处理器执行时,使得所述处理器执行以下步骤:
实时监测所述磁盘阵列的运行状态,当监测到所述磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过所述状态机按照预设冗余时长启动定时器进行计时;
所述状态机向代理端发送静默请求,使所述代理端执行静默处理,以暂停所述磁盘阵列的输入输出操作,并通过所述代理端将所述磁盘阵列的正常运行模式切换为临时运行模式;
所述状态机向所述代理端发送静默恢复请求,使所述代理端执行静默恢复处理,以恢复所述磁盘阵列的输入输出操作;
待所述静默恢复处理完毕后,若所述定时器的计时时间未超过所述预设冗余时长,且所述磁盘阵列的运行状态恢复正常,则通过所述代理端将所述磁盘阵列的运行模式切换为正常运行模式。
本发明的上述技术方案相比现有技术具有以下优点:
上述磁盘阵列冗余方法、***、计算机设备和存储介质,使得运行状态异常的磁盘阵列进入临时运行模式,不会断掉业务,能够保证业务的正常运行;并且对临时运行模式设置预设冗余时长,使得在预设冗余时长内能保证业务的正常运行,且在预设冗余时长内待磁盘阵列恢复正常后,可以自动恢复到正常运行模式,提高了磁盘阵列的冗余能力,保证了业务的正常进行。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明的磁盘阵列冗余方法的第一方法流程图;
图2是本发明的磁盘阵列冗余方法的第二方法流程图;
图3是本发明的磁盘阵列冗余方法的时序图;
图4是本发明的磁盘阵列冗余***的***结构图;
图5是本发明的计算机设备的设备结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在RAID使用过程中,不可避免的会发生各类磁盘故障、链路故障、框间节点故障等,这些故障会导致下线的磁盘数量超过冗余的磁盘数量,会进一步导致硬盘临时下线或者频繁的上下线,虽然RAID在一定程度上提供了容错机制和性能,但是也无法保证业务一直在线,即RAID中下线的磁盘数量超过冗余磁盘的数量时会造成离线,会导致前端业务停止,直接造成业务宕机,对于一些关键行业比如金融、通信等是灾难性的故障。针对这一技术问题,本文提出一种磁盘阵列冗余方法、***、计算机设备和存储介质,使得运行状态异常的磁盘阵列进入临时运行模式,不会断掉业务,能够保证业务的正常运行;并且对临时运行模式设置预设冗余时长,使得在预设冗余时长内能保证业务的正常运行,且在预设冗余时长内待磁盘阵列恢复正常后,可以自动恢复到正常运行模式,提高了磁盘阵列的冗余能力,保证了业务的正常进行。
实施例一:
本实施例的磁盘阵列冗余方法,参照图1~图3所示,图1为本发明的磁盘阵列冗余方法的第一方法流程图;图2为本发明的磁盘阵列冗余方法的第二方法流程图;图3是本发明的磁盘阵列冗余方法的时序图。
磁盘阵列冗余方法包括以下步骤:
实时监测磁盘阵列的运行状态,当监测到磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过状态机按照预设冗余时长启动定时器进行计时;
磁盘阵列会设置冗余磁盘,当磁盘阵列发生故障,使得下线磁盘数量超过冗余磁盘数量时,磁盘阵列的运行状态会处于异常状态(例如RAID6磁盘阵列会设置有两块冗余磁盘,当RAID6磁盘阵列下线的磁盘数量超过2时,RAID6磁盘阵列处于异常状态),因此要对磁盘阵列进行实时监测,以监测磁盘阵列的运行状态。当监测到磁盘阵列的运行状态异常时,将磁盘阵列的异常消息发送至状态机,使得状态机启动定时器计时功能,并监测状态机的计时时间与预设冗余时长的关系,以通过两者的关系进行磁盘阵列运行模式的切换。
状态机向代理端发送静默请求,使代理端执行静默处理,以暂停磁盘阵列的输入输出操作,并通过代理端将磁盘阵列的正常运行模式切换为临时运行模式;
状态机启动定时器计时功能后,状态机会向代理端发送静默请求,使得代理端执行静默处理,静默处理是指暂停磁盘阵列当前运行模式下的输入输出操作,此时即暂停磁盘阵列在正常运行模式下的输入输出操作,然后通过代理端将磁盘阵列的运行模式切换为临时运行模式,以便于在磁盘阵列异常的时候还能够处理输入输出操作,只不过处于临时运行模式的磁盘列所处理的输入输出操作量降低,但是依然能够保证正常业务的进行。
状态机向代理端发送静默恢复请求,使代理端执行静默恢复处理,以恢复磁盘阵列的输入输出操作;
代理端将磁盘阵列的运行模式切换为临时运行模式后,状态机会向代理端发送静默恢复请求,静默恢复请求是指将磁盘阵列按照将要切换后的运行模式执行输入输出操作,此时即将磁盘阵列按照临时运行模式执行输入输出操作,以使得处于异常状态的磁盘阵列能够保证正常业务的进行。
待静默恢复处理完毕后,若定时器的计时时间未超过预设冗余时长,且磁盘阵列的运行状态恢复正常,则将代理端的运行模式切换为正常运行模式。
代理端执行静默恢复处理完毕后,需要监测磁盘阵列的运行状态,如果磁盘阵列的运行状态恢复正常,并且定时器的计时时间未超过预设冗余时长,则需将代理端的运行模式切换为正常运行模式。在此预设冗余时长期间,磁盘阵列中下线的磁盘会自动恢复上线,或者运维人员手动对磁盘阵列进行检修,使得磁盘阵列中下线的磁盘恢复上线,总之,在此预设冗余时长期间,只要磁盘阵列的运行状态恢复正常,并且定时器的计时时间未超过预设冗余时长,便可以将磁盘阵列的运行模式切换回正常运行模式,恢复磁盘阵列正常的输入输出操作,恢复磁盘阵列正常的业务,有效地提高了磁盘阵列的冗余能力。
在其中一个实施方式中,当监测到磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过状态机按照预设冗余时长启动定时器进行计时,包括:
当监测到磁盘阵列的运行状态异常时,发送异常信息至状态机,并将异常信息通知运维人员;
实时监测磁盘阵列的运行状态,当监测到磁盘阵列的运行状态异常时,会将磁盘阵列异常的消息发送给状态机,以启动状态机的定时器计时功能,并且要将异常信息通知运维人员,使运维人员进行故障排查,恢复磁盘阵列中下线的磁盘。此外,还要打印日志,以保存操作信息。
将状态机的标志状态设置为成圆盘异常状态,按照预设冗余时长启动定时器进行计时,并通知运维人员已开始进行计时。
状态机设置有标志状态,用来标识磁盘阵列的运行状态;状态机接收到磁盘阵列的异常信息后,自动将状态机的标志状态设置为成圆盘异常状态,也就是磁盘阵列中磁盘的下线状态;然后状态机自动启动定时器的计时功能,并时刻判断定时器的计时时间与预设冗余时长之间的关系,以通过定时器的计时时间与预设冗余时长之间的关系来判断磁盘阵列所要切换到的运行模式;此外,还要通知运维人员已开始进行计时。
在其中一个实施方式中,状态机向代理端发送静默请求,使代理端执行静默处理,以暂停磁盘阵列的输入输出操作,并通过代理端将磁盘阵列的正常运行模式切换为临时运行模式,包括:
状态机向代理端发送静默请求,并准备模式更改数据;
状态机的定时器启动计时功能后,状态机自动向代理端发送静默请求,并准备模式更改数据。磁盘阵列按照正常运行模式执行输入输出操作请求,需按照正常运行模式数据执行;磁盘阵列按照临时运行模式执行输入输出操作请求,需按照临时运行模式数据执行;磁盘阵列按照离线运行模式执行输入输出操作请求,需按照临时离线模式数据执行;因此在需要执行磁盘阵列的运行模式切换前,要准备模式更改数据。例如,磁盘阵列当前的运行模式为正常运行模式,将要切换到临时运行模式,则需准备正常运行模式切换到临时运行模式的模式更改数据。
代理端执行静默处理,使主机暂停下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待代理端执行静默处理完毕后,向状态机发送静默操作完成消息;
代理端接收到状态机的静默请求后,执行静默处理,即,停掉磁盘阵列正常运行模式下主机下发的输入输出操作,将已下发的输入输出操作加入到静默队列;待静默处理执行完毕后,向状态机返回静默操作完成消息。
状态机将模式更改数据发送至代理端,代理端根据模式更改数据将磁盘阵列的运行模式从正常运行模式切换为临时运行模式。
状态机接收到静默操作完成消息后,将模式更改数据发送至代理端,代理端根据模式更改数据对磁盘阵列的运行模式进行切换,将磁盘阵列的正常运行模式切换为临时运行模式,以在临时运行模式下执行输入输出操作,不会断掉业务,有效地提高了磁盘阵列的冗余能力。
在其中一个实施方式中,状态机向代理端发送静默恢复请求,使代理端执行静默恢复处理,以恢复磁盘阵列的输入输出操作,包括:
将磁盘阵列的正常运行模式切换为临时运行模式的消息发送至状态机,状态机向代理端发送静默恢复请求;
代理端磁盘阵列的正常运行模式切换为临时运行模式后,将磁盘阵列的正常运行模式切换为临时运行模式的消息发送至状态机,状态机接收到该消息后默认磁盘阵列的运行模式切换完毕,然后状态机会向代理端发送静默恢复请求,以恢复静默,磁盘阵列按照切换后的运行模式执行输入输出操作。
代理端执行静默恢复处理,将静默队列中的输入输出操作恢复到正常队列,并使主机继续下发输入输出操作,待输入输出操作在临时运行模式下恢复正常后,将输入输出操作在临时运行模式下恢复正常的消息发送至状态机。
代理端接收到状态机的静默恢复请求后,将静默队列中的输入输出操作在临时运行模式下恢复到正常队列,即,将静默队列中的输入输出操作按照磁盘阵列切换后的运行模式正常执行,并且主机恢复下发输入输出操作,均按照磁盘阵列切换后的运行模式正常执行;待输入输出操作恢复正常后,输入输出操作恢复正常的消息返回状态机。
在其中一个实施方式中,输入输出操作在临时运行模式下恢复正常的消息发送至状态机后,还包括:
获取磁盘阵列的运行状态,若磁盘阵列的运行状态恢复正常,且定时器的计时时间未超过预设冗余时长,则通过代理端将磁盘阵列的临时运行模式切换为正常运行模式;
状态机接收到输入输出操作恢复正常的消息后,获取磁盘阵列的运行状态,并判断磁盘阵列的状态是否正常,并且定时器的计时时间是否超过预设冗余时长;如果磁盘阵列的运行状态恢复正常,且定时器的计时时间未超过预设冗余时长,则说明磁盘阵列中下线的磁盘已自动上线,或者运维人员已手动将下线的磁盘上线,即,磁盘阵列已恢复到正常状态,则需通过代理端将磁盘阵列的临时运行模式切换为正常运行模式,按照正常运行模式执行输入输出操作,磁盘阵列处理业务恢复正常。
若磁盘阵列的运行状态未恢复正常,或者定时器的计时时间超过预设冗余时长,则通过代理端将磁盘阵列的临时运行模式切换为离线运行模式。
如果磁盘阵列的运行状态未恢复正常,或者定时器的计时时间超过预设冗余时长,则说明磁盘阵列已无法按照临时运行模式正常执行输入输出操作,且无法恢复到正常运行模式,无法正常执行业务处理,则需通过代理端将磁盘阵列的临时运行模式切换为离线运行模式,需发送消息给运维人员,及时对处于离线运行模式的磁盘阵列进行维护。
在其中一个实施方式中,通过代理端将磁盘阵列的临时运行模式切换为正常运行模式,包括:
状态机向代理端发送静默请求,并准备模式更改数据;
状态机的定时器启动计时功能后,状态机自动向代理端发送静默请求,并在需要执行磁盘阵列的运行模式切换前,准备模式更改数据,模式更改数据为将磁盘阵列的临时运行模式切换为正常运行模式的模式更改数据。
代理端执行静默处理,使主机暂停下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待代理端执行静默处理完毕后,向状态机发送静默操作完成消息;
代理端接收到状态机的静默请求后,执行静默处理,即,停掉磁盘阵列临时运行模式下主机下发的输入输出操作,将已下发的输入输出操作加入到静默队列;待静默处理执行完毕后,向状态机返回静默操作完成消息。
状态机将模式更改数据发送至代理端,代理端根据模式更改数据将磁盘阵列的运行模式从临时运行模式切换为正常运行模式。
状态机接收到静默操作完成消息后,将磁盘阵列的临时运行模式切换为正常运行模式的模式更改数据发送至代理端,代理端根据模式更改数据对磁盘阵列的运行模式进行切换,将磁盘阵列的临时运行模式切换为正常运行模式,以恢复正常运行模式,执行输入输出操作,恢复业务处理能力,有效地提高了磁盘阵列的冗余能力。
在其中一个实施方式中,通过代理端将磁盘阵列的临时运行模式切换为正常运行模式,还包括:
将磁盘阵列的临时运行模式切换为正常运行模式的消息发送至状态机,状态机向代理端发送静默恢复请求;
代理端磁盘阵列的临时运行模式切换为正常运行模式后,将磁盘阵列的临时运行模式切换为正常运行模式的消息发送至状态机,状态机接收到该消息后默认磁盘阵列的运行模式切换完毕,然后状态机会向代理端发送静默恢复请求,以恢复静默,磁盘阵列按照切换后的正常运行模式执行输入输出操作。
代理端执行静默恢复处理,将静默队列中的输入输出操作恢复到正常队列,并使主机继续下发输入输出操作,待输入输出操作在正常运行模式下恢复正常后,将输入输出操作在正常运行模式下恢复正常的消息发送至状态机;
代理端接收到状态机的静默恢复请求后,将静默队列中的输入输出操作在正常运行模式下恢复到正常队列,即,将静默队列中的输入输出操作按照磁盘阵列切换后的正常运行模式正常执行,并且主机恢复下发输入输出操作,均按照磁盘阵列切换后的正常运行模式正常执行;待输入输出操作恢复正常后,输入输出操作在正常运行模式下恢复正常的消息返回状态机。
将状态机的标志状态设置为成圆盘正常状态。
此时磁盘阵列的运行状态已恢复正常,且磁盘阵列已恢复至正常运行模式,需将状态机的标志状态设置为成圆盘正常状态,业务正常执行,输入输出操作正常执行,磁盘阵列继续正常运行。此外,还要打印日志,以保存操作信息。
在其中一个实施方式中,通过代理端将磁盘阵列的临时运行模式切换为离线运行模式,包括:
状态机向代理端发送静默请求,并准备模式更改数据;
状态机的定时器启动计时功能后,状态机自动向代理端发送静默请求,并在需要执行磁盘阵列的运行模式切换前,准备模式更改数据,模式更改数据为将磁盘阵列的临时运行模式切换为离线运行模式的模式更改数据。
代理端执行静默处理,使主机停止下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待代理端执行静默处理完毕后,向状态机发送静默操作完成消息;
代理端接收到状态机的静默请求后,执行静默处理,即,停掉磁盘阵列临时运行模式下主机下发的输入输出操作,将已下发的输入输出操作加入到静默队列;待静默处理执行完毕后,向状态机返回静默操作完成消息。
状态机将模式更改数据发送至代理端,代理端根据模式更改数据将磁盘阵列的运行模式从临时运行模式切换为离线运行模式。
状态机接收到静默操作完成消息后,将磁盘阵列的临时运行模式切换为离线运行模式的模式更改数据发送至代理端,代理端根据模式更改数据对磁盘阵列的运行模式进行切换,将磁盘阵列的临时运行模式切换为离线运行模式,以便于停止所有的输入输出操作和业务。
在其中一个实施方式中,通过代理端将磁盘阵列的临时运行模式切换为离线运行模式,还包括:
将磁盘阵列的临时运行模式切换为离线运行模式的消息发送至状态机,状态机向代理端发送静默恢复请求;
代理端磁盘阵列的临时运行模式切换为离线运行模式后,将磁盘阵列的临时运行模式切换为离线运行模式的消息发送至状态机,状态机接收到该消息后默认磁盘阵列的运行模式切换完毕,然后状态机会向代理端发送静默恢复请求,以恢复静默,磁盘阵列按照切换后的离线运行模式执行输入输出操作。
代理端执行静默恢复处理,并向主机返回所有输入输出操作请求,断开主机主链路;
代理端接收到状态机的静默恢复请求后,将静默队列中的输入输出操作按照磁盘阵列切换后的离线运行模式执行,即,停止所有的输入输出操作和业务。
将状态机的成圆盘异常状态上报给运维人员。
此时磁盘阵列的运行状态已无法恢复正常,需将状态机的标志状态设置为成圆盘异常状态,并上报给运维人员。此外,还要打印日志,以保存操作信息。
在其中一个实施方式中,磁盘阵列的运行状态异常指磁盘阵列中处于下线状态的磁盘数量超过冗余磁盘的数量。
磁盘阵列的异常状态是指磁盘阵列中处于下线状态的磁盘数量超过冗余磁盘的数量,无法进行正常的输入输出操作和正常的业务处理。
在其中一个实施方式中,按照预设冗余时长启动定时器进行计时前,还包括:
根据磁盘阵列的故障类型、输入输出操作处理时长和磁盘插拔时长确定预设冗余时长数据库。
磁盘阵列不同的故障类型所对应的预设冗余时长不同,因此可以针对磁盘阵列不同的故障类型设置不同的预设冗余时长,并将不同故障类型下的预设冗余时长存储到数据库中,以便于定时器执行计时前获取与故障类型相应的预设冗余时长。此外,预设冗余时长还要考虑控制器故障恢复时长等因素。
在其中一个实施方式中,按照预设冗余时长启动定时器进行计时前,还包括:
根据故障类型从预设冗余时长数据库中获取相应的预设冗余时长。
监测到磁盘阵列处于异常状态时,状态机判断磁盘阵列的故障类型,然后根据故障类型从预设冗余时长数据库中获取相对应的预设冗余时长,然后按照预设冗余时长启动定时器进行计时。
实施例二:
参照图1~图3所示,图1为本发明的磁盘阵列冗余方法的第一方法流程图;图2为本发明的磁盘阵列冗余方法的第二方法流程图;图3是本发明的磁盘阵列冗余方法的时序图。
实时监测磁盘阵列的运行状态;
对磁盘阵列进行实时监测,以实时监测磁盘阵列的运行状态,以便于在磁盘阵列处于异常状态时将磁盘阵列的运行模式切换到临时运行模式,保证业务的正常进行。
当监测到磁盘阵列的运行状态异常时,发送异常信息至状态机,并将异常信息通知运维人员;
实时监测磁盘阵列的运行状态,当监测到磁盘阵列的运行状态异常时,会将磁盘阵列异常的消息发送给状态机,以启动状态机的定时器计时功能,并且要将异常信息通知运维人员,使运维人员进行故障排查,恢复磁盘阵列中下线的磁盘。此外,当监测到磁盘阵列的运行状态异常时,会保存磁盘阵列的故障类型。
将状态机的标志状态设置为成圆盘异常状态;
状态机接收到磁盘阵列的异常信息后,自动将状态机的标志状态设置为成圆盘异常状态,也就是磁盘阵列中磁盘的下线状态。
根据磁盘阵列的故障类型从预设冗余时长数据库中获取相应的预设冗余时长,按照预设冗余时长启动定时器进行计时,并通知运维人员已开始进行计时;
状态机自动启动定时器的计时功能,根据磁盘阵列的故障类型从预设冗余时长数据库中获取相应的预设冗余时长,并时刻判断定时器的计时时间与预设冗余时长之间的关系,以通过定时器的计时时间与预设冗余时长之间的关系来判断磁盘阵列所要切换到的运行模式;此外,还要通知运维人员已开始进行计时。
状态机向代理端发送静默请求,并准备模式更改数据;
状态机的定时器启动计时功能后,状态机自动向代理端发送静默请求,并准备模式更改数据。磁盘阵列当前的运行模式为正常运行模式,将要切换到临时运行模式,则需准备正常运行模式切换到临时运行模式的模式更改数据。
代理端执行静默处理,使主机暂停下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待代理端执行静默处理完毕后,向状态机发送静默操作完成消息;
代理端接收到状态机的静默请求后,执行静默处理,即,停掉磁盘阵列正常运行模式下主机下发的输入输出操作,将已下发的输入输出操作加入到静默队列;待静默处理执行完毕后,向状态机返回静默操作完成消息。
状态机将模式更改数据发送至代理端,代理端根据模式更改数据将磁盘阵列的正常运行模式从正常运行模式切换为临时运行模式;
状态机接收到静默操作完成消息后,将模式更改数据发送至代理端,代理端根据模式更改数据对磁盘阵列的运行模式进行切换,将磁盘阵列的正常运行模式切换为临时运行模式,以在临时运行模式下执行输入输出操作,不会断掉业务,有效地提高了磁盘阵列的冗余能力。
将磁盘阵列的正常运行模式切换为临时运行模式的消息发送至状态机,状态机向代理端发送静默恢复请求;
代理端磁盘阵列的正常运行模式切换为临时运行模式后,将磁盘阵列的正常运行模式切换为临时运行模式的消息发送至状态机,状态机接收到该消息后默认磁盘阵列的运行模式切换完毕,然后状态机会向代理端发送静默恢复请求,以恢复静默,磁盘阵列按照切换后的运行模式执行输入输出操作。
代理端执行静默恢复处理,将静默队列中的输入输出操作恢复到正常队列,并使主机继续下发输入输出操作,待输入输出操作在临时运行模式下恢复正常后,将输入输出操作在临时运行模式下恢复正常的消息发送至状态机;
代理端接收到状态机的静默恢复请求后,将静默队列中的输入输出操作在临时运行模式下恢复到正常队列,即,将静默队列中的输入输出操作按照磁盘阵列切换后的运行模式正常执行,并且主机恢复下发输入输出操作,均按照磁盘阵列切换后的运行模式正常执行;待输入输出操作恢复正常后,输入输出操作恢复正常的消息返回状态机。
获取磁盘阵列的运行状态,判断磁盘阵列的运行状态是否恢复正常,且定时器的计时时间是否超过预设冗余时长;
若磁盘阵列的运行状态恢复正常,且定时器的计时时间未超过预设冗余时长,则状态机向代理端发送静默请求,并准备模式更改数据;
状态机的定时器启动计时功能后,状态机自动向代理端发送静默请求,并在需要执行磁盘阵列的运行模式切换前,准备模式更改数据,模式更改数据为将磁盘阵列的临时运行模式切换为正常运行模式的模式更改数据。
代理端执行静默处理,使主机暂停下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待代理端执行静默处理完毕后,向状态机发送静默操作完成消息;
代理端接收到状态机的静默请求后,执行静默处理,即,停掉磁盘阵列临时运行模式下主机下发的输入输出操作,将已下发的输入输出操作加入到静默队列;待静默处理执行完毕后,向状态机返回静默操作完成消息。
状态机将模式更改数据发送至代理端,代理端根据模式更改数据将磁盘阵列的运行模式从临时运行模式切换为正常运行模式;
状态机接收到静默操作完成消息后,将磁盘阵列的临时运行模式切换为正常运行模式的模式更改数据发送至代理端,代理端根据模式更改数据对磁盘阵列的运行模式进行切换,将磁盘阵列的临时运行模式切换为正常运行模式,以恢复正常运行模式,执行输入输出操作,恢复业务处理能力,有效地提高了磁盘阵列的冗余能力。
将磁盘阵列的临时运行模式切换为正常运行模式的消息发送至状态机,状态机向代理端发送静默恢复请求;
代理端磁盘阵列的临时运行模式切换为正常运行模式后,将磁盘阵列的临时运行模式切换为正常运行模式的消息发送至状态机,状态机接收到该消息后默认磁盘阵列的运行模式切换完毕,然后状态机会向代理端发送静默恢复请求,以恢复静默,磁盘阵列按照切换后的正常运行模式执行输入输出操作。
代理端执行静默恢复处理,将静默队列中的输入输出操作恢复到正常队列,并使主机继续下发输入输出操作,待输入输出操作在正常运行模式下恢复正常后,将输入输出操作在正常运行模式下恢复正常的消息发送至状态机;
代理端接收到状态机的静默恢复请求后,将静默队列中的输入输出操作在正常运行模式下恢复到正常队列,即,将静默队列中的输入输出操作按照磁盘阵列切换后的正常运行模式正常执行,并且主机恢复下发输入输出操作,均按照磁盘阵列切换后的正常运行模式正常执行;待输入输出操作恢复正常后,输入输出操作恢复正常的消息返回状态机。
将状态机的标志状态设置为成圆盘正常状态;
此时磁盘阵列的运行状态已恢复正常,且磁盘阵列已恢复至正常运行模式,需将状态机的标志状态设置为成圆盘正常状态。
若磁盘阵列的运行状态未恢复正常,或者定时器的计时时间超过预设冗余时长,则状态机向代理端发送静默请求,并准备模式更改数据;
状态机的定时器启动计时功能后,状态机自动向代理端发送静默请求,并在需要执行磁盘阵列的运行模式切换前,准备模式更改数据,模式更改数据为将磁盘阵列的临时运行模式切换为离线运行模式的模式更改数据。
代理端执行静默处理,使主机停止下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待代理端执行静默处理完毕后,向状态机发送静默操作完成消息;
代理端接收到状态机的静默请求后,执行静默处理,即,停掉磁盘阵列临时运行模式下主机下发的输入输出操作,将已下发的输入输出操作加入到静默队列;待静默处理执行完毕后,向状态机返回静默操作完成消息。
状态机将模式更改数据发送至代理端,代理端根据模式更改数据将磁盘阵列的运行模式从临时运行模式切换为离线运行模式;
状态机接收到静默操作完成消息后,将磁盘阵列的临时运行模式切换为离线运行模式的模式更改数据发送至代理端,代理端根据模式更改数据对磁盘阵列的运行模式进行切换,将磁盘阵列的临时运行模式切换为离线运行模式,以便于停止所有的输入输出操作和业务。
将磁盘阵列的临时运行模式切换为离线运行模式的消息发送至状态机,状态机向代理端发送静默恢复请求;
代理端磁盘阵列的临时运行模式切换为离线运行模式后,将磁盘阵列的临时运行模式切换为离线运行模式的消息发送至状态机,状态机接收到该消息后默认磁盘阵列的运行模式切换完毕,然后状态机会向代理端发送静默恢复请求,以恢复静默,磁盘阵列按照切换后的离线运行模式执行输入输出操作。
代理端执行静默恢复处理,并向主机返回所有输入输出操作请求,断开主机主链路;
代理端接收到状态机的静默恢复请求后,将静默队列中的输入输出操作按照磁盘阵列切换后的离线运行模式执行,即,停止所有的输入输出操作和业务。
将状态机的成圆盘异常状态上报给运维人员。
此时磁盘阵列的运行状态已无法恢复正常,需将状态机的标志状态设置为成圆盘异常状态,并上报给运维人员。
应该理解的是,虽然图1~3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1~3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
实施例三:
参照图4所示,图4为本发明的磁盘阵列冗余***的***结构图。
本实施例的磁盘阵列冗余***,包括:
磁盘管理端,用于实时监测磁盘阵列的运行状态,当磁盘阵列的运行状态异常时,发送异常信息至状态机;
磁盘管理端包括状态监测模块和信息处理模块,状态监测模块用于实时监测磁盘阵列的运行状态,信息处理模块,用于当磁盘阵列的运行状态异常时,发送异常信息至状态机。磁盘阵列会设置冗余磁盘,当磁盘阵列发生故障,使得下线磁盘数量超过冗余磁盘数量时,磁盘阵列的运行状态会处于异常状态,因此要通过状态监测模块对磁盘阵列进行实时监测,以监测磁盘阵列的运行状态。当监测到磁盘阵列的运行状态异常时,通过信息处理模块将磁盘阵列的异常消息发送至状态机,使得状态机启动定时器计时功能。
状态机,用于按照预设冗余时长启动定时器进行计时,向代理端发送静默请求或者静默恢复请求,及判断定时器的计时时间是否超过预设冗余时长;
状态机包括定时器模块、请求处理模块和计时判断模块;定时器模块用于按照预设冗余时长启动定时器进行计时;请求处理模块用于向代理端发送静默请求或者静默恢复请求;计时判断模块用于判断定时器的计时时间是否超过预设冗余时长。通过定时器模块启动定时器计时功能,状态机启动定时器计时功能后,状态机会通过请求处理模块向代理端发送静默请求或者静默恢复请求,使得代理端执行静默处理或者静默恢复处理;输入输出操作在临时运行模式下恢复正常的消息发送至状态机后,需要通过计时判断模块判断定时器的计时时间与预设冗余时长之间的关系,以根据两者的关系确定后续需要切换为正常运行模式或者离线运行模式。
代理端,用于执行静默处理或者静默恢复处理,及切换磁盘阵列的运行模式。
代理端包括静默处理模块和模式切换模块;静默处理模块用于执行静默处理或者静默恢复处理;模式切换模块,用于切换磁盘阵列的运行模式。当接收到状态机发送的静默请求或者静默恢复请求后,静默处理模块执行相应的静默处理或者静默恢复处理;此外,通过模式切换模块根据模式更改数据切换磁盘阵列的运行模式。
在其中一个实施方式中,磁盘阵列冗余***还包括:
信息告警端,用于向运维人员发送告警信息。
通过信息告警端向运维人员发送磁盘阵列的故障信息、定时器计时启动信息、磁盘恢复上线信息及磁盘阵列的运行模式切换信息等。
在其中一个实施方式中,状态机还包括:
状态设置模块,用于设置状态机的标志状态。
通过状态设置模块将状态机的标志状态设置为成圆盘异常状态,或者将状态机的标志状态设置为成圆盘正常状态。
模式数据模块,用于存储磁盘阵列各运行模式的配置数据。
模式更改数据即执行磁盘阵列的运行模式切换时的数据,通过模式数据模块存储磁盘阵列各运行模式的配置数据。
关于磁盘阵列冗余***的具体限定可以参见上文中对于方法的限定,在此不再赘述。上述磁盘阵列冗余***中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
实施例四:
本实施例提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现磁盘阵列冗余***方法的步骤。
该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现磁盘阵列冗余***方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域内的技术人员应明白,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在其中一个实施方式中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
实时监测所述磁盘阵列的运行状态,当监测到所述磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过所述状态机按照预设冗余时长启动定时器进行计时;
所述状态机向代理端发送静默请求,使所述代理端执行静默处理,以暂停所述磁盘阵列的输入输出操作,并通过所述代理端将所述磁盘阵列的正常运行模式切换为临时运行模式;
所述状态机向所述代理端发送静默恢复请求,使所述代理端执行静默恢复处理,以恢复所述磁盘阵列的输入输出操作;
待所述静默恢复处理完毕后,若所述定时器的计时时间未超过所述预设冗余时长,且所述磁盘阵列的运行状态恢复正常,则通过所述代理端将所述磁盘阵列的运行模式切换为正常运行模式。
实施例五:
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
实时监测所述磁盘阵列的运行状态,当监测到所述磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过所述状态机按照预设冗余时长启动定时器进行计时;
所述状态机向代理端发送静默请求,使所述代理端执行静默处理,以暂停所述磁盘阵列的输入输出操作,并通过所述代理端将所述磁盘阵列的正常运行模式切换为临时运行模式;
所述状态机向所述代理端发送静默恢复请求,使所述代理端执行静默恢复处理,以恢复所述磁盘阵列的输入输出操作;
待所述静默恢复处理完毕后,若所述定时器的计时时间未超过所述预设冗余时长,且所述磁盘阵列的运行状态恢复正常,则通过所述代理端将所述磁盘阵列的运行模式切换为正常运行模式。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (14)
1.一种磁盘阵列冗余方法,其特征在于,所述磁盘阵列冗余方法包括:
实时监测所述磁盘阵列的运行状态,当监测到所述磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过所述状态机按照预设冗余时长启动定时器进行计时;
所述状态机向代理端发送静默请求,使所述代理端执行静默处理,以暂停所述磁盘阵列的输入输出操作,并通过所述代理端将所述磁盘阵列的正常运行模式切换为临时运行模式;
所述状态机向所述代理端发送静默恢复请求,使所述代理端执行静默恢复处理,以恢复所述磁盘阵列的输入输出操作;
待所述静默恢复处理完毕后,若所述定时器的计时时间未超过所述预设冗余时长,且所述磁盘阵列的运行状态恢复正常,则通过所述代理端将所述磁盘阵列的运行模式切换为正常运行模式;
其中,所述磁盘阵列的运行状态异常指所述磁盘阵列中处于下线状态的磁盘数量超过冗余磁盘的数量。
2.根据权利要求1所述的磁盘阵列冗余方法,其特征在于,所述当监测到所述磁盘阵列的运行状态异常时,发送异常信息至状态机,以通过所述状态机按照预设冗余时长启动定时器进行计时,包括:
当监测到所述磁盘阵列的运行状态异常时,发送所述异常信息至状态机,并将所述异常信息通知运维人员;
将所述状态机的标志状态设置为成圆盘异常状态,按照所述预设冗余时长启动定时器进行计时,并通知运维人员已开始进行计时。
3.根据权利要求1所述的磁盘阵列冗余方法,其特征在于,所述状态机向代理端发送静默请求,使所述代理端执行静默处理,以暂停所述磁盘阵列的输入输出操作,并通过所述代理端将所述磁盘阵列的正常运行模式切换为临时运行模式,包括:
所述状态机向代理端发送静默请求,并准备模式更改数据;
所述代理端执行静默处理,使主机暂停下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待所述代理端执行所述静默处理完毕后,向所述状态机发送静默操作完成消息;
所述状态机将所述模式更改数据发送至所述代理端,所述代理端根据所述模式更改数据将所述磁盘阵列的运行模式从正常运行模式切换为临时运行模式。
4.根据权利要求2所述的磁盘阵列冗余方法,其特征在于,所述状态机向所述代理端发送静默恢复请求,使所述代理端执行静默恢复处理,以恢复所述磁盘阵列的输入输出操作,包括:
将所述磁盘阵列的正常运行模式切换为临时运行模式的消息发送至所述状态机,所述状态机向所述代理端发送静默恢复请求;
所述代理端执行静默恢复处理,将静默队列中的输入输出操作恢复到正常队列,并使主机继续下发输入输出操作,待所述输入输出操作在所述临时运行模式下恢复正常后,将所述输入输出操作在所述临时运行模式下恢复正常的消息发送至所述状态机。
5.根据权利要求4所述的磁盘阵列冗余方法,其特征在于,所述输入输出操作在所述临时运行模式下恢复正常的消息发送至所述状态机后,还包括:
获取所述磁盘阵列的运行状态,若所述磁盘阵列的运行状态恢复正常,且所述定时器的计时时间未超过所述预设冗余时长,则通过所述代理端将所述磁盘阵列的临时运行模式切换为正常运行模式;
若所述磁盘阵列的运行状态未恢复正常,或者所述定时器的计时时间超过所述预设冗余时长,则通过所述代理端将所述磁盘阵列的临时运行模式切换为离线运行模式。
6.根据权利要求5所述的磁盘阵列冗余方法,其特征在于,所述通过所述代理端将所述磁盘阵列的临时运行模式切换为正常运行模式,包括:
所述状态机向代理端发送静默请求,并准备模式更改数据;
所述代理端执行静默处理,使主机暂停下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待所述代理端执行所述静默处理完毕后,向所述状态机发送静默操作完成消息;
所述状态机将所述模式更改数据发送至所述代理端,所述代理端根据所述模式更改数据将所述磁盘阵列的运行模式从临时运行模式切换为正常运行模式。
7.根据权利要求6所述的磁盘阵列冗余方法,其特征在于,所述通过所述代理端将所述磁盘阵列的临时运行模式切换为正常运行模式,还包括:
将所述磁盘阵列的临时运行模式切换为正常运行模式的消息发送至所述状态机,所述状态机向所述代理端发送静默恢复请求;
所述代理端执行静默恢复处理,将所述静默队列中的输入输出操作恢复到正常队列,并使主机继续下发输入输出操作,待所述输入输出操作在所述正常运行模式下恢复正常后,将所述输入输出操作在所述正常运行模式下恢复正常的消息发送至所述状态机;
将所述状态机的标志状态设置为成圆盘正常状态。
8.根据权利要求5所述的磁盘阵列冗余方法,其特征在于,所述通过所述代理端将所述磁盘阵列的临时运行模式切换为离线运行模式,包括:
所述状态机向代理端发送静默请求,并准备模式更改数据;
所述代理端执行静默处理,使主机停止下发输入输出操作,将已下发的输入输出操作加入到静默队列,并待所述代理端执行所述静默处理完毕后,向所述状态机发送静默操作完成消息;
所述状态机将所述模式更改数据发送至所述代理端,所述代理端根据所述模式更改数据将所述磁盘阵列的运行模式从临时运行模式切换为离线运行模式。
9.根据权利要求8所述的磁盘阵列冗余方法,其特征在于,所述通过所述代理端将所述磁盘阵列的临时运行模式切换为离线运行模式,还包括:
将所述磁盘阵列的临时运行模式切换为离线运行模式的消息发送至所述状态机,所述状态机向所述代理端发送静默恢复请求;
所述代理端执行静默恢复处理,并向主机返回所有输入输出操作请求,断开主机主链路;
将所述状态机的成圆盘异常状态上报给运维人员。
10.根据权利要求1所述的磁盘阵列冗余方法,其特征在于,所述按照预设冗余时长启动定时器进行计时前,还包括:
根据所述磁盘阵列的故障类型、输入输出操作处理时长和磁盘插拔时长确定预设冗余时长数据库。
11.根据权利要求10所述的磁盘阵列冗余方法,其特征在于,所述按照预设冗余时长启动定时器进行计时前,还包括:
根据所述故障类型从所述预设冗余时长数据库中获取相应的预设冗余时长。
12.一种执行如权利要求1~11任一项所述磁盘阵列冗余方法的磁盘阵列冗余***,其特征在于,所述磁盘阵列冗余***包括:
磁盘管理端,用于实时监测所述磁盘阵列的运行状态,当所述磁盘阵列的运行状态异常时,发送异常信息至状态机;
状态机,用于按照预设冗余时长启动定时器进行计时,向代理端发送静默请求或者静默恢复请求,及判断所述定时器的计时时间是否超过所述预设冗余时长;
代理端,用于使所述代理端执行静默处理或者静默恢复处理,及切换所述代理端的运行模式。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1~11中任意一项所述方法的步骤。
14.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质存储有程序,所述程序被处理器执行时,使得所述处理器执行如权利要求1~11中任意一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210895183.2A CN114968129B (zh) | 2022-07-28 | 2022-07-28 | 磁盘阵列冗余方法、***、计算机设备和存储介质 |
PCT/CN2023/109739 WO2024022469A1 (zh) | 2022-07-28 | 2023-07-28 | 磁盘阵列冗余方法、***、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210895183.2A CN114968129B (zh) | 2022-07-28 | 2022-07-28 | 磁盘阵列冗余方法、***、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114968129A CN114968129A (zh) | 2022-08-30 |
CN114968129B true CN114968129B (zh) | 2022-12-06 |
Family
ID=82969538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210895183.2A Active CN114968129B (zh) | 2022-07-28 | 2022-07-28 | 磁盘阵列冗余方法、***、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114968129B (zh) |
WO (1) | WO2024022469A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114968129B (zh) * | 2022-07-28 | 2022-12-06 | 苏州浪潮智能科技有限公司 | 磁盘阵列冗余方法、***、计算机设备和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000293314A (ja) * | 1999-04-05 | 2000-10-20 | Hitachi Ltd | ディスクアレイ装置 |
CN101561773A (zh) * | 2009-06-03 | 2009-10-21 | 成都市华为赛门铁克科技有限公司 | 一种磁盘数据恢复方法及装置 |
CN101609420A (zh) * | 2009-07-17 | 2009-12-23 | 杭州华三通信技术有限公司 | 实现磁盘冗余阵列重建的方法和磁盘冗余阵列及其控制器 |
JP2010244130A (ja) * | 2009-04-01 | 2010-10-28 | Toshiba Corp | ディスクアレイ装置及びディスクアレイ制御方法 |
CN103019894A (zh) * | 2012-12-25 | 2013-04-03 | 创新科存储技术(深圳)有限公司 | 一种独立冗余磁盘阵列的重建方法 |
CN103365605A (zh) * | 2012-03-30 | 2013-10-23 | 富士通株式会社 | 信息存储设备及方法 |
CN110413225A (zh) * | 2019-06-28 | 2019-11-05 | 苏州浪潮智能科技有限公司 | 高可靠集群存储双活配置方法、***、终端及存储介质 |
CN112181298A (zh) * | 2020-09-25 | 2021-01-05 | 杭州宏杉科技股份有限公司 | 阵列访问方法、装置、存储设备及机器可读存储介质 |
CN114020516A (zh) * | 2022-01-05 | 2022-02-08 | 苏州浪潮智能科技有限公司 | 一种异常io处理的方法、***、设备及可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3184171B2 (ja) * | 1998-02-26 | 2001-07-09 | 日本電気株式会社 | ディスクアレイ装置、そのエラー制御方法、ならびにその制御プログラムを記録した記録媒体 |
WO2011132224A1 (en) * | 2010-04-21 | 2011-10-27 | Hitachi,Ltd. | Disk array system and traffic control method |
US8909696B1 (en) * | 2011-11-02 | 2014-12-09 | Google Inc. | Redundant data requests with redundant response cancellation |
CN110908613B (zh) * | 2019-11-28 | 2024-02-23 | 深信服科技股份有限公司 | 一种数据写命令处理方法、装置、电子设备及存储介质 |
CN114968129B (zh) * | 2022-07-28 | 2022-12-06 | 苏州浪潮智能科技有限公司 | 磁盘阵列冗余方法、***、计算机设备和存储介质 |
-
2022
- 2022-07-28 CN CN202210895183.2A patent/CN114968129B/zh active Active
-
2023
- 2023-07-28 WO PCT/CN2023/109739 patent/WO2024022469A1/zh unknown
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000293314A (ja) * | 1999-04-05 | 2000-10-20 | Hitachi Ltd | ディスクアレイ装置 |
JP2010244130A (ja) * | 2009-04-01 | 2010-10-28 | Toshiba Corp | ディスクアレイ装置及びディスクアレイ制御方法 |
CN101561773A (zh) * | 2009-06-03 | 2009-10-21 | 成都市华为赛门铁克科技有限公司 | 一种磁盘数据恢复方法及装置 |
CN101609420A (zh) * | 2009-07-17 | 2009-12-23 | 杭州华三通信技术有限公司 | 实现磁盘冗余阵列重建的方法和磁盘冗余阵列及其控制器 |
CN103365605A (zh) * | 2012-03-30 | 2013-10-23 | 富士通株式会社 | 信息存储设备及方法 |
CN103019894A (zh) * | 2012-12-25 | 2013-04-03 | 创新科存储技术(深圳)有限公司 | 一种独立冗余磁盘阵列的重建方法 |
CN110413225A (zh) * | 2019-06-28 | 2019-11-05 | 苏州浪潮智能科技有限公司 | 高可靠集群存储双活配置方法、***、终端及存储介质 |
CN112181298A (zh) * | 2020-09-25 | 2021-01-05 | 杭州宏杉科技股份有限公司 | 阵列访问方法、装置、存储设备及机器可读存储介质 |
CN114020516A (zh) * | 2022-01-05 | 2022-02-08 | 苏州浪潮智能科技有限公司 | 一种异常io处理的方法、***、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2024022469A1 (zh) | 2024-02-01 |
CN114968129A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6622261B1 (en) | Process pair protection for complex applications | |
CN105302661A (zh) | 一种实现虚拟化管理平台高可用的***和方法 | |
CN102364448A (zh) | 一种计算机故障管理***的容错方法 | |
CN109308242B (zh) | 一种动态监控方法、装置、设备和存储介质 | |
CN112181660A (zh) | 一种基于服务器集群的高可用方法 | |
CN105607973B (zh) | 一种虚拟机***中设备故障处理的方法、装置及*** | |
CN114968129B (zh) | 磁盘阵列冗余方法、***、计算机设备和存储介质 | |
CN110825562B (zh) | 数据备份方法、装置、***和存储介质 | |
CN102369514A (zh) | 一种建立检查点的方法和*** | |
CN111538613B (zh) | 一种集群***异常恢复处理方法及装置 | |
CN115080340A (zh) | 软磁盘阵列监控方法、***、计算机设备和存储介质 | |
JPS5914777B2 (ja) | システム構成方式 | |
JP2012014674A (ja) | 仮想環境における故障復旧方法及びサーバ及びプログラム | |
CN111309515B (zh) | 一种容灾控制方法、装置及*** | |
JP5459389B2 (ja) | コンピュータシステム及び現用系コンピュータ並びに予備系コンピュータ、プログラム | |
JP2008152552A (ja) | 計算機システム及び障害情報管理方法 | |
JP2006114064A (ja) | 記憶サブシステム | |
JPH05314075A (ja) | オンラインコンピュータ装置 | |
JPH07183891A (ja) | 計算機システム | |
JP6856574B2 (ja) | サービス継続システムおよびサービス継続方法 | |
CN102833096A (zh) | 一种低成本的高可用***实现方法及装置 | |
JPH10116261A (ja) | 並列計算機システムのチェックポイントリスタート方法 | |
CN114750774B (zh) | 安全监测方法和汽车 | |
JPH07141308A (ja) | 情報処理システムにおけるバックアップ方法 | |
CN106250255B (zh) | 一种***异常的管理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |