一种加固服务器健康管理中间件的实现方法
文献发布时间:2023-06-19 11:39:06
技术领域
本发明涉及加固服务器健康管理中间件技术,特别涉及一种加固服务器健康管理中间件的实现方法。
背景技术
加固服务器是一种高度集成的开发环境,随着机箱内计算处理单元及各功能板卡数量的增加,服务器系统对异常事件响应的灵敏度逐渐降低,一旦发生系统故障,故障定位及恢复会比较困难。通过板级管理控制器(BMC)、智能平台管理接口(IPMI)可构建一套独立运行的无代理管理子系统,其并不依赖于服务器的处理器、BIOS或操作系统来工作。IPMI良好的自治特性克服了以往基于操作系统的管理方式所受的限制,例如操作系统不响应或未加载的情况下其仍然可以进行开关机、信息提取等操作。BMC作为独立板卡可采集机箱各板内温度、电压、电流等信息,可实现主动监测系统健康状态、故障告警、日志记录等功能。
发明内容
本发明的目的在于提供一种加固服务器健康管理中间件,用于解决上述现有技术的问题。
本发明一种加固服务器健康管理中间件,其中,包括:主BMC模块以及从BMC模块均各自部署内部资源数据采集模块以及传感器数据采集模块;主BMC模块还进一步部署通信模块、系统管理模块、告警模块以及智能决策模块;内部资源数据采集模块,控制自身的BMC模块以串口方式与主板上的平台管理工具进行交互;所述传感器数据采集模块,控制自身的BMC模块通过其固件采集传感器数据;所述系统管理模块,对内部资源数据管理模块和传感器数据管理模块采集到的性能、资源信息进行统一管理;所述通信模块,将系统级健康数据按照约定的协议进行封装,定期通过报文发送至上层应用软件;所述告警模块,根据用户的配置设置告警阈值和告警策略,在每次收到从BMC模块返回的数据后,根据当前阈值对从BMC模块返回的数据进行比对,对超出阈值的数据进行标记并记录在日志中;所述智能决策模块,对每次获取的系统级健康数据中的风机数据进行保存形成历史数据,根据事先建立好的风机寿命预测模型,以历史数据为输入,预测风机寿命,寿命等级,为维护人员提供辅助维护决策。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,位于交换单元的BMC为主BMC模块,计算单元、风机控制板以及电源板的BMC模块为从BMC模块,各BMC模块通过IPMB总线互通,主、从BMC模块以“请求-响应”方式进行交互,主BMC模块周期性发送IPMI请求到各从BMC模块,请求获取各单元的状态信息数据包,n个从BMC模块按照标准IPMI协议响应主BMC模块的请求,将采集到的本单元内部资源信息和传感器数据组成信息数据包发送至主BMC模块,主BMC模块的系统管理模块在收到从BMC数据后按照“单元节点+单元数据”的形式进行组包,形成系统级健康数据。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,上层应用软件通过以太网接口,以UDP报文形式下发对目标单元操作指令,通信模块负责接收UDP报文,在解析命令后下达给系统管理模块对目标单元执行实际操作;
通信模块接收上层应用软件策略设置,以UDP报文形式发送告警阈值、告警策略和配置管理设置,在解析命令后,通知告警模块完成相应告警设置。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,还包括:所述智能决策模块,对每次获取的系统级健康数据中的风机转速、电流、电压以及温度数据进行保存形成历史数据,根据事先建立好的风机寿命预测模型,以历史数据为输入,预测风机寿命,建立“正常”、“降级”以及“故障”三个寿命等级。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,所述加固服务器包括:一个交换模块、4个计算处理模块、一个风机控制模块以及一个电源模块;交换模块包括:交换芯片和BMC模块;所述交换模块通过IPMB总线与计算处理模块、风机控制模块、电源模块相互连接,交换模块是IPMB总线上的主设备。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,主BMC模块通过所述内部资源数据采集模块以及传感器数据采集模块,让各个从BMC模块采集对应单元的温度、电压、电流以及功率的传感器信息,以及CPU、内存以及进程数的内部资源信息。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,所述通信模块,将系统级健康数据按照约定的UDP协议进行封装,定期通过UDP报文发送至上层应用软件。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,进一步地,还包括接收上层应用软件设置告警阈值和告警策略的控制和配置管理命令,通信模块解析命令后,下达给告警模块完成相应告警设置。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,内部资源数据采集模块,控制BMC模块以串口方式与主板上的平台管理工具进行交互,采集CPU、内存以及电子盘内部资源信息,形成本单元的内部资源信息。
根据本发明所述的加固服务器健康管理中间件的一实施例,其中,所述传感器数据采集模块,采集本单元的所有传感器信息,包括关键电压、电流以及温度,作为本单元的传感器数据。
本发明针对现有技术存在的不足和问题,提供一种加固服务器健康管理中间件,解决了现有管理软件可移植性问题,缩短开发周期,为加固服务器提供了一种高效维护管理的技术途径,实现加固服务器的稳定运行和持续可靠提供业务,降低故障率,提高了服务器的可用性。
附图说明
图1为本发明实施例部署示意图;
图2为所述加固服务器健康管理中间件工作原理图;
图3为本发明的软件层级。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
如图1至图3所示,加固服务器健康管理中间件包括:内部资源数据采集模块、传感器数据采集模块、通信模块、系统管理模块、告警模块、智能维护决策模块。
所述内部资源数据采集模块,控制BMC模块以串口方式与主板上的平台管理工具进行交互,采集CPU、内存、电子盘等关键内部资源信息,形成本单元的内部资源信息(INFO_IN)。
所述传感器数据采集模块,控制BMC模块,BMC模块固件具备采集传感器数据功能,采集本单元的所有传感器信息,包括关键电压、电流、温度,作为本单元的传感器数据(INFO_OUT)。
所述系统管理模块,针对加固服务器的性能和资源,对内部资源数据管理模块和传感器数据管理模块采集到的性能、资源信息进行统一管理。信息汇总步骤为:位于交换单元的BMC为主BMC,计算单元、风机控制板、电源板的BMC为从BMC,各单元BMC通过IPMB总线互通,主、从BMC以“请求-响应”方式进行交互,主BMC周期性发送IPMI请求到各从BMC,请求获取各单元的状态信息数据包,n个从BMC节点按照标准IPMI协议响应主BMC的请求,将采集到的本单元内部资源信息(INFO_IN)和传感器数据(INFO_OUT)组成信息数据包(NODE_HEALTH_INFOn)发送至主BMC,主BMC的系统管理模块在收到从BMC数据后按照“单元节点+单元数据”的形式进行组包,形成系统级健康数据(SYSTEM_HEALTH_INFO)。
所述通信模块,将系统级健康数据(SYSTEM_HEALTH_INFO)按照约定的UDP协议进行封装,定期通过UDP报文发送至上层应用软件;通信模块还包括接收上层应用软件下发操作指令,其内容为:上层应用通过以太网接口,以UDP报文形式下发对目标单元操作指令,包括复位、设置风机转速等,通信模块负责接收UDP报文,在解析命令后下达给系统管理模块对目标单元执行实际操作。通信模块还包括通信模块接收上层应用软件策略设置,其内容为:上层应用以UDP报文形式发送告警阈值、告警策略和配置管理设置,通信模块负责接收UDP报文,在解析命令后,通知告警模块完成相应告警设置。
所述告警模块,可根据用户的配置设置告警阈值和告警策略,在每次收到从BMC返回的数据后,根据当前阈值对从BMC返回的数据进行比对,对超出阈值的数据进行标记并记录在日志中。
所述智能维护决策模块,对每次获取的系统级健康数据(SYSTEM_HEALTH_INFO)中的风机转速、电流、电压以及温度数据进行保存形成历史数据,根据事先建立好的风机寿命预测模型,以历史数据为输入,预测风机寿命,建立“正常”、“降级”、“故障”三个等级,为维护人员提供辅助维护决策。
如图1所示,为本发明实际部署示意图。如图2所示,为本发明各模块于实施例中的具体部署。在本实施例中,位于交换板的BMC为主BMC,其固化软件包括内部资源数据采集模块、传感器数据采集模块、通信模块、系统管理模块、告警模块、智能维护决策模块;计算单元模块、电源模块、风机控制板的BMC为从BMC,部署内部资源数据采集模块、传感器数据采集模块。
如图3所示。本发明属于一种中间件,向下提供操作硬件的驱动接口,向上为上层应用提供标准UDP网络通信接口。如果系统硬件增减功能块,可通过简单的配置文件进行调整,这种有效的接口封装和灵活配置使得软件架构精简,便于扩充功能和在不同平台上移植。
具体地,在本实施例中,所述加固服务器包括:一个交换模块、4个计算处理模块、一个风机控制模块、一个电源模块;交换模块包括:交换芯片和BMC芯片;所述交换模块通过IPMB总线与计算处理模块、风机控制模块、电源模块相互连接,交换模块是IPMB总线上的主设备。主BMC通过IPMI报文与从BMC进行交互,获取各从BMC上的内部资源数据和传感器数据;应用软件通过UDP协议与主BMC交互,实现健康管理数据的获取或给主BMC下达命令。
通过所述内部资源数据采集模块、传感器数据采集模块,让各个从BMC节点采集对应单元的温度、电压、电流、功率等传感器信息(INFO_OUT)以及CPU、内存、进程数等内部资源信息(INFO_IN)。
通过所述系统管理模块针对加固服务器的性能和资源,将采集到的性能、资源信息进行统一管理。信息汇总步骤为:位于交换单元的BMC为主BMC,其他各板卡的BMC为从BMC,各单元BMC通过IPMB总线互通,主BMC周期性发送IPMI请求到各从BMC,请求获取各单元的信息数据包,6个从BMC节点按照标准IPMI协议响应主BMC的请求,将采集到的本单元内部资源数据信息(INFO_IN)和传感器数据信息(INFO_OUT)组成信息数据包(NODE_HEALTH_INFO1、NODE_HEALTH_INFO2、NODE_HEALTH_INFO3、NODE_HEALTH_INFO4、NODE_HEALTH_INFO5、NODE_HEALTH_INFO6、)发送至主BMC,主BMC的系统管理模块将获取的各节点数据包汇总后形成系统级健康数据(SYSTEM_HEALTH_INFO)。
所述通信模块,将系统级健康数据(SYSTEM_HEALTH_INFO)按照约定的UDP协议进行封装,定期通过UDP报文发送至上层应用软件;还包括接收上层应用软件下发命令,其内容为:上层应用通过以太网接口下发对目标单元操作指令,通信模块解析命令后,下达给系统管理模块对目标单元执行实际操作。还包括接收上层应用软件设置告警阈值和告警策略的控制和配置管理命令,通信模块解析命令后,下达给告警模块完成相应告警设置。
所述告警模块,可根据用户的配置设置告警阈值和告警策略,定期对系统级健康数据进行比对,对超出阈值的数据作出告警处理并记录在日志中。所述智能维护决策模块,对每次获取的系统级健康数据(SYSTEM_HEALTH_INFO)中的风机转速、电流、电压以及温度数据进行保存形成历史数据,根据事先建立好的风机寿命预测模型,以历史数据为输入,预测风机寿命,建立“正常”、“降级”、“故障”三个等级,为维护人员提供辅助维护决策。
本发明提供一种加固服务器健康管理中间件,具体地涉及基于IPMI系统健康管理中间件的组成、通信方式、运行环境,尤其涉及一种基于IPMI协议的健康管理中间件。加固服务器健康管理中间件包括:内部资源数据采集模块、传感器数据采集模块、通信模块、系统管理模块、告警模块、智能维护决策模块。内部资源数据采集模块、传感器数据采集模块收集各单元健康状态信息;系统管理模块以IPMI协议周期性获取各单元状态信息并汇总为系统级健康数据;通信模块将健康数据按约定的形式封装为UDP报文发送给给上层应用软件,同时接收并解析来自上层应用软件的控制命令;告警模块可根据用户命令设置阈值和配置不同的告警策略;智能维护决策模块通过分析历史系统级健康数据,提供辅助维护决策。本发明采用标准通信协议,解决了现有管理软件可移植性问题,缩短开发周期,为加固服务器提供了一种高效维护管理的技术途径。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
- 一种加固服务器健康管理中间件的实现方法
- 一种基于龙芯IP核的服务器健康管理芯片及实现方法