发明名称 一种集成异构存储设备的海量存储系统监控方法
摘要 本发明公开了一种集成异构存储设备的海量存储系统监控方法,要解决的技术问题是解决大规模计算机系统中众多异构存储设备的统一监控问题。技术方案是构建由存储设备信息表、系统配置信息表、监控信息框架、监控客户端、事件获取模块、告警信息映射模块和告警信息过滤模块组成的异构存储设备统一监控系统,该监控系统通过事件获取模块对海量存储系统中异构存储设备进行并行监控,获取各存储设备的监控结果,告警信息映射模块和告警信息过滤模块分别对监控结果进行映射和过滤,监控客户端以统一的格式展示异构存储设备的告警事件信息。采用本发明能保障存储设备的正常运行,减少维护成本,提高监控大规模存储系统中异构存储设备的效率。
申请公布号 CN102638378A 申请公布日期 2012.08.15
申请号 CN201210041078.9 申请日期 2012.02.22
申请人 中国人民解放军国防科学技术大学 发明人 李琼;魏登萍;宋振龙;蒋句平;黄金锋;郑明玲;张鹤颖;张晓明;田宝华;李小芳;邢建英;屈婉霞;李宝峰
分类号 H04L12/26(2006.01)I;H04L12/24(2006.01)I;H04L29/08(2006.01)I 主分类号 H04L12/26(2006.01)I
代理机构 国防科技大学专利服务中心 43202 代理人 郭敏
主权项 一种集成异构存储设备的海量存储系统监控方法,其特征在于包括以下步骤:第一步,构建异构存储设备统一监控系统,异构存储设备统一监控系统通过系统管理网络与大规模计算机系统存储阵列、计算阵列和服务阵列相连;异构存储设备统一监控系统从服务阵列中的监控管理结点获取用户监控请求信息,通过系统管理网络访问存储阵列中的各个异构存储设备控制器并获取存储设备的状态,最后统一汇总并将所请求监控的所有存储设备的监控信息返回给监控管理结点;用户监控请求信息包括用户请求监控的存储设备名称列表、用户请求约束、预警形式;监控信息包括存储设备的IP地址、告警事件的时间、告警事件名称、事件安全等级、相关描述和建议操作;异构存储设备统一监控系统由存储设备信息表、系统配置信息表、监控信息框架、监控客户端、事件获取模块、告警信息映射模块和告警信息过滤模块组成;存储设备信息表记录异构存储设备统一监控系统支持的各种异构存储设备的配置信息,通过监控客户端进行更新和维护;系统配置信息表记录异构存储设备统一监控系统支持的各种异构存储设备的事件获取接口名称,通过监控客户端进行更新和维护;监控信息框架定义了系统中监控信息的描述框架,即统一表示方法,通过监控客户端进行更新和维护;监控客户端是实现监控管理结点对异构存储设备统一监控的软件模块,从监控管理结点接收用户的访问请求,生成用户请求监控的存储设备名称列表并发送给事件获取模块,对异构存储设备监控结果进行展示,并对存储设备信息表、系统配置信息表和监控信息框架进行维护与更新;事件获取模块是负责从监控客户端接收用户请求监控的存储设备名称列表,并获取存储设备运行状态的软件模块;告警信息映射模块负责将告警事件信息与监控信息框架进行映射,使得所有的告警事件信息都具备相同描述框架;告警信息过滤模块负责将告警信息映射模块输出的告警事件信息根据用户请求约束进行过滤,使得监控结果符合用户的要求;存储设备信息表中每一项包括存储设备IP地址、设备类型、设备厂商、存储设备控制器类型ID,存储设备IP地址是指该存储设备在整个计算机系统中分 配得到的地址;设备类型指存储设备的类型;设备厂商指存储设备的生产厂商;存储设备控制器类型ID是唯一标识存储设备控制器类型的标识;系统配置信息表的每一项包括存储设备控制器类型ID和事件获取接口名称,事件获取接口是存储设备控制器提供的访问告警事件信息的接口的名称;监控信息框架由告警事件信息元属性表、事件安全等级库、告警事件信息映射规则表和事件安全等级映射规则表组成;告警事件信息元属性表中存放异构存储设备统一监控系统返回的告警事件信息的元属性信息;事件安全等级库中存放异构存储设备统一监控系统返回的告警事件信息的事件安全等级属性的值;告警事件信息映射规则表记录异构存储设备统一监控系统支持的各种异构存储设备中使用的不同的告警事件信息元属性与告警事件信息元属性表中的元属性的映射规则,表中每一项包括存储设备控制器类型ID和该类存储设备使用的告警事件信息的元属性与告警事件信息元属性表中的元属性的映射规则;事件安全等级映射规则表记录异构存储设备统一监控系统支持的各种异构存储设备中使用的不同的事件安全等级到监控信息框架中的事件安全等级的映射规则,表中每一项包括存储设备控制器类型ID和该类存储设备使用的不同的事件安全等级到监控信息框架中的事件安全等级的映射规则;监控客户端是接收从监控管理结点发出的访问请求,生成监控请求信息并展现异构存储设备监控结果的软件模块,是监控管理结点与异构存储设备统一监控系统进行交互的桥梁;监控客户端由用户监控请求信息生成模块、存储设备信息维护模块、系统配置信息维护模块、监控信息框架维护模块和监控信息展现模块组成,与事件获取模块、告警信息过滤模块、系统配置信息表、存储设备信息表和监控信息框架、监控管理结点相连;用户监控请求信息生成模块从监控管理结点获取用户监控请求信息,并将用户选定的要监控的存储设备名称列表发送给事件获取模块,将用户请求约束发送给告警信息过滤模块,将预警形式发送给监控信息展现模块,用户监控请求信息包括存储设备名称ID列表、用户请求约束和预警形式;存储设备名称列表由一个或者多个存储设备的名称组成,且每个存储设备由大规模计算机系统中一个唯一的ID来标识;用户请求约束包括事件安全等级约束和时间约束;事件安全等级约束指定用户感兴趣的告警事件信息的事件 安全等级,具有事件安全等级的集合和紧急程度高于某个事件安全等级两种形式;时间约束为一段时间间隔,时间单位为秒;预警形式指定监控信息的展现形式;监控信息展现模块从告警信息过滤模块接收过滤后的满足用户请求约束的告警事件信息,通过用户界面按照预警形式展示告警事件信息;系统配置信息维护模块是对系统配置信息表进行添加、删除和修改的软件模块;存储设备信息维护模块是对存储设备信息表进行添加、删除和修改的软件模块;监控信息框架维护模块是对监控信息框架进行维护与更新的软件模块,实现对监控信息框架中的告警事件信息元属性表、事件安全等级库、告警事件信息映射规则表和事件安全等级映射规则表的添加、删除和修改操作;事件获取模块与监控客户端、大规模计算机系统中的存储阵列、系统配置信息表、存储设备信息表和告警信息映射模块相连;事件获取模块由一个主进程、若干子进程和告警访问接口应用程序组成,主进程从监控客户端的用户监控请求信息生成模块获取需要监控的存储设备名称列表,根据存储设备名称列表的项数创建相应数目的子进程,每个子进程负责一个存储设备监控信息的获取;每个子进程查找存储设备信息表获得存储设备的IP地址和存储设备控制器类型ID,若存储设备信息表中不存在请求的存储设备表项,则表示异构存储设备统一监控系统不支持对该存储设备的监控,将监控失败信息返回给监控客户端的监控信息展现模块;若存储设备信息表中存在请求的存储设备表项,表示异构存储设备统一监控系统支持该存储设备的监控,则从存储设备信息表中取出请求监控的存储设备的IP地址,再查找系统配置信息表获得存储设备控制器中的事件获取接口名称,并调用告警访问接口应用程序获取告警事件信息;告警访问接口应用程序是负责获取具体存储设备告警事件信息的软件模块,它根据存储设备的IP地址访问存储设备中的事件获取接口获取相应存储设备的告警事件信息,将告警事件信息返回给子进程;主进程将所有子进程获得的存储设备的告警事件信息返回给告警信息映射模块;告警信息映射模块与事件获取模块、监控信息框架和告警信息过滤模块相连,它从事件获取模块获取从存储设备获取的告警事件信息,将告警事件信息与告警事件信息元属性表中的元属性表示的告警事件信息进行映射,使得所有的告警事件信息都具备相同的描述框架,并将映射后的告警事件信息返回给告警信息 过滤模块;告警信息映射模块由告警事件信息映射模块和事件安全等级映射模块组成;告警事件信息映射模块按照告警事件信息映射规则表中的告警事件信息映射规则将异构存储设备返回的不同告警事件信息体系下的告警事件信息与告警事件信息元属性表中的元属性表示的告警事件信息进行映射,将异构存储设备返回的告警事件信息转化为元属性信息表示的告警事件信息,输出给事件安全等级映射模块;事件安全等级映射模块按照事件安全等级映射规则表中的事件安全等级映射规则将异构存储设备返回的告警事件信息中的不同事件安全等级体系下的事件安全等级与事件安全等级库中的事件安全等级进行映射,将异构存储设备返回的所有告警事件信息的事件安全等级的值转换为事件安全等级属性的值,输出给告警信息过滤模块;告警信息过滤模块与告警信息映射模块和监控客户端相连,告警信息过滤模块收到告警信息映射模块输出的映射后的告警事件信息后,从监控客户端获取用户监控请求中的用户请求约束,包括事件安全等级约束和时间约束,依次针对这两类约束信息对告警事件信息进行过滤;告警信息过滤模块过滤出满足事件安全等级约束的告警事件信息;若事件安全等级约束为事件安全等级的集合时,告警信息过滤模块过滤出具有事件安全等级约束中列举的相应事件安全等级的告警事件信息;若事件安全等级约束为紧急程度高于某个事件安全等级时,告警信息过滤模块首先根据事件安全等级的紧急程度排序获取高于某个事件安全等级所有事件安全等级的集合,再过滤出具有该集合中包含的相应事件安全等级的告警事件信息;告警信息过滤模块只将时间约束间隔内的告警事件信息返回给监控客户端;第二步,异构存储设备统一监控系统对海量存储系统中异构存储设备进行统一监控,具体方法为:2.1.启动异构存储设备统一监控系统,由监控客户端的存储设备信息维护模块提取海量存储系统中所有存储设备的配置信息,并初始化存储设备信息表,表中的每一项初始化为一个存储设备的配置信息;若某个存储设备对应的存储设备信息表项中的某些元素为空,由监控客户端的存储设备信息维护模块提示对该存储设备进行配置,直到所有存储设备对应的存储设备信息表项都不为空;监控 客户端的系统配置信息维护模块检查是否每类存储设备都在系统配置信息表中找到相应的表项,若未找到,则由监控客户端的系统配置信息维护模块对相应类型的存储设备的相关信息进行配置,即添加相应存储设备类型的系统配置信息,直到每类存储设备都在系统配置信息表中找到相应的表项,且对应表项中的所有元素都不为空;监控客户端的监控信息框架维护模块检查监控信息框架中的事件安全等级映射规则表和告警事件信息映射规则表是否为系统配置信息表中出现的每类存储设备都定义了相应的映射规则,若不是,则由监控信息框架维护模块对相应存储设备类型的事件安全等级映射规则表和告警事件信息映射规则表进行配置,即添加相应存储设备类型的事件安全等级映射规则和告警信息映射规则,直到每类存储设备都在事件安全等级映射规则表和告警事件信息映射规则表中找到相应的表项,且对应表项中的所有元素都不为空;2.2.监控客户端的用户监控请求信息生成模块判断是否有监控管理结点发送过来的用户请求,若有,执行步骤2.3,否则转步骤2.2继续等待;2.3.监控客户端的用户监控请求信息生成模块判断用户请求的类型,若为用户监控请求,执行步骤2.4;若为退出异构存储设备统一监控系统请求,执行步骤2.3.1;若为维护存储设备信息表请求,执行步骤2.3.2;若为维护系统配置信息表请求,执行步骤2.3.3;若为维护监控信息框架请求,执行步骤2.3.4;2.3.1.退出异构存储设备统一监控系统,结束;2.3.2.存储设备信息维护模块根据用户的输入对存储设备信息表中的信息进行添加、删除和修改,转步骤2.2;2.3.3.系统配置信息维护模块根据用户的输入对系统配置信息表中的信息进行添加、删除和修改,转步骤2.2;2.3.4.监控信息框架维护模块根据用户的输入对监控信息框架中的告警事件信息元属性表、事件安全等级库进行添加、删除和修改,并对每类存储设备的事件安全等级映射规则和告警事件信息映射规则进行添加、删除和修改,转步骤2.2;2.4.监控客户端的用户监控请求信息生成模块读取存储设备信息表,获取所 监控海量存储系统中的存储设备名称列表,供用户选择;2.5.用户监控请求信息生成模块获取用户从存储设备名称列表中选择的需要监控的存储设备和用户指定的用户请求约束和预警形式,生成需要监控的请求信息,将需要监控的存储设备名称列表发送给事件获取模块,将预警形式发送给监控信息展现模块,并将用户请求约束发送给告警信息过滤模块,执行步骤2.6;2.6.事件获取模块从监控客户端的用户监控请求信息生成模块获取需要监控的存储设备名称列表,收集监控信息,并将获取的监控信息发送给告警信息映射模块,流程是:2.6.1.主进程从需要监控的存储设备名称列表中读取需要监控的存储设备,并为表中每一个存储设备创建一个子进程:如果需要监控的存储设备名称列表为空,主进程发送监控失败的信息给监控客户端的监控信息展现模块,主进程结束,转步骤2.9;若需要监控的存储设备名称列表不为空,则根据需要监控的存储设备名称列表中存储设备的数目创建相应数目的子进程,执行步骤2.6.2;2.6.2.子进程根据请求监控的存储设备的名称,查找存储设备信息表获取存储设备的IP地址和存储设备控制器类型ID;判断存储设备信息表中的IP地址、存储设备控制器类型ID是否为空,若有一个属性为空,则将存储设备信息不全的信息返回给主进程,转步骤2.6.6;若全部不为空,则执行步骤2.6.3;2.6.3.子进程查找系统配置信息表获取对应存储设备控制器类型的事件获取接口名称,若事件获取接口名称为空,则将异构存储设备统一监控系统不支持该类存储设备的监控信息返回给主进程,转步骤2.6.6;若不为空,则执行步骤2.6.4;2.6.4.子进程调用告警访问接口应用程序,并将存储设备控制器的IP地址和步骤2.6.3获取的事件获取接口名称作为参数发送给告警访问接口应用程序;若告警访问接口应用程序启动成功,转步骤2.6.5;若启动不成功,则将监控失败的信息返回子进程,转步骤2.6.6;2.6.5.告警访问接口应用程序通过访问存储设备控制器访问接口获取存储设备的监控信息,具体步骤如下:2.6.5.1.根据存储设备控制器的IP地址,远程登录到该存储设备控制器;2.6.5.2.调用该存储设备控制器中相应的事件获取接口,判断该接口获取告警事件信息是否成功,若成功则执行步骤2.6.5.3;否则重新执行步骤2.6.5.2,直到获取成功或超时;若超时,则将监控失败的信息返回子进程,转步骤2.6.6;2.6.5.3.解析步骤2.6.5.2获取的告警事件信息,抽取告警事件信息中每个属性的值,形成由抽取出的各个属性及其值的二元组组成的告警事件信息;2.6.5.4.告警访问接口应用程序将步骤2.6.5.3获取的告警事件信息返回给子进程,执行步骤2.6.5.5;2.6.5.5.告警访问接口应用程序结束,执行步骤2.6.6;2.6.6.子进程将对应存储设备的监控结果发送给主进程,执行步骤2.6.7;2.6.7.子进程结束,执行步骤2.6.8;2.6.8.主进程获取各个子进程返回的监控结果,若还存在某个子进程未返回监控结果,则主进程等待,直到所有子进程都返回监控结果;主进程获取所有子进程返回的监控结果后将其发送给告警信息映射模块,主进程结束,执行步骤2.7;2.7.告警信息映射模块接收到事件获取模块返回的告警事件信息后,向告警事件信息映射模块导入告警事件信息元属性表中的告警事件信息元属性,向事件安全等级映射模块导入事件安全等级库中的事件安全等级;告警信息映射模块依次对每条告警事件信息进行映射后,将映射后的告警事件信息发送给告警信息过滤模块;2.8.告警信息过滤模块从告警信息映射模块获取映射后的告警事件信息,并根据用户请求约束对其进行过滤;2.9.监控信息展现模块监听告警信息过滤模块发送的过滤后的告警事件信息和事件获取模块发送的监控失败信息,若有,执行步骤2.10,若无,转步骤2.9继续监听;2.10.监控客户端的监控信息展现模块判断接收到信息的类型,若为监控失 败的信息,则在监控界面上显示“本次请求的监控失败”;若为告警信息过滤模块发送的过滤后的告警事件信息,则在监控界面上显示本次监控请求获取的告警事件信息;一次监控请求处理结束,执行步骤2.2。
地址 410073 湖南省长沙市开福区德雅路109号