[发明专利]一种基于ZooKeeper的分布式应用管理方法在审

专利信息
申请号: 201710947103.2 申请日: 2017-10-12
公开(公告)号: CN107562522A 公开(公告)日: 2018-01-09
发明(设计)人: 沙一川 申请(专利权)人: 国电南瑞科技股份有限公司;南京南瑞集团公司;南京南瑞集团公司节能环保分公司;国电南瑞南京控制系统有限公司
主分类号: G06F9/455 分类号: G06F9/455;G06F9/50;H04L12/24
代理公司: 南京纵横知识产权代理有限公司32224 代理人: 董建林,俞翠华
地址: 211106 江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 zookeeper 分布式 应用 管理 方法
【说明书】:

技术领域

发明属于自动化技术领域,具体涉及一种基于ZooKeeper的分布式应用管理方法。

背景技术

现有的自动化系统中,各个服务器节点需要运行多个应用,应用分为主机和备机,主机对外提供服务,每个服务器节点通过广播或组播获取其它服务器节点上应用信息。这种管理机制扩展性不够,要求各服务器节点网络必须支持广播或组播协议。随着云技术和虚拟化技术的发展,需要在云平台中的虚拟机上部署系统,云平台虚拟机之间不支持广播及组播已成常态,导致现有应用管理无法提供服务。

发明内容

针对上述问题,本发明提出一种基于ZooKeeper的分布式应用管理方法,充分利用ZooKeeper的分布式协调服务能力,实现了应用的分布式管理,不依赖于网络广播、组播等协议。

实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:

一种基于ZooKeeper的分布式应用管理方法,包括以下步骤:

(1)初始化ZooKeeper管理中心:选取奇数个服务器节点,进行配置,构建ZooKeeper管理中心,所述ZooKeeper管理中心包括一个Leader和若干个Follower;

(2)服务器节点应用状态的发布:各服务器节点启动时,初始化本节点应用状态,并抽象为应用服务,然后向ZooKeeper管理中心创建应用状态节点,并在ZooKeeper管理中心生成应用服务目录结构;

(3)服务器节点应用状态的更新:各个服务器节点周期性的检查本节点应用服务状态,并向ZooKeeper管理中心更新该应用状态节点下服务提供者节点信息;

(4)节点应用状态故障或主动退出:服务器节点发生应用故障、退出或者宕机时,向ZooKeeper管理中心删除该应用状态节点下的服务提供者节点信息;

(5)客户端获取应用服务:ZooKeeper管理中心主动将应用服务状态信息推送到关注此应用服务的客户端,客户端完成应用服务的更新。

进一步地,所述步骤(1)具体为:选取奇数个服务器节点,进行配置,构建ZooKeeper管理中心,ZooKeeper管理中心通过选举算法,选举出唯一的Leader和若干个Follower,并确保各不同服务器的数据一致性。

进一步地,所述选举算法为LeaderElection算法。

进一步地,所述选举出唯一的Leader和若干个Follower的具体过程为:

(1.1):选取奇数个服务器节点作为ZooKeeper管理中心节点(zk1…zk2n+1),开始选举Leader;

(1.2):各个节点启动选举线程,向zk1…zk2n+1节点发起询问,如果是第一次询问,初始化投票信息,投票信息包含节点唯一标识nodeid(即节点id)和ZooKeeper事务标识zkid(zookeeper事务id用于区分zookeeper管理中心是否有变更,比如新节点加入等),表示为(nodeid,zkid);选举线程收到回复后,验证是否是自己发起的询问,然后获取对方的nodeid,并存储到询问对象列表中,最后获取对方提议的leader信息(nodeid,zkid),并存储到选举的投票记录表中;

(1.3)收到所有zk节点回复后,与本节点投票信息比较,计算zkid最大的zk节点,如果zkid相同,则比较nodeid,选择nodeid最大的zk节点,并将此节点设置成下一次投票推荐的zk节点;所述下次投票指的是修改本节点投票信息为本轮推荐的zk节点参与下轮投票,开始都是推荐自己;

(1.4)将当前zkid最大的zk节点设置为要推荐的Leader,如果zk节点获得超过n+1个节点的选票,则当前zk节点为Leader,否则重复进行1.2到1.4步骤,直到选举出Leader。

进一步地,所述步骤(3)具体为:各个服务器节点通过检查各个应用关联bundle(基于OSGI规范的插件,类似进程)的运行状态来判断本服务器的应用状态,然后向ZooKeeper管理中心更新该应用服务节点的信息,应用服务节点信息包括节点主机名、IP和时间。

进一步地,所述步骤(4)具体为:服务器节点发生应用故障或主动退出时,本服务器节点所提供的该应用服务已不可用,主动删除该应用服务在ZooKeeper管理中心上的应用状态节点。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国电南瑞科技股份有限公司;南京南瑞集团公司;南京南瑞集团公司节能环保分公司;国电南瑞南京控制系统有限公司,未经国电南瑞科技股份有限公司;南京南瑞集团公司;南京南瑞集团公司节能环保分公司;国电南瑞南京控制系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710947103.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top