一种实现节点监控的方法及系统的制作方法

文档序号:7781698阅读:168来源:国知局
一种实现节点监控的方法及系统的制作方法
【专利摘要】本申请公开了一种实现节点监控的方法及系统,包括:一个主服务器和在各数据节点上运行的相应独立的代理服务器;其中,主服务器与名称节点相连,并获取集群配置信息;基于心跳协议,下发状态指令和控制指令给代理服务器;接收代理服务器上传的节点状态信息,以更新集群配置信息;代理服务器,用于接收主服务器的状态指令及控制指令信息,根据状态指令获取数据节点状态信息,上传给主服务器;根据控制指令对数据节点的各组件进行工作状态控制,并将控制指令结果反馈给主服务器。本发明实现代理服务器接收主服务器的状态指令和控制指令信息,以获取数据节点状态信息、下发控制指令并反馈控制指令结果信息,实现对数据节点的监控管理。
【专利说明】一种实现节点监控的方法及系统
【技术领域】
[0001]本发明涉及大数据处理技术,尤指一种适用于分布式系统基础架构(hadoop)大数据平台的实现节点监控方法及系统。
【背景技术】
[0002]伴随着数字生活的不断发展,数据的体积以不可思议的速度激增,由此产生的大数据也变得越来越难以处理。大数据是采用基于云计算的数据处理和应用模式,通过对数据的整合共享、交叉复用形成的智力资源和知识服务的能力。而大数据平台是大数据技术应用的基础支撑。
[0003]当前最流行的hadoop大数据平台是由Apache基金会开发的一个分布式系统基础架构平台。hadoop大数据平台具有在用户不了解分布式底层细节的情况下,就可以进行分布式程序开发,充分的利用了集群的威力进行高速运算和存储的特点。一个hadoop集群的节点规模往往包括几十,上百甚至上千台数据节点,由于规模庞大,使得快速准确的监控管理集群中数据节点变得异常困难。
[0004]目前,hadoop大数据平台通过集群提供的shell指令行或浏览器来查看集群的节点状态。如果要对集群中的某一节点进行控制操作,则需要单独地登陆该节点,通过shell指令对该节点进行控制操作。当集群中的节点出现异常宕机时,需要通过人工手动恢复该节点宕机前的服务,再把该节点加入集群,才能恢复集群正常工作。采用人工恢复的方法存在操作繁琐,耗费大量人力的同时还容易引入新的错误,使得在大规模的集群环境中对集群节点进行监控和回复操作十分不便。

【发明内容】

[0005]为了解决上述技术问题,本发明公开了一种实现节点监控的方法及系统,能够对数据节点的状态信息进行有效监控,在出现异常宕机时,能够及时有效的对宕机的数据节点进行恢复控制。
[0006]本发明提供一种实现节点监控的方法,包括:
[0007]—个主服务器和在各数据节点上运行的相应独立的代理服务器;其中,
[0008]主服务器与名称节点相连,用于从名称节点获取集群配置信息;基于心跳协议,下发状态指令和控制指令信息给代理服务器;接收代理服务器上传的节点状态信息,以更新集群配置信息;
[0009]代理服务器,用于接收主服务器的状态指令及控制指令信息,根据状态指令获取数据节点状态信息,上传给主服务器;根据控制指令对数据节点的各个组件进行工作状态控制,并将控制指令结果反馈给主服务器。
[0010]进一步地,主服务器还用于,当数据节点异常宕机时,根据集群配置信息发送宕机节点恢复配置的控制指令给代理服务器;
[0011]代理服务器还用于,根据控制指令控制数据节点按照集群配置信息恢复数据节点各个组件的工作状态,并将控制指令结果反馈给主服务器。
[0012]进一步地,主服务器还用于,根据代理服务器获取的数据节点状态信息,确定数据节点是否出现异常宕机。
[0013]进一步地,主服务器具体用于,通过消息队列方式下发状态指令和控制指令信息。
[0014]进一步地,代理服务器具体用于,采用消息队列方式上传数据节点状态信息及反馈控制指令结果信息。
[0015]另一方面,本申请还提供一种实现节点监控的方法,
[0016]设置一主服务器在名称节点上,在各个数据节点上分别设置相应的独立的代理服务器;
[0017]主服务器从名称节点获取集群配置信息,基于心跳协议,下发状态指令和控制指令信息到代理服务器;
[0018]代理服务器根据状态指令信息获取数据节点状态信息,根据控制指令信息对控制节点的各个组件进行工作状态控制;
[0019]将数据节点状态信息及控制指令结果信息发送到主服务节点,进行集群配置信息更新。
[0020]进一步地,该方法还包括:
[0021]当数据节点异常宕机时,所述主服务器根据集群配置信息发送宕机节点恢复配置的控制指令信息给代理服务器;
[0022]代理服务器根据控制指令控制数据节点按照集群配置信息恢复数据节点各个组件的工作状态。
[0023]进一步地,主服务器根据代理服务器获取的数据节点状态信息,确定数据节点是否出现异常宕机。
[0024]进一步地,主服务器通过消息队列方式、下发状态指令和控制指令信息。
[0025]进一步地,代理服务器采用消息队列方式、上传数据节点状态信息及反馈控制指令结果信息。
[0026]本申请提供一种技术方案,包括:一个主服务器和在各数据节点上运行的相应独立的代理服务器;其中,主服务器与名称节点相连,用于从名称节点获取集群配置信息;基于心跳协议,下发状态指令和控制指令信息给代理服务器;接收代理服务器上传的节点状态信息,以更新集群配置信息;代理服务器,用于接收主服务器的状态指令及控制指令信息,根据状态指令获取数据节点状态信息,上传给主服务器;根据控制指令对数据节点的各个组件进行工作状态控制,并将控制指令结果反馈给主服务器。本发明实现代理服务器接收主服务器的状态指令和控制指令信息,以获取数据节点状态信息、下发控制指令并反馈控制指令结果信息,实现对数据节点的监控管理。
【专利附图】

【附图说明】
[0027]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0028]图1为本发明实现节点监控的系统的结构框图;
[0029]图2为本发明实现节点监控的方法的流程图。【具体实施方式】
[0030]为了使本发明的技术方案得到充分的理解,对心跳协议进行概要性的陈述。在网络中的接收和发送数据都是使用WINDOWS中的SOCKET进行实现。但是如果此套接字已经断开,那发送数据和接收数据的时候就一定会有问题。判断套接字是否可以使用就是通过心跳协议来实现。其实TCP中已经实现了一个叫做心跳的机制。如果设置了心跳,那TCP就会在一定的时间内发送设置的次数的心跳,并且此信息不会影响已经定义的协议。所谓“心跳”就是定时发送一个自定义的结构体,让对方知道该服务“在线”。以确保链接的有效性。
[0031]定时发送一个自定义的结构体(心跳包),以确保连接的有效性,这就是心跳协议的主要内容。
[0032]图1为本发明实现节点监控的系统的结构框图,如图1所示,包括:
[0033]一个主服务器和在各数据节点上运行的相应独立的代理服务器;其中,
[0034]主服务器与名称节点相连,用于从名称节点获取集群配置信息;基于心跳协议,下发状态指令和控制指令信息给代理服务器;接收代理服务器上传的节点状态信息,以更新集群配置信息;
[0035]代理服务器,用于接收主服务器的状态指令及控制指令信息,根据状态指令获取数据节点状态信息,上传给主服务器;根据控制指令对数据节点的各个组件进行工作状态控制,并将控制指令结果反馈给主服务器。
[0036]进一步地,所述主服务器还用于,当数据节点异常宕机时,根据集群配置信息发送宕机节点恢复配置的控制指令给代理服务器;
[0037]代理服务器还用于,根据控制指令控制数据节点按照集群配置信息恢复数据节点各个组件的工作状态,并将控制指令结果反馈给主服务器。
[0038]主服务器还用于,根据代理服务器获取的数据节点状态信息,确定数据节点是否出现异常宕机。
[0039]主服务器具体用于,通过消息队列方式下发状态指令和控制指令。
[0040]代理服务器具体用于,采用消息队列方式上传数据节点状态信息及反馈控制指令结果。
[0041]图2为本发明实现节点监控的方法的流程图;如图2所示,包括:
[0042]步骤200、设置一主服务器在名称节点上,在各个数据节点分别设置相应的独立的代理服务器。
[0043]步骤201、主服务器从名称节点获取集群配置信息,基于心跳协议,下发状态指令和控制指令信息到代理服务器。
[0044]本步骤中,主服务器通过消息队列方式、下发状态指令和控制指令。
[0045]步骤202、代理服务器根据状态指令信息获取数据节点状态信息,根据控制指令信息对控制节点的各个组件进行工作状态控制。
[0046]本步骤中,代理服务器采用消息队列方式、上传数据节点状态信息及反馈控制指令结果信息。
[0047]步骤203、将数据节点状态信息及控制指令结果信息发送到主服务节点,进行集群配置信息更新。
[0048]本发明方法还包括:
[0049]当数据节点异常宕机时,所述主服务器根据集群配置信息发送宕机节点恢复配置的控制指令信息给代理服务器。
[0050]本步骤中,主服务器根据代理服务器获取的数据节点状态信息,确定数据节点是否出现异常宕机。
[0051]所述代理服务器根据控制指令控制数据节点按照集群配置信息恢复数据节点各个组件的工作状态。
[0052]本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
[0053]以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种实现节点监控的系统,其特征在于,包括:一个主服务器和在各数据节点上运行的相应独立的代理服务器;其中, 主服务器与名称节点相连,用于从名称节点获取集群配置信息;基于心跳协议,下发状态指令和控制指令信息给代理服务器;接收代理服务器上传的节点状态信息,以更新集群配置信息; 代理服务器,用于接收主服务器的状态指令及控制指令信息,根据状态指令获取数据节点状态信息,上传给主服务器;根据控制指令对数据节点的各个组件进行工作状态控制,并将控制指令结果反馈给主服务器。
2.根据权利要求1所述的系统,其特征在于, 所述主服务器还用于,当数据节点异常宕机时,根据集群配置信息发送宕机节点恢复配置的控制指令给代理服务器; 所述代理服务器还用于,根据控制指令控制数据节点按照集群配置信息恢复数据节点各个组件的工作状态,并将控制指令结果反馈给主服务器。
3.根据权利要求2所述的系统,其特征在于,所述主服务器还用于,根据代理服务器获取的数据节点状态信息,确定数据节点是否出现异常宕机。
4.根据权利要求1所述的系统,其特征在于,所述主服务器具体用于,通过消息队列方式下发状态指令和控制指令信息。
5.根据权利要求1所述的系统,其特征在于,所述代理服务器具体用于,采用消息队列方式上传数据节点状态信息及反馈控制指令结果信息。
6.一种实现节点监控的方法,其特征在于,包括: 设置一主服务器在名称节点上,在各个数据节点上分别设置相应的独立的代理服务器; 主服务器从名称节点获取集群配置信息,基于心跳协议,下发状态指令和控制指令信息到代理服务器; 代理服务器根据状态指令信息获取数据节点状态信息,根据控制指令信息对控制节点的各个组件进行工作状态控制; 将数据节点状态信息及控制指令结果信息发送到主服务节点,进行集群配置信息更新。
7.根据权利要求6所述的方法,其特征在于,该方法还包括: 当数据节点异常宕机时,所述主服务器根据集群配置信息发送宕机节点恢复配置的控制指令信息给代理服务器; 所述代理服务器根据控制指令控制数据节点按照集群配置信息恢复数据节点各个组件的工作状态。
8.根据权利要求7所述的方法,其特征在于,所述主服务器根据代理服务器获取的数据节点状态信息,确定数据节点是否出现异常宕机。
9.根据权利要求6所述的方法,其特征在于,所述主服务器通过消息队列方式、下发状态指令和控制指令信息。
10.根据权利要求6所述的方法,其特征在于,所述代理服务器采用消息队列方式、上传数据节点状态信息及反馈控制指令结果信息。
【文档编号】H04L12/26GK103701661SQ201310717518
【公开日】2014年4月2日 申请日期:2013年12月23日 优先权日:2013年12月23日
【发明者】刘璧怡, 郭美思, 宗栋瑞, 吴楠 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1