产业化落地SIG首篇解决方案发布-《基于 OurBMC 平台的硬盘故障预测实现方案》

近日,OurBMC 社区理事成员单位昆仑太科(北京)技术股份有限公司基于开放源子大赛的成果梳理了一份成熟的可落地方案——《基于OurBMC平台的硬盘故障预测实现方案》该方案为产业化落地 SIG 的首篇解决方案,极大推动了社区产业化落地的发展和工作。

产业化落地 SIG 包括软硬件及系统解决方案,重点对产业化落地中遇到的困难点进行分析与解决,并贡献解决方案,为行业产业化做贡献。

《基于OurBMC平台的硬盘故障预测实现方案》内容核心包括故障预测模型训练和故障预测功能与 OurBMC 的结合两部分,方案中使用 SVM 机器学习算法实现了对硬盘数据的故障预测模型,提高了预测的准确性。同时,将故障预测模型文件编译打包到 OurBMC 的文件系统中,借助 OurBMC 的接口和 web 端最终实现硬盘故障预测。

硬盘故障预测整体方案

硬盘故障预测整体框架如下图所示,分为模型训练和故障预测两个阶段。模型训练阶段主要是利用硬盘的 SMART 信息,通过机器学习算法生成故障预测模型。在故障预测阶段,则需要通过 BMC 上的接口来获取服务器主机的硬盘信息,然后传给故障预测模块,故障预测模块则要利用训练阶段生成的模型进行故障预测,之后再调用告警模块接口进行上报,以便远程监控系统能够获知。

OurBMC上硬盘故障预测功能的实现

在 OurBMC 平台上,要实现硬盘故障预测功能,就要利用之前训练好的预测模型。把训练生成的模型文件通过编译打包到 BMC 的文件系统中,同时在 BMC 上需要创建一个后台的故障预测服务来执行预测任务。考虑到硬盘状态信息的变化不会特别频繁,可以设置预测频率为每天一次。

硬盘故障预测服务在系统启动可由 systemd 进行启动,在服务启动时,需要把预置的预测模型读取到内存中,通过加载该模型,对预测的模型对象进行初始化,以便后续能正常进行预测。硬盘故障预测流程如图:

硬盘故障预测效果演示

本方案中的模型依赖于大量已发生故障硬盘的 SMART 信息,数据量越大,模型越可靠,准确性越好。本方案选择了故障硬盘和非故障硬盘的比约为 1:2,其结果如下,本方案故障预测的准确性高达 94%。

以下是基于 OurBMC 平台实现的 demo 演示示意图。

关注 OurBMC 公众号,后台回复 “解决方案”,获取《基于OurBMC平台的硬盘故障预测实现方案》完整版。

欢迎各成员单位及开发者积极投稿,为社区建设添砖加瓦,投稿请联系:

关于OurBMC

OurBMC 社区是国内首个交流和创新 BMC 开源技术的根社区,社区秉承 “开放、平等、协作、创新” 原则,坚持 “开源、共建” 的合作方式,旨在共同推进 BMC 技术快速发展,辐射上下游形成产业共振,加速构建繁荣的信息系统软硬件生态。

动态底部图片.jpeg

优秀的个人博客,低调大师

微信关注我们

原文链接:https://my.oschina.net/ourbmc/blog/11209290

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。