CN103049345A - 基于异步通信机制的磁盘状态变迁检测方法及装置 - Google Patents

基于异步通信机制的磁盘状态变迁检测方法及装置 Download PDF

Info

Publication number
CN103049345A
CN103049345A CN2012105308378A CN201210530837A CN103049345A CN 103049345 A CN103049345 A CN 103049345A CN 2012105308378 A CN2012105308378 A CN 2012105308378A CN 201210530837 A CN201210530837 A CN 201210530837A CN 103049345 A CN103049345 A CN 103049345A
Authority
CN
China
Prior art keywords
disk
event
data
information
preset field
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.)
Granted
Application number
CN2012105308378A
Other languages
English (en)
Other versions
CN103049345B (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201210530837.8A priority Critical patent/CN103049345B/zh
Publication of CN103049345A publication Critical patent/CN103049345A/zh
Application granted granted Critical
Publication of CN103049345B publication Critical patent/CN103049345B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提出一种基于异步通信机制的磁盘状态变迁检测方法,包括以下步骤:注册磁盘阵列RAID卡的event事件以及回调函数;利用回调函数获取event事件的数据;对event事件的数据进行过滤以判断是否具有至少一个预设字段,如果具有至少一个预设字段,则判定磁盘发生状态变迁;对event事件的数据进行分析以获取磁盘的定位信息,据此获取发生状态变迁的磁盘的位置。本发明的实施例可以动态实时的监控RAID卡下磁盘的状态变化和其他的一些故障报错,可以在第一时间处理问题,提高效率,并且降低数据毁坏,系统宕机的风险。本发明还提出了一种基于异步通信机制的磁盘状态变迁检测装置。

Description

基于异步通信机制的磁盘状态变迁检测方法及装置
技术领域
本发明涉及信息存储技术领域,特别涉及一种基于异步通信机制的磁盘状态变迁检测方法及装置。 
背景技术
若磁盘存在故障,RAID卡会尝试将磁盘设置到相应的状态模式,如将物理盘从online设置为offline,将逻辑盘从optimal设置为degrade,但RAID(Redundant Arrays of Inexpensive Disks,磁盘阵列)卡不会将这些信息实时地报出来,监控程序必须主动的读取RAID卡的日志,以确认是否发生过故障。 
现有技术通过周期性的检查RAID卡的各个磁盘的状态,或者检查RAID卡中已经存在的事件记录来确定故障磁盘的相关信息。比如设置t时间间隔,每隔t时间进行一次主动的获取过程,通过主动的获取来抓取这t时间段的状态变化事件信息。 
而现有技术存在以下缺点:目前监控程序定期主动检测RAID卡日志中是否存在故障相关的日志,具体是以逻辑盘为单位,检测其包含的物理磁盘是否存在故障。如果是单块磁盘做RAID0,物理磁盘故障后可能导致逻辑盘消失,监控程序就无法定位故障的物理磁盘。对于其它级别或类型的RAID阵列,监控程序不能及时的发现磁盘故障和或者有效故障信息,这些都给故障处理带来不便。 
发明内容
本发明旨在至少解决上述技术问题之一。 
为此,本发明的一个目的在于提出一种能够动态实时的监控RAID卡下磁盘的状态变化的基于异步通信机制的磁盘状态变迁检测方法,具有处理故障快,且能够降低数据损坏及系统宕机的风险的优点。 
本发明的另一目的在于提出一种基于异步通信机制的磁盘状态变迁检测装置。 
为了实现上述目的,本发明第一方面的实施例提出了一种基于异步通信机制的磁盘状态变迁的检测方法,包括以下步骤:注册磁盘阵列RAID卡的event事件以及回调函数;利用所述回调函数获取所述event事件的数据;对所述event事件的数据进行过滤以判断所述event事件的数据中是否具有至少一个预设字段,其中,所述至少一个预设字段记录有磁盘状态的变迁信息;如果所述event事件的数据中具有至少一个预设字段,则判定所述磁盘发生状态变迁;以及对所述event事件的数据进行分析以获取所述磁盘的定位信息,根据所述定位信息及所述变迁信息获取发生状态变迁的磁盘的位置。 
根据本发明实施例的基于异步通信机制的磁盘状态变迁检测方法,能够动态实时的监控RAID卡下磁盘的状态变化和其他的一些故障报错,从而可以在第一时间处理故障,从而减少从故障发生到故障处理所使用的容错响应时间,也降低数据损坏,系统宕机的风险,间接的提高了磁盘的工作效率。 
另外,根据本发明上述实施例的基于异步通信机制的磁盘状态变迁检测方法还可以具有如下附加的技术特征: 
在本发明的实施例中,利用守护进程注册所述磁盘阵列RAID卡的event事件,其中,所述守护进程常驻内存。 
在本发明的实施例中,所述event事件的数据存储于缓冲区中。 
在本发明的实施例中,所述预设字段包括:Optimal、Partially Degraded、Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild中的一个或多个。 
在本发明的实施例中,所述变迁信息记录所述磁盘的原始状态和变化状态。 
在本发明的实施例中,所述定位信息包括所述磁盘的槽位信息和设备标识信息。 
在本发明的实施例中,在获取发生状态变迁的磁盘的位置后,还包括如下步骤:查找到发生状态变迁的磁盘,对所述磁盘执行检查以判断所述磁盘发生故障的类型。 
在本发明的实施例中,所述磁盘阵列RAID卡为单块磁盘的RAID0磁盘阵列。 
本发明第二方面的实施例还提出了一种基于异步通信机制的磁盘状态变迁检测装置,包括:注册模块,用于注册所述磁盘阵列RAID卡的event事件以及回调函数;获取模块,用于利用所述回调函数获取所述event事件的数据;判断模块,用于对所述event事件的数据进行过滤以判断所述event事件的数据中是否具有至少一个预设字段,其中,所述至少一个预设字段记录有磁盘状态的变迁信息,且当所述event事件的数据中具有至少一个预设字段时判定所述磁盘发生状态变迁;以及定位模块,用于对所述event事件的数据进行分析以获取所述磁盘的定位信息,并根据所述定位信息及所述变迁信息获取发生状态变迁的磁盘的位置。 
根据本发明实施例的基于异步通信机制的磁盘状态变迁检测装置,能够动 态实时的监控RAID卡下磁盘的状态变化和其他的一些故障报错,从而可以在第一时间处理故障,从而减少从故障发生到故障处理所使用的容错响应时间,也降低数据损坏,系统宕机的风险,间接的提高了磁盘的工作效率。 
另外,根据本发明上述实施例的基于异步通信机制的磁盘状态变迁检测装置还可以具有如下附加的技术特征: 
在本发明的实施例中,所述注册模块通过守护进程注册所述磁盘阵列RAID卡的event事件,其中,所述守护进程常驻内存。 
在本发明的实施例中,所述event事件的数据存储于缓冲区中。 
在本发明的实施例中,所述预设字段包括:Optimal、Partially Degraded、Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild中的一个或多个。 
在本发明的实施例中,所述变迁信息记录所述磁盘的原始状态和变化状态。 
在本发明的实施例中,所述定位信息包括所述磁盘的槽位信息和设备标识信息。 
在本发明的实施例中,所述装置还包括故障判断模块,用于在所述定位模块获取发生状态变迁的磁盘的位置后,查找到发生状态变迁的磁盘,并对所述磁盘执行检查以判断所述磁盘发生故障的类型。 
在本发明的实施例中,所述磁盘阵列RAID卡为单块磁盘的RAID0磁盘阵列。 
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。 
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中: 
图1为根据本发明一个实施例的基于异步通信机制的磁盘状态变迁检测方法的流程图; 
图2为根据本发明另一个实施例的基于异步通信机制的磁盘状态变迁检测方法的流程图; 
图3为根据本发明一个实施例的基于异步通信机制的磁盘状态变迁检测装置的结构图;和 
图4为根据本发明另一个实施例的基于异步通信机制的磁盘状态变迁检测装置的结构图 
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。 
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。 
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安 装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。 
以下结合附图1-2详细描述根据本发明实施例的基于异步通信机制的磁盘状态变迁检测方法。 
如图1所示,根据本发明一个实施例的基于异步通信机制的磁盘状态变迁检测方法,包括以下步骤: 
步骤S101,注册磁盘阵列RAID卡的event事件及回调函数。 
首先确定相关的回调函数,设置需要处理的event事件序列中的部分,其次注册event事件,利用守护进程注册RAID卡的event事件,其中,守护进程常驻内存。具体而言,由于event事件的回调函数随时都可能被调用,所以要使用守护进程常驻内存,从而保证我们注册的回调函数可以实时的响应event事件。在本发明的一个实施例中,优选地,磁盘阵列RAID卡为单块磁盘的RAID0的磁盘阵列。 
步骤S102,利用回调函数获取event事件的数据,即信息。 
使用异步通信机制来获取RAID卡的信息,不用主动的去轮询相关的event事件的序列即RAID卡的log,当有事件发生的时候,RAID卡会调用事先注册好的回调函数来处理相关的事件信息。在本方案中,在回调函数中每次只获取最近的一次event事件的信息(也可以处理指定的一个历史event事件),这样即可以达到实时处理的效果。同时设置回调函数接受event事件的具体内容,并把相关的内容存储到一个缓冲区(buffer)中。 
步骤S103,对event事件的数据进行过滤以判断event事件的数据中是否 具有至少一个预设字段,其中,至少一个预设字段记录有磁盘状态的变迁信息。 
对缓冲区(buffer)中的event事件的数据进行过滤并判断是否包含至少一个预设字段。其中,预设字段包括:Optimal、Partially Degraded、Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild中的一个或多个。变迁信息记录磁盘的原始状态和变化状态。 
步骤S104,如果event事件的数据中具有至少一个预设字段,则判定磁盘发生状态变迁。即对缓冲区(buffer)中的event事件的数据进行过滤后判断至少包含Optimal、Partially Degraded、Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild中的一个或多个时,则判定磁盘发生了状态变迁。 
步骤S 105,对event事件的数据进行分析以获取磁盘的定位信息,根据定位信息及变迁信息获取发生状态变迁的磁盘的位置。 
其中,定位信息包括磁盘的槽位信息和设备标识信息。进一步地,在获取发生状态变迁的磁盘的位置后,查找到发生状态变迁的磁盘,对磁盘执行检查以判断磁盘发生故障的类型。具体而言,在获取了磁盘的状态变迁信息之后,再从缓冲区(buffer)中获取相关的磁盘定位信息,例如磁盘的槽位信息和设备标识信息等,最后通过这些信息,实时准确的报出RAID卡具体哪块磁盘发生了故障,并把这些信息传输给需要的程序或者显示出来,从而判定故障的类型,以便能够及时处理。 
在上述示例中,首先确定相关的回调函数,设置需要处理的event事件序列中的部分,其次利用守护进程注册磁盘阵列RAID卡的event事件,最后对缓冲区(buffer)中的event事件的数据进行过滤处理,获取磁盘状态变迁的信息,进一步地获取故障磁盘的定位信息,并通过检查判定故障的类型,从而做 到了实时准确的监测RAID卡下磁盘的状态变化,并能够及时的处理故障,间接地提高了磁盘的工作效率。 
图2为根据本发明另一个实施例的基于异步通信机制的磁盘状态变迁检测方法的流程图。 
如图2所示,根据本发另一个实施例的基于异步通信机制的磁盘状态变迁检测方法,包括以下步骤: 
步骤S201,注册RAID卡event事件。 
即首先确定相关的回调函数,设置需要处理的event事件序列中的部分。其次,使用守护进程对RAID卡的event事件进行注册,由于event事件的回调函数随时都可能被调用,所以守护进程常驻内存,从而保证注册的回调函数可以实时的响应event事件。其中,RAID卡为单块磁盘的RAID0磁盘阵列。 
步骤S202,磁盘状态是否发生变迁。即判断磁盘状态是否发生变迁,如果是则执行步骤S203,否则继续执行步骤S202。 
具体地,从缓冲区(buffer)中对event事件的数据进行过滤,获取其中有关磁盘状态变迁的关键字段,例如:Optimal、Partially Degraded、Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild等等,如果event事件的数据包含这些关键字段中的一个或者多个时,则判定磁盘状态发生变迁。 
步骤S203,收集变迁的信息、磁盘原始的状态和变化状态。 
在获取磁盘的变迁信息之后,根据变迁信息获取磁盘的初始状态和变化状态,进一步获取相关磁盘的定位信息,如磁盘的槽位信息(slot),设备标识信息(device id)等,通过这些信息,查找出具体哪块磁盘发生故障。 
步骤S204,对磁盘执行检查,并进行相应的处理。 
对发生故障的磁盘进行检查,判断故障的类型,并对故障磁盘进行修复或者重新换盘,没有故障的磁盘继续使用。 
根据本发明实施例的基于异步通信机制的磁盘状态变迁检测方法,能够动态实时的监控RAID卡下磁盘的状态变化和其他的一些故障报错,从而可以在第一时间处理故障,从而减少从故障发生到故障处理所使用的容错响应时间,也降低数据损坏,系统宕机的风险,间接的提高了磁盘的工作效率。 
图3为根据本发明一个实施例的基于异步通信机制的磁盘状态变迁检测装置的结构图。 
如图3所示,根据本发明一个实施例的基于异步通信机制的磁盘状态变迁检测装置300,包括:注册模块310、获取模块320、判断模块330和定位模块340。 
注册模块310用于注册磁盘阵列RAID卡的event事件以及回调函数。其中,注册模块310通过守护进程对磁盘阵列RAID卡的event事件进行注册,且守护进程常驻内存。在本发明的一个实施例中,优选地,磁盘阵列RAID卡为单块磁盘的RAID0磁盘阵列。 
获取模块320用于利用回调函数获取event事件的数据。其中,event事件的数据存储在缓冲区(buffer)中。 
判断模块330用于对event事件的数据进行过滤以判断event事件的数据中是否含有至少一个预设字段,其中,至少一个预设字段记录有磁盘状态的变迁信息,并且当event事件的数据中含有至少一个预设字段时判定磁盘发生状态变迁。具体地,预设字段包括:Optimal、Partially Degraded、Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild中的一个或多个。变迁信息记录所述磁盘的原始状态和变化 状态。 
定位模块340用于对event事件的数据进行分析以获取磁盘的定位信息,并根据定位信息及变迁信息获取发生状态变迁的磁盘的位置。其中,定位信息包括磁盘的槽位信息和设备标识信息。 
进一步地,如图4所示,基于异步通信机制的磁盘状态变迁检测装置300还包括故障判断模块350,用于在定位模块340获取发生状态变迁的磁盘位置后,查找到发生状态变迁的磁盘,并对该磁盘执行检查以判断磁盘发生故障的类型。 
在上述的示例中,首先通过注册模块310确定相关的回调函数,设置需要处理的event事件序列中的部分。其次,注册模块310使用守护进程对RAID卡的event事件进行注册,由于evnet事件的回调函数随时都可能被调用,所以要使用守护进程常驻内存,从而保证注册的回调函数可以实时的响应event事件。然后获取模块320在回调函数中每次只获取最近一次event事件的数据(也可以处理指定的一个历史event事件),这样既可以达到实时处理的效果,同时设置回调函数接受event事件的具体内容,并把相关的内容存放到一个缓冲区(buffer)中。进一步地,判断模块330对event事件的数据进行过滤处理,判断是否包含有关磁盘状态变迁的关键字段,例如:Optimal、(Partially)Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild等等,如果含有关键字段中的一个或者多个时,则判定磁盘发生状态变迁。定位模块340根据获取的磁盘状态变迁信息,从缓冲区(buffer)中获取相关的磁盘的定位信息,例如磁盘的槽位信息(slot),设备标识信息(device id)等,实时准确的查找出RAID卡下具体哪块磁盘发生了故障。最后故障判断模块350将故障磁盘的信息传输给需要的程 序或者显示出来,以对故障磁盘进行检查,从而判定故障的类型,及时进行处理。 
根据本发明实施例的基于异步通信机制的磁盘状态变迁检测装置,能够动态实时的监控RAID卡下磁盘的状态变化和其他的一些故障报错,从而可以在第一时间处理故障,从而减少从故障发生到故障处理所使用的容错响应时间,也降低数据损坏,系统宕机的风险,间接的提高了磁盘的工作效率。 
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。 
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机 可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。 
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。 
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。 
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。 
上述提到的存储介质可以是只读存储器,磁盘或光盘等。 
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体 特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。 
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同限定。 

Claims (16)

1.一种基于异步通信机制的磁盘状态变迁检测方法,其特征在于,包括如下步骤:
注册磁盘阵列RAID卡的event事件以及回调函数;
利用所述回调函数获取所述event事件的数据;
对所述event事件的数据进行过滤以判断所述event事件的数据中是否具有至少一个预设字段,其中,所述至少一个预设字段记录有磁盘状态的变迁信息;
如果所述event事件的数据中具有至少一个预设字段,则判定所述磁盘发生状态变迁;以及
对所述event事件的数据进行分析以获取所述磁盘的定位信息,根据所述定位信息及所述变迁信息获取发生状态变迁的磁盘的位置。
2.如权利要求1所述的方法,其特征在于,利用守护进程注册所述磁盘阵列RAID卡的event事件,其中,所述守护进程常驻内存。
3.如权利要求1所述的方法,其特征在于,所述event事件的数据存储于缓冲区中。
4.如权利要求1所述的方法,其特征在于,所述预设字段包括:Optimal、Partially Degraded、Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild中的一个或多个。
5.如权利要求1所述的方法,其特征在于,所述变迁信息记录所述磁盘的原始状态和变化状态。
6.如权利要求1所述的方法,其特征在于,所述定位信息包括所述磁盘的槽位信息和设备标识信息。
7.如权利要求1-6任一项所述的方法,其特征在于,在获取发生状态变迁的磁盘的位置后,还包括如下步骤:
查找到发生状态变迁的磁盘,对所述磁盘执行检查以判断所述磁盘发生故障的类型。
8.如权利要求1所述的方法,其特征在于,所述磁盘阵列RAID卡为单块磁盘的RAID0磁盘阵列。
9.一种基于异步通信机制的磁盘状态变迁检测装置,其特征在于,包括:
注册模块,用于注册所述磁盘阵列RAID卡的event事件以及回调函数;
获取模块,用于利用所述回调函数获取所述event事件的数据;
判断模块,用于对所述event事件的数据进行过滤以判断所述event事件的数据中是否具有至少一个预设字段,其中,所述至少一个预设字段记录有磁盘状态的变迁信息,且当所述event事件的数据中具有至少一个预设字段时判定所述磁盘发生状态变迁;以及
定位模块,用于对所述event事件的数据进行分析以获取所述磁盘的定位信息,并根据所述定位信息及所述变迁信息获取发生状态变迁的磁盘的位置。
10.如权利要求9所述的装置,其特征在于,所述注册模块通过守护进程注册所述磁盘阵列RAID卡的event事件,其中,所述守护进程常驻内存。
11.如权利要求9所述的装置,其特征在于,所述event事件的数据存储于缓冲区中。
12.如权利要求9所述的装置,其特征在于,所述预设字段包括:Optimal、Partially Degraded、Degraded、Offline、Unconfigured Good、Unconfigured Bad、Online、Failed、Missing、Foreign、Hotspare、Rebuild中的一个或多个。
13.如权利要求9所述的装置,其特征在于,所述变迁信息记录所述磁盘的原始状态和变化状态。
14.如权利要求9所述的装置,其特征在于,所述定位信息包括所述磁盘的槽位信息和设备标识信息。
15.如权利要求9-14任一项所述的装置,其特征在于,还包括故障判断模块,用于在所述定位模块获取发生状态变迁的磁盘的位置后,查找到发生状态变迁的磁盘,并对所述磁盘执行检查以判断所述磁盘发生故障的类型。
16.如权利要求9所述的装置,其特征在于,所述磁盘阵列RAID卡为单块磁盘的RAID0磁盘阵列。
CN201210530837.8A 2012-12-10 2012-12-10 基于异步通信机制的磁盘状态变迁检测方法及装置 Active CN103049345B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210530837.8A CN103049345B (zh) 2012-12-10 2012-12-10 基于异步通信机制的磁盘状态变迁检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210530837.8A CN103049345B (zh) 2012-12-10 2012-12-10 基于异步通信机制的磁盘状态变迁检测方法及装置

Publications (2)

Publication Number Publication Date
CN103049345A true CN103049345A (zh) 2013-04-17
CN103049345B CN103049345B (zh) 2015-11-25

Family

ID=48061994

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210530837.8A Active CN103049345B (zh) 2012-12-10 2012-12-10 基于异步通信机制的磁盘状态变迁检测方法及装置

Country Status (1)

Country Link
CN (1) CN103049345B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106339297A (zh) * 2016-09-14 2017-01-18 郑州云海信息技术有限公司 一种存储系统故障实时告警的方法及系统
CN107046485A (zh) * 2017-06-01 2017-08-15 郑州云海信息技术有限公司 一种远程定位异常设备位置的方法和系统
CN107220009A (zh) * 2017-06-29 2017-09-29 济南浪潮高新科技投资发展有限公司 一种不同厂家raid卡状态信息的统一获取方法和装置
CN107577545A (zh) * 2016-07-05 2018-01-12 北京金山云网络技术有限公司 一种故障磁盘检测与修复方法和装置
CN108984119A (zh) * 2018-06-28 2018-12-11 郑州云海信息技术有限公司 一种异步获取raid卡信息的方法、装置及受控终端
CN115061641A (zh) * 2022-08-16 2022-09-16 新华三信息技术有限公司 一种磁盘故障处理方法、装置、设备以及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020120789A1 (en) * 2001-02-27 2002-08-29 Raidcore Inc. Finite state machine with a single process context for a RAID system
CN101359959A (zh) * 2008-09-17 2009-02-04 中兴通讯股份有限公司 一种用于故障定位分析的信息获取方法
CN102053841A (zh) * 2011-01-06 2011-05-11 国电南京自动化股份有限公司 一种嵌入式主动内存对象数据库的设计方法
CN102314391A (zh) * 2011-05-27 2012-01-11 运软网络科技(上海)有限公司 一种基于硬件基础工具监视虚拟化系统性能的架构及方法
CN102541704A (zh) * 2011-12-31 2012-07-04 曙光信息产业股份有限公司 Raid卡的测试方法
CN102662787A (zh) * 2012-04-20 2012-09-12 浪潮电子信息产业股份有限公司 一种保护系统盘raid的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020120789A1 (en) * 2001-02-27 2002-08-29 Raidcore Inc. Finite state machine with a single process context for a RAID system
CN101359959A (zh) * 2008-09-17 2009-02-04 中兴通讯股份有限公司 一种用于故障定位分析的信息获取方法
CN102053841A (zh) * 2011-01-06 2011-05-11 国电南京自动化股份有限公司 一种嵌入式主动内存对象数据库的设计方法
CN102314391A (zh) * 2011-05-27 2012-01-11 运软网络科技(上海)有限公司 一种基于硬件基础工具监视虚拟化系统性能的架构及方法
CN102541704A (zh) * 2011-12-31 2012-07-04 曙光信息产业股份有限公司 Raid卡的测试方法
CN102662787A (zh) * 2012-04-20 2012-09-12 浪潮电子信息产业股份有限公司 一种保护系统盘raid的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107577545A (zh) * 2016-07-05 2018-01-12 北京金山云网络技术有限公司 一种故障磁盘检测与修复方法和装置
CN107577545B (zh) * 2016-07-05 2021-02-02 北京金山云网络技术有限公司 一种故障磁盘检测与修复方法和装置
CN106339297A (zh) * 2016-09-14 2017-01-18 郑州云海信息技术有限公司 一种存储系统故障实时告警的方法及系统
CN107046485A (zh) * 2017-06-01 2017-08-15 郑州云海信息技术有限公司 一种远程定位异常设备位置的方法和系统
CN107220009A (zh) * 2017-06-29 2017-09-29 济南浪潮高新科技投资发展有限公司 一种不同厂家raid卡状态信息的统一获取方法和装置
CN107220009B (zh) * 2017-06-29 2020-02-14 浪潮集团有限公司 一种不同厂家raid卡状态信息的统一获取方法和装置
CN108984119A (zh) * 2018-06-28 2018-12-11 郑州云海信息技术有限公司 一种异步获取raid卡信息的方法、装置及受控终端
CN115061641A (zh) * 2022-08-16 2022-09-16 新华三信息技术有限公司 一种磁盘故障处理方法、装置、设备以及存储介质
CN115061641B (zh) * 2022-08-16 2022-11-25 新华三信息技术有限公司 一种磁盘故障处理方法、装置、设备以及存储介质

Also Published As

Publication number Publication date
CN103049345B (zh) 2015-11-25

Similar Documents

Publication Publication Date Title
US7409594B2 (en) System and method to detect errors and predict potential failures
CN103207820B (zh) 基于raid卡日志的硬盘的故障定位方法及装置
CN109783262B (zh) 故障数据处理方法、装置、服务器及计算机可读存储介质
CN103049345B (zh) 基于异步通信机制的磁盘状态变迁检测方法及装置
CN103514068A (zh) 内存故障自动定位方法
CN102279775A (zh) 一种Linux系统下的硬盘故障处理方法
CN110704287B (zh) Linux系统下RAID卡异常日志收集方法、系统及存储介质
CN111104293A (zh) 用于支持盘故障预测的方法、设备和计算机程序产品
CN111078515B (zh) Ssd分层日志记录方法、装置、计算机设备及存储介质
CN105223889A (zh) 一种适用于产线的自动监控pmc raid卡日志的方法
US20160110246A1 (en) Disk data management
Huang et al. Characterizing disk health degradation and proactively protecting against disk failures for reliable storage systems
US8843781B1 (en) Managing drive error information in data storage systems
CN111984487A (zh) 一种离机记录故障硬件位置的方法及装置
US9343181B2 (en) Memory module errors
CN104239174A (zh) Bmc远程调试系统及方法
CN111048138A (zh) 一种硬盘的故障检测方法及相关装置
CN1979444A (zh) 保证伺服程序不间断运行的系统及其方法
US8161324B2 (en) Analysis result stored on a field replaceable unit
CN113590405A (zh) 硬盘错误的检测方法、装置、存储介质和电子装置
CN107807862A (zh) 检测硬盘故障点的方法、装置及服务器
CN116501705A (zh) 基于ras的内存信息收集解析方法、系统、设备及介质
CN211603369U (zh) 一种服务器dc掉电故障定位系统
CN111190781A (zh) 服务器系统的测试自检方法
CN117407207B (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