一种用于分布式服务的集群管理方法和系统的制作方法

文档序号:7552646阅读:420来源:国知局
专利名称:一种用于分布式服务的集群管理方法和系统的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种用于分布式服务的集群管理方法和系统。
背景技术
分布式服务器就是指数据和程序可以不在一个服务器上,而是分散到多个服务器,以网络上分散分布的地理信息数据及受其影响的数据库操作为研究对象的一种理论计算模型服务器形式。分布式有利于任务在整个计算机系统上进行分配与优化,克服了传统集中式系统会导致中心主机资源紧张与响应瓶颈的缺陷,解决了网络中存在的数据异构、数据共享、运算复杂等问题。ZooKeeper是Hadoop (—种分布式系统服务架构)的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。集群中的服务器分为两类角色=Master和Worker,Master负责管理集群中的所有服务器并提供查询接口,Worker负责报告自己的状态给Master并受Master的指挥。Zookeeper作为一个分布式的服务框架,它能提供基于类似于文件系统的目录节点树方式的数据存储,但是Zookeeper并不是用来专门存储数据的,它的作用主要是用来维护和监控存储的数据的状态变化。

发明内容
(一)要解决的技术问题针对上述缺陷,本 发明要解决的技术问题是如何在分布式环境下解决分布式集群中应用系统的一致性问题。(二)技术方案为解决上述问题,本发明提供了一种用于分布式服务的集群管理方法,所述方法包括:S1:每个服务器向Zooke^er服务发送注册请求;S2:所述Zookeeper服务根据所述注册请求对每个服务器进行注册,并根据先后顺序选定其中的一个服务器作为Master ;S3:每个已注册的服务器判断是否被选定为Master,如果是则进入步骤S4,否则没有被选定为Master的服务器向所述选定为Master的服务器进行注册;S4:所述被选定为Master的服务器作为集群管理者对所有的服务器进行管理,并等待其它没有被选定为Master的服务器来注册。优选地,所述步骤SI之前还包括:SO:集群中的所有服务器启动后自动启动一个服务。优选地,所述集群中的一个服务器被选定为Master后,其它服务器主动联系所述选定为Master的服务器。
为解决上述问题,本发明还提供了一种用于分布式服务的集群管理系统,所述系统具体包括:第一注册单元、Master选定单元、判断单元、第二注册单元和管理单元;所述第一注册单元用于每个服务器向Zookeeper服务发送注册请求进行注册;所述Master选定单元用于述Zookeeper服务根据所述注册请求对每个服务器进行注册,并根据先后顺序选定其中的一个服务器作为Master ;所述判断单元用于每个已注册的服务器判断是否被选定为Master,如果是则进入所述管理单元,否则进入所述第二注册单元;所述第二注册单元用于没有被选定为Master的服务器向所述选定为Master的服务器进行注册;所述管理单元用于所述被选定为Master的服务器作为集群管理者对所有的服务器进行管理,并等待其它没有被选定为Master的服务器来注册。优选地,所述系统还包括服务启动单元,用于集群中的所有服务器启动后自动启动一个服务。(三)有益效果本发明提出了一种用于分布式服务的集群管理方法和系统,集群所有服务器启动后首先通过Zookeeper来选举Master,然后Worker主动联系Master,从而实现Master对集群中所有服务器的管理。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。


图1为本发明实施例一的一种用于分布式服务的集群管理方法的流程图;图2为本发明实施例二的一种用于分布式服务的集群管理系统的组成示意图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。实施例一本发明实施例一中提供了一种用于分布式服务的集群管理方法,步骤流程如图1所示,具体包括以下步骤:步骤S1:每个服务器向Zooke^er服务发送注册请求。步骤SI之前还包括:步骤SO:集群中的所有服务器启动后自动启动一个服务。步骤S2 =Zookeeper服务根据注册请求对每个服务器进行注册,并根据先后顺序选定其中的一个服务器作为Master ;步骤S3:每个已注册的服务器判断是否被选定为Master,如果是则进入步骤S4,否则没有被选定为Master的服务器向选定为Master的服务器进行注册;步骤S4:被选定为Master的服务器作为集群管理者对所有的服务器进行管理,并等待其它没有被选定为Master的服务器来注册。集群中的一个服务器被选定为Master后,其它服务器主动联系选定为Master的服务器。通过使用上述方法,集群所有服务器启动后首先通过Zooke^er来选举Master,然后Worker主动联系Master,从而实现Master对集群中所有服务器的管理。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。实施例二为达到上述目的,本发明的实施例二中还提供一种用于分布式服务的集群管理系统,组成示意图如图2所示,具体包括:
第一注册单元21、Master选定单元22、判断单元23、第二注册单元24和管理单元25。第一注册单元21用于每个服务器向Zook^per服务发送注册请求进行注册。 Master选定单元22用于述Zookeeper服务根据注册请求对每个服务器进行注册,并根据先后顺序选定其中的一个服务器作为Master。判断单元23用于每个已注册的服务器判断是否被选定为Master,如果是则进入管理单元25,否则进入第二注册单元24。第二注册单元24用于没有被选定为Master的服务器向选定为Master的服务器进行注册。管理单元25用于被选定为Master的服务器作为集群管理者对所有的服务器进行管理,并等待其它没有被选定为Master的服务器来注册。系统还包括服务启动单元20,用于集群中的所有服务器启动后自动启动一个服务。通过上述系统,集群所有服务器启动后首先通过Zookeeper来选举Master,然后Worker主动联系Master,从而实现Master对集群中所有服务器的管理。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
权利要求
1.一种用于分布式服务的集群管理方法,其特征在于,所述方法具体包括: 51:每个服务器向Zookeeper服务发送注册请求; 52:所述Zookeeper服务根据所述注册请求对每个服务器进行注册,并根据先后顺序选定其中的一个服务器作为Master ; 53:每个已注册的服务器判断是否被选定为Master,如果是则进入步骤S4,否则没有被选定为Master的服务器向所述选定为Master的服务器进行注册; 54:所述被选定为Master的服务器作为集群管理者对所有的服务器进行管理,并等待其它没有被选定为Master的服务器来注册。
2.如权利要求1所述的方法,其特征在于,所述步骤SI之前还包括: SO:集群中的所有服务器启动后自动启动一个服务。
3.如权利要求1所述的方法,其特征在于,所述集群中的一个服务器被选定为Master后,其它服务器主动联系所述选定为Master的服务器。
4.一种用于分布式服务的集群管理系统,其特征在于,所述系统具体包括: 第一注册单元、Master选定单元、判断单元、第二注册单元和管理单元; 所述第一注册单元用于每个服务器向Zookeeper服务发送注册请求进行注册; 所述Master选定单元用于述Zookeeper服务根据所述注册请求对每个服务器进行注册,并根据先后顺序选定其中的一个服务器作为Master ; 所述判断单元用于每个已注册的服务器判断是否被选定为Master,如果是则进入所述管理单元,否则进入所述第二注册单元; 所述第二注册单元用于没有被选定为Master的服务器向所述选定为Master的服务器进行注册; 所述管理单元用于所述被选定为Master的服务器作为集群管理者对所有的服务器进行管理,并等待其它没有被选定为Master的服务器来注册。
5.如权利要求4所述的系统,其特征在于,所述系统还包括服务启动单元,用于集群中的所有服务器启动后自动启动一个服务。
全文摘要
本发明公开了一种用于分布式服务的集群管理方法和系统,每个服务器向Zookeeper服务发送注册请求;Zookeeper服务根据注册请求对每个服务器进行注册,并根据先后顺序选定其中的一个服务器作为Master;每个已注册的服务器判断是否被选定为Master,如果是则被选定为Master的服务器作为集群管理者对所有的服务器进行管理,并等待其它没有被选定为Master的服务器来注册,否则没有被选定为Master的服务器向选定为Master的服务器进行注册。集群所有服务器启动后首先通过Zookeeper来选举Master,Worker主动联系Master,从而实现Master对集群中所有服务器的管理。
文档编号H04L12/24GK103118130SQ201310058640
公开日2013年5月22日 申请日期2013年2月25日 优先权日2013年2月25日
发明者徐安 申请人:汉柏科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1