本发明涉及计算机应用技术领域,特别是涉及一种存储设备告警方法、系统及计算机可读存储介质。
背景技术:
随着信息化时代的发展,数据成为一种重要的资源,为此对于数据的存储也变得越来越重要。
对于存储区域网络san中的存储设备来说,其包含了很多的硬件器件和软件模块,一旦存在硬件器件或软件模块出现异常,异常发现不及时,故障无法及时解决,有可能造成数据丢失,从而危及用户所存储的数据的安全。另外,对于除san系统之外的其他系统而言,尽管其存在当存储设备出现异常时进行提示的设备,但是,很有可能用于提示的设备在使用的过程中出现故障,导致对于存储设备的异常不能及时提示。
综上所述,如何有效地解决存储设备异常发现不及时问题,是目前本领域技术人员急需解决的问题。
技术实现要素:
为解决上述技术问题,本发明提供如下技术方案:
一种存储设备告警方法,应用于存储区域网络,所述方法包括:
当本端控制器正常时,所述本端控制器中的第一告警处理器接收通过ipc通道发送的告警信息,并根据所述告警信息进行告警处理;
当所述本端控制器异常时,对端控制器中的第二告警处理器接收通过rpc通道发送的所述告警信息,并根据所述告警信息进行告警处理。
在本发明的一种具体实施方式中,在所述本端控制器中的第一告警处理器接收通过ipc通道发送的告警信息或所述对端控制器中的第二告警处理器接收通过rpc通道发送的所述告警信息之后,所述根据所述告警信息进行告警处理之前,还包括:
根据所述告警信息,确定对应的告警方式;
所述根据所述告警信息进行告警处理,包括:
根据所述告警信息利用对应的告警方式进行告警处理。
在本发明的一种具体实施方式中,在所述根据所述告警信息进行告警处理之后,还包括:
所述第一告警处理器或所述第二告警处理器将告警日志进行记录。
一种存储设备告警系统,应用于存储区域网络,所述系统包括内置有第一告警处理器的本端控制器、内置有第二告警处理器的对端控制器及与所述第一告警处理器和所述第二告警处理器分别相连的告警器,其中:
所述第一告警处理器,用于当所述本端控制器正常时,接收通过ipc通道发送的告警信息,并根据所述告警信息进行告警处理;
所述第二告警处理器,用于当所述本端控制器异常时,接收通过rpc通道发送的所述告警信息,并根据所述告警信息进行告警处理;
所述告警器,用于接收所述第一告警处理器和所述第二告警处理器发送的告警指令,并根据所述告警指令进行告警。
在本发明的一种具体实施方式中,所述第一告警处理器,还用于在所述接收通过ipc通道发送的告警信息之后,所述根据所述告警信息进行告警处理之前,根据所述告警信息,确定对应的告警方式;
所述第二告警处理器,还用于在所述接收通过rpc通道发送的所述告警信息之后,所述根据所述告警信息进行告警处理之前,根据所述告警信息,确定对应的告警方式;
所述第一告警处理器,具体用于当所述本端控制器正常时,根据所述告警信息利用对应的告警方式进行告警处理;
所述第二告警处理器,具体用于当所述本端控制器异常时,根据所述告警信息利用对应的告警方式进行告警处理。
在本发明的一种具体实施方式中,所述第一告警处理器,还用于当所述本端控制器正常时,在所述根据所述告警信息进行告警处理之后,将告警日志进行记录;
所述第二告警处理器,还用于当所述本端控制器异常时,在所述根据所述告警信息进行告警处理之后,将告警日志进行记录。
在本发明的一种具体实施方式中,还包括:
内置于所述本端控制器且与所述第一告警处理器和所述第二告警处理器分别相连的机框管理器,用于根据监测到的硬件监控对象的异常信息的类别,生成对应的告警信息;
其中,所述异常信息的类别包括温度异常信息、链路异常信息、风扇转速异常信息和硬盘异常信息。
在本发明的一种具体实施方式中,所述机框管理器,具体用于根据监测到的硬件监控对象的异常信息的类别,确定对应的预设告警语言;生成利用所述预设告警语言编写的告警信息。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述存储设备告警方法的步骤。
应用本发明实施例所提供的技术方案,应用于存储区域网络,当本端控制器正常时,本端控制器中的第一告警处理器接收通过ipc通道发送的告警信息,并根据告警信息进行告警处理,当本端控制器异常时,对端控制器中的第二告警处理器接收通过rpc通道发送的告警信息,并根据告警信息进行告警处理。通过在本端控制器正常时,调用告警接口通过ipc通道将告警信息发送给本端控制器中的第一告警处理器,通过本端控制进行告警处理,当本端控制器异常时,调用告警接口通过rpc通道将告警信息发送给对端控制器中的第二告警处理器,通过对端控制器进行告警处理。当存储设备存在异常时,可以双重保证及时告知用户,方便用户利用充足的时间修复故障,保证了数据的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种存储设备告警方法的实施流程图;
图2为本发明实施例中一种存储设备告警系统的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,为本发明实施例中一种存储设备告警方法的实施流程图,该方法可以包括以下步骤:
s101:当本端控制器正常时,本端控制器中的第一告警处理器接收通过ipc通道发送的告警信息,并根据告警信息进行告警处理。
当存储区域网络san的存储设备中某个硬件器件或软件模块的状态发生异常变化时,可以及时监测到异常信息。当监测到异常信息时,说明存储设备中存在出现异常的硬件器件或软件模块。在这种情况下,可以根据监测到的异常信息,生成告警信息。
存储区域网络的存储设备一般为双控存储或多控存储,因此存储设备中一般包含多个控制器。存储设备由很多软件模块和硬件器件构成,有些模块或器件是内置于存储设备的控制器中的,如风扇、温度传感器、湿度传感器等,有些模块或器件是独立于存储设备中的控制器的,如机箱、背板、电源、电池、电压、硬盘、独立冗余磁盘阵列raid(redundantarraysofindependentdisks)、逻辑单元号lun(logicunitnumber)等。存储设备中的每个被监控的软件模块或硬件器件都存在与其相连的本端控制器,对于内置于控制器中的软件监控对象或硬件监控对象,其本端控制器为承载它的控制器本身,对于独立于控制器的模块或器件,其本端控制器可以是存储设备中的任意一个控制器,也可以是指定某一个服务器为其本端服务器,本发明实施例对此不做限定。
raid算法有raid0,raid1,raid5,raid6,raid10等。
lun是存储系统提供出来供用户使用的空间。
当监测到某个硬件器件或软件模块异常,生成告警信息后,可以确定本端控制器是否正常,当本端控制器正常时,可以调用告警接口通过进程间通信ipc通道将告警信息发送给本端控制器中的第一告警处理器,本端控制器直接根据告警信息进行告警处理,如可以通过蜂鸣器、指示灯、电子邮件email等进行告警。告警及时,用户可以第一时间得知模块或器件的异常状态,从而及时对故障进行修复。
告警信息可以为标志硬件器件出现异常或软件模块出现异常的告警信息。
需要说明的是,可以实时地对存储设备中的各被监控的硬件器件和软件模块进行监测,也可以预先设定相邻两次监测的时间间隔,每达到设定的时间间隔时,对各被监控的硬件器件和软件模块进行一次监测。
具体的可以通过内置于本端控制器中的机框管理器对被监控的各硬件器件进行监控,当机框管理器监测到存在被监控的硬件器件异常时,生成告警信息,当本端控制器正常时,将告警信息通过ipc通道发送给本端控制器中的第一告警处理器。当本端控制器异常时,将告警信息通过rpc通道发送给对端控制器中的第二告警处理器。
s102:当本端控制器异常时,对端控制器中的第二告警处理器接收通过rpc通道发送的告警信息,并根据告警信息进行告警处理。
存储设备中被监控的每个软件模块和硬件器件除存在与其相连的本端控制器外,还存在与其对应的本端控制器相连的对端控制器,生成告警信息后,若本端控制器处于异常状态,可以调用告警接口通过远程过程调用rpc通道将告警信息发送给对端控制器中的第二告警处理器,对端控制器根据告警信息进行告警处理。在这种情况下,可以保证存在某个被监控的软件模块或硬件器件异常时,不管本端控制器是否正常,都能实现对异常信息的告警,使得告警系统更加完善。
当预设的对端控制器异常时,可以重新确定与本端控制器存在网络连接的另外的控制器为新的对端控制器,接替异常对端控制器的任务,对告警信息进行告警处理。
本端控制器或对端控制器异常指的是本端控制器或对端控制器不能进行正常的告警处理操作,也不能进行io数据的读写操作,且不能进行创建、删除等管理类的操作,但是其还是有转发接收到的告警信息的能力的。
应用本发明实施例所提供的方法,应用于存储区域网络,当本端控制器正常时,本端控制器中的第一告警处理器接收通过ipc通道发送的告警信息,并根据告警信息进行告警处理,当本端控制器异常时,对端控制器中的第二告警处理器接收通过rpc通道发送的告警信息,并根据告警信息进行告警处理。通过在本端控制器正常时,调用告警接口通过ipc通道将告警信息发送给本端控制器中的第一告警处理器,通过本端控制进行告警处理,当本端控制器异常时,调用告警接口通过rpc通道将告警信息发送给对端控制器中的第二告警处理器,通过对端控制器进行告警处理。当存储设备存在异常时,可以双重保证及时告知用户,方便用户利用充足的时间修复故障,保证了数据的安全性。
在本发明的一种具体实施方式中,在本端控制器中的第一告警处理器接收通过ipc通道发送的告警信息或对端控制器中的第二告警处理器接收通过rpc通道发送的告警信息之后,根据告警信息进行告警处理之前,该方法还可以包括以下步骤:
根据告警信息,确定对应的告警方式;
根据告警信息进行告警处理,包括:
根据告警信息利用对应的告警方式进行告警处理。
可以根据告警信息,预先设置其对应的告警方式,常见的告警方式有三种,蜂鸣器、指示灯、电子邮件email。可以对每个器件设置告警方式的开关,通过设置默认的开关状态,设置各种报警方式的使能状态。当本端控制器中的第一告警处理器或对端控制器中的第二告警处理器接收到告警信息时,可以确定对应的预先设置的告警方式,并利用对应的告警方式进行告警处理。
可以根据存储设备中存在的硬件器件,对其可能出现的异常信息进行分类,如可以分为温度异常信息、链路异常信息、风扇转速异常信息和硬盘异常信息等。并可以针对同一类别的异常信息设定具有类似特点的告警信息。当然也可以是根据其他特点将其进行分类,本发明实施例对此不做限定。当接收到异常信息时,可以根据异常信息的类别,生成对应的告警信息,方便用户初步判断是哪个硬件器件出现了异常。
软件模块同样也可以对其可能出现的异常信息进行分类,并针对同一类别的异常信息设定具有类似特点的告警信息。
该存储设备可以支持多国语言的告警信息,针对存储设备中的每个软件模块或硬件器件,可以设定当其发生异常时,生成告警信息所使用的语言种类,当接收到异常信息时,可以根据异常信息的类别,确定对应的预设告警语言,从而生成利用该预设告警语言编写的告警信息。
在本发明的一种具体实施方式中,在根据告警信息进行告警处理之后,该方法还可以包括以下步骤:
第一告警处理器或第二告警处理器将告警日志进行记录。
当本端控制器中的第一告警处理器或对端控制器中的第二告警处理器根据告警信息进行相应的告警处理后,可以将告警日志记录到相应的文件中,方便用户或管理人员通过查看日志对暂时性的异常信息进行分析,如可以将蜂鸣器记录到/var/log/alarm_beep.log,指示灯记录到/var/log/alarm_light.log,email记录到/var/log/alarm_email.log。
相应于上面的方法实施例,本发明实施例还提供了一种存储设备告警系统,应用于存储区域网络,下文描述的一种存储设备告警系统与上文描述的一种存储设备告警方法可相互对应参照。
参见图2,该系统可以包括内置有第一告警处理器101的本端控制器100、内置有第二告警处理器201的对端控制器200及与第一告警处理器101和第二告警处理器201分别相连的告警器300,其中:
第一告警处理器101,用于当本端控制器100正常时,接收通过ipc通道发送的告警信息,并根据告警信息进行告警处理;
第二告警处理器201,用于当本端控制器100异常时,接收通过rpc通道发送的告警信息,并根据告警信息进行告警处理;
告警器300接收第一告警处理器101和第二告警处理器201发送的告警指令,并根据告警指令进行告警。
应用本发明实施例所提供的系统,应用于存储区域网络,当本端控制器正常时,本端控制器中的第一告警处理器接收通过ipc通道发送的告警信息,并根据告警信息进行告警处理,当本端控制器异常时,对端控制器中的第二告警处理器接收通过rpc通道发送的告警信息,并根据告警信息进行告警处理。通过在本端控制器正常时,调用告警接口通过ipc通道将告警信息发送给本端控制器中的第一告警处理器,通过本端控制进行告警处理,当本端控制器异常时,调用告警接口通过rpc通道将告警信息发送给对端控制器中的第二告警处理器,通过对端控制器进行告警处理。当存储设备存在异常时,可以双重保证及时告知用户,方便用户利用充足的时间修复故障,保证了数据的安全性。
在本发明的一种具体实施方式中,第一告警处理器101,还用于在接收通过ipc通道发送的告警信息之后,根据告警信息进行告警处理之前,根据告警信息,确定对应的告警方式;
第二告警处理器201,还用于在接收通过rpc通道发送的告警信息之后,根据告警信息进行告警处理之前,根据告警信息,确定对应的告警方式;
第一告警处理器101,具体用于当本端控制器100正常时,根据告警信息利用对应的告警方式进行告警处理;
第二告警处理器201,具体用于当本端控制器100异常时,根据告警信息利用对应的告警方式进行告警处理。
在本发明的一种具体实施方式中,第一告警处理器101,还用于当本端控制器100正常时,在根据告警信息进行告警处理之后,将告警日志进行记录;
第二告警处理器201,还用于当本端控制器100异常时,在根据告警信息进行告警处理之后,将告警日志进行记录。
在本发明的一种具体实施方式中,该系统还包括:
内置于本端控制器100且与第一告警处理器101和第二告警处理器201分别相连的机框管理器102,用于根据监测到的硬件监控对象的异常信息的类别,生成对应的告警信息;
其中,异常信息的类别包括温度异常信息、链路异常信息、风扇转速异常信息和硬盘异常信息。
在本发明的一种具体实施方式中,机框管理器102,具体用于根据监测到的硬件监控对象的异常信息的类别,确定对应的预设告警语言;生成利用预设告警语言编写的告警信息。
相应于上面的方法实施例,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:
当本端控制器正常时,本端控制器中的第一告警处理器接收通过ipc通道发送的告警信息,并根据告警信息进行告警处理;
当本端控制器异常时,对端控制器中的第二告警处理器接收通过rpc通道发送的告警信息,并根据告警信息进行告警处理。
该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本申请提供的计算机可读存储介质的介绍请参照上述方法实施例,本申请在此不做赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的系统及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。