一种服务进程故障检测方法、装置及服务节点制造方法及图纸

技术编号:9312311 阅读:112 留言:0更新日期:2013-11-06 18:45
本申请公开了一种服务进程故障检测方法、装置及服务节点,用以简化服务进程故障检测流程,缩短HBase容灾恢复响应时间。其中,服务进程故障检测方法,包括:第一服务节点启动服务进程,并启动本地的镜像监控进程,其中,所述第一服务节点调用启动后的服务进程提供数据查询服务;以及所述第一服务节点通过所述镜像监控进程定期检查所述服务进程的状态,并确定服务进程状态是否异常;在所述镜像监控进程确定所述服务进程状态异常时,所述第一服务节点通知集群管理节点Master。

【技术实现步骤摘要】

本申请涉及数据库
,尤其涉及一种服务进程故障检测方法、装置及服务节点。 
技术介绍
当前,随着大型互联网网站在线业务的迅速发展,业务数据量越来越大,任何一个与用户相关的在线业务的数据量都在亿级别,每日系统调用次数上亿甚至百亿,且历史数据不能轻易删除,这需要有一个海量分布式文件系统,能对万亿字节(TB,Terabyte)级甚至拍字节(PB,Petabyte)级别的数据提供在线服务。由于HBase有如下几个特点:首先HBase是No-SQL的一个典型实现,提升了系统的可扩展性;其次HBase支持线性水平扩展,HBase服务能力可以随服务器的增长而线性增长,极大提升了系统的可伸缩性和运算能力;最后HBase底层是建立在Hadoop分布式文件系统(HDFS)之上,可以搭建在廉价的PC机集群上,因此,HBase是一种比较合适的选择。 如图1所示,为HBase的架构示意图,HBase在完全分布式环境下,由集群管理节点(Master)负责管理RegionServers集群的负载均衡以及资源分配,ZooKeeper服务器负责集群元数据的维护并且通过监控各服务节点上的服务进程来监控集群的状态以防止单点故障,每个RegionServer会负责具体数据块的读写,HBase所有的数据存储在HDSF系统上。其中,Zookeeper服务器利用会话(seesion)来监控服务进程,具体的,服务节点创建服务进程时,通知在Zookeeper服务器,Zookeeper服务器为该服务进程创建一个临时节点,该服务节点定期向Zookeeper服务器发送该服务进程的心跳消息,如果该服务节点在超过预设的session超时时长后没有向Zookeeper服务器发送心跳消息,则说明 该服务节点上的服务进程发生异常,Zookeeper服务器将该服务据节点上的服务进程的状态设定为超时,并删除该服务进程对应的临时节点,同时通知Master,以启动容灾处理。 上述过程中,从判断服务进程是否出现故障至通知Master进程启动容灾处理,需依赖于Zookeeper设定的session超时时长,目前,session超时时长一般设置为90s左右,由于HBase的服务是单点的,亦即当服务进程出现故障时,该服务进程所在服务节点所服务的数据在恢复前是无法读写的,从而使得Hbase容灾恢复响应时间较长,由于在线服务系统对服务响应时间要求较高,对于几十秒的响应时间是无法容忍的,因此,如何缩短Hbase容灾恢复响应时间成为现有技术中亟待解决的技术问题之一。 
技术实现思路
本申请实施例提供一种服务进程故障检测方法、装置及服务节点,用以简化服务进程监控流程,缩短HBase容灾恢复响应时间。 本申请实施例提供一种服务进程故障检测方法,包括: 第一服务节点启动服务进程,并启动本地的镜像监控进程,其中,所述第一服务节点调用启动后的服务进程提供数据查询服务; 所述第一服务节点通过所述镜像监控进程定期检查所述服务进程的状态,并确定服务进程状态是否异常; 在所述镜像监控进程确定所述服务进程状态异常时,所述第一服务节点通知集群管理节点Master。 本申请实施例提供一种服务进程故障检测装置,包括: 启动单元,用于启动服务进程,并启动该装置本地的镜像监控进程,其中,本装置调用启动后的服务进程提供数据查询服务; 检查单元,用于通过所述镜像监控进程定期检查所述启动单元启动的服务进程的状态,并确定服务进程状态是否异常; 第一通知单元,用于在所述检查单元确定所述服务进程状态异常时,通知集群管理节点Master。 本申请实施例提供一种服务节点,包括上述服务进程故障检测装置。 本申请实施例提供的服务进程故障检测方法、装置及服务节点,服务节点在服务进程启动时,启动本地的镜像监控进程,由本地的镜像监控进程对服务进程进行监控,从而,服务节点无需定时向Zookeeper服务器发送本地服务进程的心跳消息,简化了服务进程的监控流程,同时由于镜像监控进程处于本地,当发现服务进程异常时,能够及时通知Master启动容灾处理,无需依赖Zookeeper服务器预先设置的session超时时长,从而,缩短了容灾恢复响应时间。 本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。 附图说明图1为现有技术中,Hbase的结构示意图; 图2为本申请实施例中,服务进程故障检测方法的实施流程示意图; 图3为本申请实施例中,3个服务节点相互连接的网络拓扑结构示意图; 图4为本申请实施例中,服务进程故障检测装置的结构示意图。 具体实施方式为了简化服务进程监控流程,缩短HBase容灾恢复响应时间,本申请实施例提供一种服务进程故障检测方法、装置及服务节点。 以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不 冲突的情况下,本色很年轻中的实施例及实施例中的特征可以相互组合。 HBase为由多个服务节点组成的服务器集群,集群管理节点(Master)按照预设的规则将数据存储在不同的服务节点上,每一服务节点上存储不同的数据块,并启动一个服务进程以提供数据查询服务,在进行数据查询时,Master按照需要查询的数据块对应的数据块标识,将查询请求分配至对应的服务节点,由该服务节点调用启动的服务进程提供数据查询服务。 实施例一 实施例一为本申请实施例提供的服务进程故障检测方法实施流程,如图2所示,包括以下步骤: S201、服务节点启动服务进程,并启动本地的镜像监控进程; 具体实施时,当服务节点启动一服务进程时,系统将为该服务进程分配一个唯一的进程标识符(PID,Process Identifier),并将为该服务节点对应的PID添加至系统正在运行的进程列表中,其中,服务节点根据接收的数据查询请求调用启动后的服务进程提供数据查询服务,镜像监控进程用于监控服务进程状态,以便及时发现服务进程是否异常,并通知Master启动容灾处理。当服务进程终止(包括正常终止和异常终止)时,服务节点将回收为该服务进程分配的PID,并从进程列表中删除该PID。 S202、服务节点通过启动的镜像监控进程定期检查服务进程状态,并确定该服务进程状态是否异常; 具体实施中,可以设置镜像监控进程每隔5ms或者10ms检查本地的服务进程是否发生异常,由于服务进程发生异常后,系统将会收回为其分配的PID,若镜像监控进程检测到进程列表中该服务进程对应的PID不存在时,则能够确定服务进程状态异常。 S203、在镜像监控进程确定服务进程状态异常时,服务节点通知Master(集群管理节点) 具体的,步骤S203中,镜像监控进程可以通过以下方式确定服务进程状 态发生异常: 步骤一、镜本文档来自技高网
...

【技术保护点】
一种服务进程故障检测方法,其特征在于,包括:第一服务节点启动服务进程,并启动本地的镜像监控进程,其中,所述第一服务节点调用启动后的服务进程提供数据查询服务;以及所述第一服务节点通过所述镜像监控进程定期检查所述服务进程的状态,并确定服务进程状态是否异常;在所述镜像监控进程确定所述服务进程状态异常时,所述第一服务节点通知集群管理节点Master。

【技术特征摘要】
1.一种服务进程故障检测方法,其特征在于,包括:
第一服务节点启动服务进程,并启动本地的镜像监控进程,其中,所述第
一服务节点调用启动后的服务进程提供数据查询服务;以及
所述第一服务节点通过所述镜像监控进程定期检查所述服务进程的状态,
并确定服务进程状态是否异常;
在所述镜像监控进程确定所述服务进程状态异常时,所述第一服务节点通
知集群管理节点Master。
2.如权利要求1所述的方法,其特征在于,还包括:
所述第一服务节点在启动所述服务进程时,为该服务进程分配其对应的进
程标识符PID;并
将所述PID添加至进程列表中;以及
所述镜像监控进程按照以下方式确定所述服务进程状态异常:
所述镜像监控进程获得所述服务进程对应的进程标识符PID;并
按照预设周期,检测所述进程列表中是否存在所述PID;
所述镜像监控进程检测到所述进程列表中不存在所述PID时,确定所述服
务进程状态异常。
3.如权利要求2所述的方法,其特征在于,所述镜像监控进程获得所述
服务进程对应的PID,具体包括:
所述镜像监控进程接收所述服务进程上报的、该服务进程对应的PID;或

所述镜像监控进程从所述进程列表中提取所述服务进程对应的PID。
4.如权利要求1所述的方法,其特征在于,还包括:
所述第一服务节点与至少一台第二服务节点建立通信连接,并通过所述监
控进程监控各第二服务节点上的服务进程;
针对任一第二服务节点,确定与该第二服务节点连接异常时,通知Master。
5.如权利要求4所述的方法,其特征在于,所述服务节点与至少一台第
二服务节点建立通信连接,具体包括:
所述第一服务节点通过所述监控进程的服务端口与各第二服务节点采用
新建服务端口New Socket方式建立通信连接。
6.一种服务进程故障检测装置,其特征在于,包括:
...

【专利技术属性】
技术研发人员:代志远
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1