CN105242998B - 一种基于hdfs的磁盘故障检测方法及系统 - Google Patents
一种基于hdfs的磁盘故障检测方法及系统 Download PDFInfo
- Publication number
- CN105242998B CN105242998B CN201510550786.9A CN201510550786A CN105242998B CN 105242998 B CN105242998 B CN 105242998B CN 201510550786 A CN201510550786 A CN 201510550786A CN 105242998 B CN105242998 B CN 105242998B
- Authority
- CN
- China
- Prior art keywords
- datanode
- component
- information
- disk
- datanode component
- 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.)
- Active
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种基于HDFS的磁盘故障检测方法及系统,所述方法包括如下步骤:采集Hadoop集群中所有DataNode组件的端口信息,并存储;所述DataNode组件配置相对应的磁盘,依据所述端口信息能获取DataNode组件相对应的磁盘信息;定时向每一DataNode组件发送请求,DataNode组件接收到请求后返回应答信息至请求端,发送请求端查询返回的应答信息所对应的DataNode组件的端口信息,获取未返回应答信息的DataNode组件的端口信息,所述未返回应答信息的DataNode组件的磁盘为损坏状态。通过监控系统多任务并行触发,同时访问hadoop集群中所有DataNode组件并汇总结果,无需管理人员关注实现过程,只需查看所述监控端最后检测的结果即可。
Description
技术领域
本发明涉及计算机存储领域,尤其涉及一种基于HDFS的磁盘故障检测方法及系统。
背景技术
随着社交网络、微博、位置服务等面向普通互联网用户的交互型网站的蓬勃兴起,如Google、Facebook、Twitter以及国内的人人网、微博等,向数以亿计的用户提供基于互联网和无线网络的交互服务,遍布全世界的互联网用户每天都进行多种多样的交互,随时都在制造各种各样的数据,这些数据的数量是单机时代数据量的数倍。
为存储这些数据,各互联网公司在世界上各地建立了庞大的数据中心,单个数据中心的主机数量在几百至数万的数量级不等。在数据中心内部,数据的存储最终需要存储到磁盘上,因此磁盘的可靠性与数据的可靠性密切相关。
Hadoop作为解决大数据领域的重要技术手段目前被广泛应用着。HDFS作为Hadoop产品中的基础核心组件包含DataNode(数据节点),DataNode将指定具体哪些盘用以存储实际的数据块,磁盘损坏会导致分布式文件系统块缺失,损坏磁盘个数超过系统配置上限将会导致DataNode挂掉。每台运行中的DataNode提供一个可访问的WEB URL地址,可以查看该DataNode当前可用磁盘挂载点路径和损坏磁盘个数。
但是以上URL查询仅能显示当前可用磁盘挂载点路径和损坏磁盘个数,无法显示损坏磁盘,需要参照HDFS配置进行人工排除,分析出哪块磁盘故障。
DataNode数据节点较多的集群中,如果还是用手动访问URL的方式,如果有50个DataNode,就需要开50个窗口访问50个DataNode的URL查看磁盘信息,工作量大且容易出错。
发明内容
本发明要解决的技术问题,在于提供一种基于HDFS的磁盘故障检测方法解决了现有磁盘损坏需要人工检测,实时性低、效率低的问题。
本发明是这样实现的:一种基于HDFS的磁盘故障检测方法,包括如下步骤:
S100:采集Hadoop集群中所有DataNode组件的端口信息,并存储,所述DataNode组件的端口信息包括主机名、主机端口、主机路径;所述DataNode组件配置相对应的磁盘,依据所述端口信息确定DataNode组件相对应的磁盘信息;
S200:请求端定时向每一DataNode组件发送请求,DataNode组件接收到请求后返回应答信息至请求端,发送请求端查询返回的应答信息所对应的DataNode组件的端口信息,获取未返回应答信息的DataNode组件的端口信息,所述未返回应答信息的DataNode组件的磁盘为损坏状态;所述DataNode组件上设有警示模块,发送控制指令使得正常工作状态的DataNode组件发出指示信息。
其中,所述应答信息为URL地址信息,每一DataNode组件匹配一URL地址信息。
所述的基于HDFS的磁盘故障检测方法还包括:发送未返回应答信息的DataNode组件的端口信息至上位机,并由上位机显示。
其中,所述监控端定时向每一DataNode组件发送请求中,所述定时为按一定的时间周期轮询。
本发明还公开一种基于HDFS的磁盘故障检测系统,包括:采集模块、监控端,
采集模块,采集Hadoop集群中所有DataNode组件的端口信息,并存储,所述DataNode组件的端口信息包括主机名、主机端口、主机路径;所述DataNode组件配置相对应的磁盘,依据所述端口信息确定DataNode组件相对应的磁盘信息;
监测单元,定时向每一DataNode组件发送请求,DataNode组件接收到请求后返回应答信息至请求端,发送请求端查询返回的应答信息所对应的DataNode组件的端口信息,获取未返回应答信息的DataNode组件的端口信息,所述未返回应答信息的DataNode组件的磁盘为损坏状态;所述DataNode组件上设有警示模块,发送控制指令使得正常工作状态的DataNode组件发出指示信息。
其中,所述应答信息为URL地址信息,每一DataNode组件匹配一URL地址信息。
其中,所述的系统还包括上位机,所述监控端发送未返回应答信息的DataNode组件的端口信息至上位机,并由上位机显示。
其中,所述监控端定时向每一DataNode组件发送请求中,所述定时为按一定的时间周期轮询。
本发明的优点在于:
其一、无需人为计算,让磁盘故障检测系统程序自动计算损坏的磁盘信息,快速且不会出现计算错误。
其二、磁盘故障检测系统定时访问请求,无需手动刷新请求,节省成本,能够实时知晓损坏磁盘信息,一目了然。
其三、将操作过程集成到监控程序中,通过监控系统多任务并行触发,同时访问hadoop集群中所有DataNode组件并汇总结果,无需管理人员关注实现过程,只需查看所述监控端最后检测的结果即可。
附图说明
图1为本发明的基于HDFS的磁盘故障检测方法的流程图;
图2为本发明的基于HDFS的磁盘故障检测系统的结构框图;
图3为本发明的基于HDFS的磁盘故障检测系统的实际应用图示;
标号说明:
上位机1 磁盘故障检测系统2 DataNode组件3
采集模块100 监控端200
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统。HDFS是Apache HadoopCore项目的一部分,它是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。
针对现有hadoop未能直观显示损坏磁盘,使用人员无法对系统资源状况做及时了解并进行优化,在原hadoop可访问URL基础上设计定时访问,并且读取HDFS配置磁盘信息用于计算,直接将损坏的磁盘信息、显示到管理系统中。参阅图1所示,所述的磁盘故障检测方法具体的包括如下步骤:
S100:采集Hadoop集群中所有DataNode组件的端口信息,并存储;所述DataNode组件配置相对应的磁盘,依据所述端口信息确定DataNode组件相对应的磁盘信息;
S200:请求端定时向每一DataNode组件发送请求,DataNode组件接收到请求后返回应答信息至发起请求端,发起请求端查询返回的应答信息所对应的DataNode组件的端口信息,获取未返回应答信息的DataNode组件的端口信息,所述未返回应答信息的DataNode组件的磁盘为损坏状态。
上述实施方式中,所述hadoop集群中包括若干个DataNode组件,各DataNode组件安装在不同的主机,所对应的URL地址也不同,采集所述DataNode组件的端口信息,所述的端口信息可以包括主机名、主机端口以及主机路径。将所述的端口信息进行存储,所述的存储可以采用本地存储或者异地存储的方式,本地存储可以采用本地存储器进行存储,异地存储可以采用云存储的方式进行存储,现有技术中惯用的存储方式均可以应用于本实施方式中。
定制定时任务向每一DataNode组件发送请求,所述的请求可以为请求DataNode组件返回URL地址信息、工作状态信息、返回主机名等信息,在一优选的技术方案中,所述应答信息为URL地址信息。由于每一DataNode组件仅有一个与之相对应的URL地址,因此所述应答信息设定为URL地址能够保证返回信息的唯一性,提高信息查询的准确性以及实时性。所述的定时为按一定的时间周期轮询或者采用响应的方式发送请求,所述按一定时间周期轮询的周期可设定为10分钟、2小时或者24小时或者2-5天等,所述的周期并不限于此处所列举,所述周期可依实际工作的需要自由设定。为了提高数据的实时性在系统性能允许的情况下可缩短周期的时间,保证能够尽快的检测到损坏的磁盘。应用所述存储器中所存储的端口信息,查询应答信息所对应的DataNode组件的端口信息,所述返回应答信息的DataNode组件的磁盘处于正常工作状态,未返回应答信息的DataNode组件其磁盘处于异常工作状态。依据查询的结果获知处于正常工作状态的DataNode组件的端口信息,并可采用排除法或者直接查询的方式获得异常工作状态的DataNode组件的端口信息,所述端口信息可包括损坏磁盘的主机名、损坏磁盘的路径,并可统计损坏磁盘的数据等。
损坏磁盘的统计具体的可以通过排除法获取损坏磁盘信息的端口信息,其具体的操作为比对接收到的应答信息所对应的端口信息与原始采集的端口信息的差异部分,所述差异部分即为损坏的磁盘信息,查询所述差异部分相对应的端口信息。
为了能够直观的获知损坏磁盘的端口信息,可将上述的损坏磁盘端口信息的结果直接进行展示,所述的展示可通过显示屏幕展示,其可采用将所查询到的损坏磁盘的端口信息发送至上位机,通过上位机的显示器等显示设备直接展示。其还可以通过安装警示模块在所述DataNode组件上,发送控制指令使得正常工作状态的DataNode组件发出指示信息,所述的指示信息可以为声信息或者光信息,通过指示信息即可获知所述的DataNode组件处于正常工作状态。而未接受到或者无法接收到控制指令的DataNode组件为异常工作状态。
采用上述实施方式实现损坏磁盘的检测无需人为计算,让磁盘故障检测系统程序自动计算损坏的磁盘信息,快速且不会出现计算错误;其二、磁盘故障检测系统定时访问请求,无需手动刷新请求,节省成本,能够实时知晓损坏磁盘信息,一目了然;其三、将操作过程集成到监控程序中,通过监控系统多任务并行触发,同时访问hadoop集群中所有DataNode组件并汇总结果,无需管理人员关注实现过程,只需查看所述监控端最后检测的结果即可。
参阅图2所示,本发明还公开一种基于HDFS的磁盘故障检测系统2,包括:采集模块100、监控端200,
采集模块100,采集Hadoop集群中所有DataNode组件的端口信息,并存储;所述DataNode组件配置相对应的磁盘,依据所述端口信息能获取DataNode组件相对应的磁盘信息;所述hadoop集群中包括若干个DataNode组件,各DataNode组件安装在不同的主机,所对应的URL地址也不同,采集所述DataNode组件的端口信息,所述的端口信息可以包括主机名、主机端口以及主机路径。将所述的端口信息进行存储,所述的存储可以采用本地存储器或者异地存储模块,所述的本地存储器可以为RAM、EPROM或者Flash等存储器,所述的异地存储模块可以采用云存储模块等。
监控端200,定时向每一DataNode组件发送请求,DataNode组件接收到请求后返回应答信息至监控端200,监控端200查询应答信息所对应的DataNode组件的端口信息,获取未返回应答信息的DataNode组件的端口信息,所述未返回应答信息的DataNode组件的磁盘为损坏状态。
监控端200定制定时任务向每一DataNode组件3发送请求,所述的请求可以为请求DataNode组件返回URL地址信息、工作状态信息、返回主机名等信息,在一优选的技术方案中,所述应答信息为URL地址信息,如http://DataNodeHost:DataNodeHttpPort/jmx?qry=Hadoop:service=DataNode,name=FSDatasetState-*。由于每一DataNode组件仅有一个与之相对应的URL地址,因此所述应答信息设定为URL地址信息能够保证返回信息的唯一性,提高信息查询的准确性以及实时性。所述的定时为按一定的时间周期轮询或者采用响应的方式发送请求,所述按一定时间周期轮询的周期可设定为10分钟、2小时或者24小时或者2-5天等,所述的周期并不限于此处所列举,所述周期可依实际工作的需要自由设定。为了提高数据的实时性在系统性能允许的情况下可缩短周期的时间,保证能够尽快的检测到损坏的磁盘。应用所述存储器中所存储的端口信息,查询应答信息所对应的DataNode组件的端口信息,所述返回应答信息的DataNode组件的磁盘处于正常工作状态,未返回应答信息的DataNode组件其磁盘处于异常工作状态。依据查询的结果获知处于正常工作状态的DataNode组件的端口信息,并可采用排除法或者直接查询的方式获得异常工作状态的DataNode组件的端口信息,所述端口信息可包括损坏磁盘的主机名、损坏磁盘的路径,并可统计损坏磁盘的数据等。
损坏磁盘的统计具体的可以通过排除法获取损坏磁盘信息的端口信息,其具体的操作为比对接收到的应答信息所对应的端口信息与原始采集的端口信息的差异部分,所述差异部分即为损坏的磁盘信息,查询所述差异部分相对应的端口信息。
参阅图3,举一示例说明本发明的一具体实施方案:
所述的基于HDFS的磁盘故障检测系统2的采集模块采集hadoop集群中所有DataNode组件的端口信息,并将所述的端口信息存储于本地存储盘。依据所采集的端口信息能获取DataNode组件相对应的磁盘信息。
在监控系统编写任务时,对各个DataNode组件3分别发送请求,从DataNode1,DataNode2,DataNode3一直到DataNode N,DataNode组件接收到请求后返回应答信息至请求端,所述的应答信息为URL地址信息,如http://DataNodeHost:DataNodeHttpPort/jmx?qry=Hadoop:service=DataNode,name=FSDatasetState-*。应用返回的应答信息查询其所对应的DataNode组件的端口信息,收到应答信息的所述DataNode组件的磁盘为正常工作状态。依据排除法获取异常工作状态的DataNode组件的磁盘:所有DataNode组件的所有磁盘-当前正常使用的DataNode组件的磁盘,从而获取损坏磁盘的主机名、损坏磁盘的路径、损坏磁盘的数目等。
为了能够直观的获知损坏磁盘的端口信息,将上述的损坏磁盘端口信息的结果直接进行展示,其可采用将所查询到的算坏磁盘的端口信息发送至上位机1,通过上位机1的显示器等显示设备直接展示。
上所述仅为本发明基于HDFS的磁盘故障检测方法及系统的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种基于HDFS的磁盘故障检测方法,其特征在于包括如下步骤:
采集Hadoop集群中所有DataNode组件的端口信息,并存储,所述DataNode组件的端口信息包括主机名、主机端口以及主机路径;所述DataNode组件配置相对应的磁盘,依据所述端口信息确定DataNode组件相对应的磁盘信息;
请求端定时向每一DataNode组件发送请求,DataNode组件接收到请求后返回应答信息至请求端,请求端查询返回的应答信息所对应的DataNode组件的端口信息,获取未返回应答信息的DataNode组件的端口信息,所述未返回应答信息的DataNode组件的磁盘为损坏状态;所述DataNode组件上设有警示模块,发送控制指令使得正常工作状态的DataNode组件发出指示信息。
2.根据权利要求1所述的基于HDFS的磁盘故障检测方法,其特征在于:所述应答信息为URL地址信息,每一DataNode组件匹配一URL地址信息。
3.根据权利要求2所述的基于HDFS的磁盘故障检测方法,其特征在于:
还包括:发送未返回应答信息的DataNode组件的端口信息至上位机,并由上位机显示。
4.根据权利要求1至3任意一项所述的基于HDFS的磁盘故障检测方法,其特征在于:所述请求端定时向每一DataNode组件发送请求中,所述定时为按一定的时间周期轮询。
5.一种基于HDFS的磁盘故障检测系统,其特征在于包括:采集模块、监控端,
采集模块,采集Hadoop集群中所有DataNode组件的端口信息,并存储,所述DataNode组件的端口信息包括主机名、主机端口以及主机路径;所述DataNode组件配置相对应的磁盘,依据所述端口信息确定DataNode组件相对应的磁盘信息;
监控端,定时向每一DataNode组件发送请求,DataNode组件接收到请求后返回应答信息至监控端,监控端查询应答信息所对应的DataNode组件的端口信息,获取未返回应答信息的DataNode组件的端口信息,所述未返回应答信息的DataNode组件的磁盘为损坏状态;所述DataNode组件上设有警示模块,发送控制指令使得正常工作状态的DataNode组件发出指示信息。
6.根据权利要求5所述的基于HDFS的磁盘故障检测系统,其特征在于:所述应答信息为URL地址信息,每一DataNode组件匹配一URL地址信息。
7.根据权利要求6所述的基于HDFS的磁盘故障检测系统,其特征在于:
还包括:上位机,所述监控端发送为返回应答信息的DataNode组件的端口信息至上位机,并由上位机显示。
8.根据权利要求5至7任意一项所述的基于HDFS的磁盘故障检测系统,其特征在于:所述监控端定时向每一DataNode组件发送请求中,所述定时为按一定的时间周期轮询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510550786.9A CN105242998B (zh) | 2015-09-01 | 2015-09-01 | 一种基于hdfs的磁盘故障检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510550786.9A CN105242998B (zh) | 2015-09-01 | 2015-09-01 | 一种基于hdfs的磁盘故障检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105242998A CN105242998A (zh) | 2016-01-13 |
CN105242998B true CN105242998B (zh) | 2019-05-14 |
Family
ID=55040651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510550786.9A Active CN105242998B (zh) | 2015-09-01 | 2015-09-01 | 一种基于hdfs的磁盘故障检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105242998B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201834A (zh) * | 2016-07-06 | 2016-12-07 | 乐视控股(北京)有限公司 | 一种磁盘损坏的处理方法和装置 |
CN108121620A (zh) * | 2017-12-22 | 2018-06-05 | 联想(北京)有限公司 | 分布式文件系统的修复方法及系统和服务器 |
CN111427842B (zh) * | 2020-03-13 | 2023-01-06 | 苏州浪潮智能科技有限公司 | 一种分布式文件系统优化的方法和设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067485A (zh) * | 2012-12-25 | 2013-04-24 | 曙光信息产业(北京)有限公司 | 云存储系统的磁盘监控方法 |
CN103297264A (zh) * | 2013-04-19 | 2013-09-11 | 无锡成电科大科技发展有限公司 | 一种云平台故障恢复方法和系统 |
CN103761180A (zh) * | 2014-01-11 | 2014-04-30 | 浪潮电子信息产业股份有限公司 | 一种集群存储中磁盘故障的预防及检测方法 |
CN103810016A (zh) * | 2012-11-09 | 2014-05-21 | 北京华胜天成科技股份有限公司 | 实现虚拟机迁移的方法、装置和集群系统 |
CN104503701A (zh) * | 2014-12-01 | 2015-04-08 | 北京同有飞骥科技股份有限公司 | 一种适用于多级扩展柜的磁盘命名方法和装置 |
CN104536855A (zh) * | 2014-12-03 | 2015-04-22 | 曙光信息产业(北京)有限公司 | 故障检测方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9229814B2 (en) * | 2013-03-15 | 2016-01-05 | Seagate Technology Llc | Data error recovery for a storage device |
-
2015
- 2015-09-01 CN CN201510550786.9A patent/CN105242998B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810016A (zh) * | 2012-11-09 | 2014-05-21 | 北京华胜天成科技股份有限公司 | 实现虚拟机迁移的方法、装置和集群系统 |
CN103067485A (zh) * | 2012-12-25 | 2013-04-24 | 曙光信息产业(北京)有限公司 | 云存储系统的磁盘监控方法 |
CN103297264A (zh) * | 2013-04-19 | 2013-09-11 | 无锡成电科大科技发展有限公司 | 一种云平台故障恢复方法和系统 |
CN103761180A (zh) * | 2014-01-11 | 2014-04-30 | 浪潮电子信息产业股份有限公司 | 一种集群存储中磁盘故障的预防及检测方法 |
CN104503701A (zh) * | 2014-12-01 | 2015-04-08 | 北京同有飞骥科技股份有限公司 | 一种适用于多级扩展柜的磁盘命名方法和装置 |
CN104536855A (zh) * | 2014-12-03 | 2015-04-22 | 曙光信息产业(北京)有限公司 | 故障检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105242998A (zh) | 2016-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105224445B (zh) | 分布式跟踪系统 | |
US11362923B2 (en) | Techniques for infrastructure analysis of internet-based activity | |
US9104572B1 (en) | Automated root cause analysis | |
US10484476B2 (en) | Distributed data management systems for embedded controllers | |
CN103916293A (zh) | 一种监控分析网站用户行为的方法 | |
CN110311837B (zh) | 在线业务可用性检测方法、装置及计算机设备 | |
CN108173678B (zh) | 客户端数据发送方法、客户端连接异常显示方法及装置 | |
CN105242998B (zh) | 一种基于hdfs的磁盘故障检测方法及系统 | |
US20170187840A1 (en) | System and method for acquiring, processing and updating global information | |
CN102647299A (zh) | 基于内容分发网络的层次化报警分析方法和系统 | |
CN108170832B (zh) | 一种面向工业大数据的异构数据库的监控系统及监控方法 | |
CN111163150A (zh) | 一种分布式调用追踪系统 | |
CN103607424A (zh) | 一种服务器连接方法及服务器系统 | |
CN106411639A (zh) | 访问数据的监控方法及系统 | |
US10812346B1 (en) | Application discovery and dependency mapping | |
CN115883407A (zh) | 一种数据采集方法、系统、设备及存储介质 | |
CN109684093A (zh) | 数据处理方法及系统 | |
CN109508277A (zh) | 一种数据库一体机的监控系统和方法 | |
CN113327060B (zh) | 一种智慧工厂管理系统及其方法 | |
EP3306471B1 (en) | Automatic server cluster discovery | |
JP2019525293A (ja) | リアルタイムデータ収集において使用するための階層データコレクタおよび関連技法 | |
CN115174248B (zh) | 一种网络访问的控制方法及装置 | |
JP2016522517A (ja) | プロセス変数に関連するトレンドを表示する装置 | |
CN106533819B (zh) | 线上服务的错误监控方法、装置和系统 | |
CN104811354B (zh) | 一种用于cdn健康检测的方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |