CN106685706A - 一种基于Zookeeper的配置更新方法及系统 - Google Patents
一种基于Zookeeper的配置更新方法及系统 Download PDFInfo
- Publication number
- CN106685706A CN106685706A CN201611151053.9A CN201611151053A CN106685706A CN 106685706 A CN106685706 A CN 106685706A CN 201611151053 A CN201611151053 A CN 201611151053A CN 106685706 A CN106685706 A CN 106685706A
- Authority
- CN
- China
- Prior art keywords
- configuration file
- zookeeper
- configuration
- nos
- disconf
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于Zookeeper的配置文件更新方法及系统,包括:通过网络连接的ZooKeeper、统一配置管理平台、disconf配置中心和NOS;首先,获取研发人员申请上线的申请信息,如果所述研发人员的申请信息经所述统一配置管理平台审批通过,则生成配置文件,所述配置文件通过所述统一配置管理平台上传到所述NOS,在所述NOS中,所述配置文件按照不同环境、不同产品线及不同应用存储。本发明通过引入全网联通的NOS,使得各个环境下的配置信息都能通过NOS进行存储和更新,解决了现有技术和disconf配置中心无法满足多环境下应用的配置需求的问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于Zookeeper的配置更新方法及系统。
背景技术
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务系统,它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。一个ZooKeeper服务器可以连接多台应用服务器。一个应用程序包含多个应用程序实例,并且每个应用程序示例在其中一台应用服务器中运行。现有的基于zookeeper的信息配置方案是:每个服务器中每个进程都要建立与zookeeper服务器之间的长连接,每个进程通过调用zookeeper服务器的接口监控自身进程的配置信息,当某一个进程的配置信息需要修改时,操作人员只需要修改zookeeper服务器上相应的配置信息,一旦发现zookeeper服务器的配置信息发生变动,对应的服务器进程及时更新自身进程的配置信息。
disconf是一套完整的基于zookeeper的分布式配置统一解决方案。如图1所示,disconf实现了同构系统的配置发布统一化,提供了配置服务server,该服务可以对配置进行持久化管理并对外提供restful接口,在此基础上,基于zookeeper实现对配置更改的实时推送,并且,提供了稳定有效的容灾方案,以及用户体验良好的编程模型和WEB用户管理界面。其次,实现了异构系统的配置包管理,提出基于zookeeper的全局分布式一致性锁来实现主备统一部署、系统异常时的主备自主切换。
专利号为201310472913.9的文献公开了一种基于zookeeper的信息配置方法,其包括:启动一个进程占有进程间的锁,并建立所述进程与zookeeper服务器之间的长连接,通过所述进程监控本地磁盘中所有配置信息,以使所述zookeeper服务器在配置信息发生变动时,向所述进程发送更新配置信息通知;所述进程根据接收到的更新配置信息通知,从所述zookeeper服务器中获取对应的配置信息并更新到本地磁盘中,以使待读取配置信息的进程从本地磁盘中查找自身对应的配置信息,若查找到对应的配置信息,所述待读取配置信息的进程从本地磁盘中读取自身对应的配置信息,若没有查找到对应的配置信息,所述待读取配置信息的进程建立与zookeeper服务器之间的短连接,从所述zookeeper服务器中获取自身对应的配置信息并储存在本地磁盘。该方法通过启动一个进程占用进程间的锁,使得该进程对共享数据的修改的时间段内其他进程无法对该共享数据进行任何操作,且该进程对共享数据的操作其他进程都能够立刻知道,建立该进程与zookeeper服务器之间的长连接,通过该进程监控本地磁盘中所有的配置信息。根据接收到zookee pe r服务器发出的更新配置信息的通知,所述进程从所述zookeeper服务器中获取对应的配置信息并更新到本地磁盘中,任意一个进程运行需要获取配置信息时,只需要去本地磁盘查找自身对应的配置信息,而无需再与zookeeper服务器之间建立长连接;若本地磁盘中没有对应的配置信息,说明该进程的相关配置信息还没有被监控,这种情况下只需与zookeeper服务器之间的建立一个短连接,从所述zookeeper服务器中获取自身配置信息并储存在本地磁盘,以使该进程的配置信息也得到监控,由于已经与zookeeper服务器之间建立了长连接的用于监控本地磁盘中所有配置信息的进程会实时或者定期扫描本地磁盘,当扫描到本地磁盘中存在该进程的配置信息,将对该进程的配置信息也进行监控,以保证实时更新该进程的配置信息。由此可见:利用本发明的方法每个服务器不需要建立每个进程与zookeeper服务器之间的长连接,而是通过利用一个进程占有进程间的锁和本地磁盘的共享,只建立一个进程与zookeeper服务器之间的长连接和最初时的短连接的方式即可保证所有进程的配置信息都得到监控,同时降低zookeeper服务器的负载。
上述方法虽然降低了zookeeper服务器的负载,但本发明人发现,在云服务的环境下,现在大部分公司都采用了云服务架构来部署应用;同时在实际开发过程中系统会存在开发环境、测试环境、联调环境、演练环境、灰度环境、线上环境等不同的系统运行环境,而考虑到安全问题,一般情况下这些环境在云服务的架构体系下都是网络隔离的,这样上述公开的方法和disconf解决方案都无法满足多环境下应用的配置需求。
NOS(Netease Object Storage)致力于提供最优质的对象存储以及基于存储的富媒体和上下行加速服务,一站式解决移动互联网时代非结构数据管理难题,助力产品方实现最佳用户体验。NOS的应用场景有:静态网站或者网站的静态数据;图片、音频、视频类APP;视频播放类业务;网盘等UGC类业务;文件备份和中转类业务;日志归档类业务;SNS类业务的非结构化数据解决方案;基于存储的上下行加速类业务等。
发明内容
本发明的目的之一在于提供一种基于Zookeeper的配置更新方法,解决目前使用disconf做为配置管理中遇到多环境重复配置、手工干预多、容易出错等问题。
本发明的发明目的之二在于提供一种基于Zookeeper的配置更新系统,通过引入NOS(Netease Object Storage),解决目前存在的不同环境之间网络隔离的问题。
本发明的技术方案为,一种基于Zookeeper的配置文件更新方法,包括:通过网络连接的ZooKeeper、统一配置管理平台、disconf配置中心和NOS;首先,获取研发人员申请上线的申请信息,如果所述研发人员的申请信息经所述统一配置管理平台审批通过,则生成配置文件,所述配置文件通过所述统一配置管理平台上传到所述NOS,在所述NOS中,所述配置文件按照不同环境、不同产品线及不同应用存储。
进一步地,在每个环境中,都配置一个agent,所述agent定时去所述NOS中获取对应的配置文件,获取完成后,自动将所述NOS中的配置文件删除。
进一步地,所述agent在获取到对应的配置文件后,修改所述disconf配置中心的配置表。
进一步地,所述disconf配置中心将更新后的配置文件发送到对应的zookeeper。
进一步地,当网络中与所述zookeeper相连的应用监听到所述zookeeper的节点数据变化,则自动更新其相应的配置文件。
一种基于Zookeeper的配置文件更新系统,包括:通过网络连接的ZooKeeper、统一配置管理平台、disconf配置中心和NOS;首先,获取研发人员申请上线的申请信息,如果所述研发人员的申请信息经所述统一配置管理平台审批通过,则生成配置文件,所述配置文件通过所述统一配置管理平台上传到所述NOS,在所述NOS中,所述配置文件按照不同环境、不同产品线及不同应用存储。
进一步地,在每个环境中,都配置一个agent,所述agent定时去所述NOS中获取对应的配置文件,获取完成后,自动将所述NOS中的配置文件删除。
进一步地,所述agent在获取到对应的配置文件后,修改所述disconf配置中心的配置表。
进一步地,所述disconf配置中心将更新后的配置文件发送到对应的zookeeper。
进一步地,当网络中与所述zookeeper相连的应用监听到所述zookeeper的节点数据变化,则自动更新其相应的配置文件。
本发明的技术方案的有益效果在于:第一、虽然各个环境在云服务的架构体系下都是网络隔离,但本发明通过引入全网联通的NOS,使得各个环境下的配置信息都能通过NOS进行存储和更新,解决了现有技术和disconf配置中心无法满足多环境下应用的配置需求的问题。
第二、本发明创造性的在各个环境中,都配置一个agent,所述agent定时去所述NOS中获取对应的配置文件,获取完成后在所述NOS中删除该配置文件;所述agent在获取到对应的配置文件后,修改所述disconf配置中心的配置表;所述disconf配置中心将更新后的配置文件发送到对应的zookeeper上;当网络中与所述zookeeper相连的应用监听到所述zookeeper的节点数据变化,则自动更新网络中相应的配置文件。这样原来网络隔离了的配置文件都能进行存储和更新,解决了现有技术和disconf配置中心无法满足网络隔离条件下应用的配置需求的问题。
附图说明
图1为本发明背景技术disconf配置中心的结构示意图;
图2为本发明的结构示意图;
图3为本发明的流程示意图。
具体实施方式
以下结合附图和实施例对本发明的技术方案作详细说明。
如图2和图3所示,一种基于Zookeeper的配置文件更新方法,包括:通过网络连接的ZooKeeper、统一配置管理平台、disconf配置中心和NOS;首先,获取研发人员申请上线的申请信息,如果所述研发人员的申请信息经所述统一配置管理平台审批通过,则生成配置文件,所述配置文件通过所述统一配置管理平台上传到所述NOS,在所述NOS中,所述配置文件按照不同环境、不同产品线及不同应用存储。
进一步地,在每个环境中,都配置一个agent,所述agent每隔三分钟去所述NOS中获取对应的配置文件,获取完成后,自动将所述NOS中的配置文件删除。
进一步地,所述agent在获取到对应的配置文件后,修改所述disconf配置中心的配置表。
进一步地,所述disconf配置中心将更新后的配置文件发送到对应的zookeeper。
进一步地,当网络中与所述zookeeper相连的应用监听到所述zookeeper的节点数据变化,则自动更新其相应的配置文件。
以上的描述仅仅涉及本发明的一些具体实施方式,任何本领域的技术人员基于本发明的精神所做的替换或改进均应为本发明的保护范围所涵盖,本发明的保护范围应以权利要求书为准。
Claims (10)
1.一种基于Zookeeper的配置文件更新方法,包括:通过网络连接的ZooKeeper、统一配置管理平台、disconf配置中心和NOS;首先,获取研发人员申请上线的申请信息,如果所述研发人员的申请信息经所述统一配置管理平台审批通过,则生成配置文件,所述配置文件通过所述统一配置管理平台上传到所述NOS,在所述NOS中,所述配置文件按照不同环境、不同产品线及不同应用存储。
2.根据权利要求1所述的基于Zookeeper的配置文件更新方法,其特征在于,在每个环境中,都配置一个agent,所述agent定时去所述NOS中获取对应的配置文件,获取完成后,自动将所述NOS中的配置文件删除。
3.根据权利要求2所述的基于Zookeeper的配置文件更新方法,其特征在于,所述agent在获取到对应的配置文件后,修改所述disconf配置中心的配置表。
4.根据权利要求3所述的基于Zookeeper的配置文件更新方法,其特征在于,所述disconf配置中心将更新后的配置文件发送到对应的zookeeper。
5.根据权利要求4所述的基于Zookeeper的配置文件更新方法,其特征在于,当网络中与所述zookeeper相连的应用监听到所述zookeeper的节点数据变化,则自动更新其相应的配置文件。
6.一种基于Zookeeper的配置文件更新系统,包括:通过网络连接的ZooKeeper、统一配置管理平台、disconf配置中心和NOS;首先,获取研发人员申请上线的申请信息,如果所述研发人员的申请信息经所述统一配置管理平台审批通过,则生成配置文件,所述配置文件通过所述统一配置管理平台上传到所述NOS,在所述NOS中,所述配置文件按照不同环境、不同产品线及不同应用存储。
7.根据权利要求6所述的基于Zookeeper的配置文件更新系统,其特征在于,在每个环境中,都配置一个agent,所述agent定时去所述NOS中获取对应的配置文件,获取完成后,自动将所述NOS中的配置文件删除。
8.根据权利要求7所述的基于Zookeeper的配置文件更新系统,其特征在于,所述agent在获取到对应的配置文件后,修改所述disconf配置中心的配置表。
9.根据权利要求8所述的基于Zookeeper的配置文件更新系统,其特征在于,所述disconf配置中心将更新后的配置文件发送到对应的zookeeper。
10.根据权利要求9所述的基于Zookeeper的配置文件更新系统,其特征在于,当网络中与所述zookeeper相连的应用监听到所述zookeeper的节点数据变化,则自动更新其相应的配置文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611151053.9A CN106685706A (zh) | 2016-12-14 | 2016-12-14 | 一种基于Zookeeper的配置更新方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611151053.9A CN106685706A (zh) | 2016-12-14 | 2016-12-14 | 一种基于Zookeeper的配置更新方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106685706A true CN106685706A (zh) | 2017-05-17 |
Family
ID=58868361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611151053.9A Pending CN106685706A (zh) | 2016-12-14 | 2016-12-14 | 一种基于Zookeeper的配置更新方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106685706A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203471A (zh) * | 2017-05-24 | 2017-09-26 | 腾讯科技(深圳)有限公司 | 联调方法、服务平台及计算机存储介质 |
CN107220897A (zh) * | 2017-05-24 | 2017-09-29 | 腾讯科技(深圳)有限公司 | 一种收益入账的处理方法和装置以及处理系统 |
CN107506218A (zh) * | 2017-09-14 | 2017-12-22 | 北京京东尚科信息技术有限公司 | 一种配置文件的管理方法及管理系统 |
CN107707671A (zh) * | 2017-10-30 | 2018-02-16 | 郑州云海信息技术有限公司 | 一种MyCat集群统一配置的方法 |
CN108416035A (zh) * | 2018-03-12 | 2018-08-17 | 四川长虹电器股份有限公司 | 一种基于disconf的数据库映射文件统一管理方法 |
CN110134453A (zh) * | 2018-02-09 | 2019-08-16 | 网宿科技股份有限公司 | 服务器配置重载方法及服务器 |
CN111654532A (zh) * | 2020-05-08 | 2020-09-11 | 国云科技股份有限公司 | 一种配置文件集中管理系统、方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104202383A (zh) * | 2014-08-26 | 2014-12-10 | 浪潮软件股份有限公司 | 一种分布式集群环境下集中配置分发管理的方法 |
CN104199666A (zh) * | 2014-09-09 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种应用程序动态配置方法及装置 |
CN105320527A (zh) * | 2014-06-12 | 2016-02-10 | 中兴通讯股份有限公司 | 基于zookeeper分布式搜索引擎的配置文件更新方法、装置及系统 |
CN105677404A (zh) * | 2015-12-31 | 2016-06-15 | 拉扎斯网络科技(上海)有限公司 | 一种基于Zookeeper的配置更新方法及装置 |
CN106020877A (zh) * | 2016-05-16 | 2016-10-12 | 乐视控股(北京)有限公司 | 系统环境配置自动更新方法及装置 |
US20160301587A1 (en) * | 2015-04-09 | 2016-10-13 | Alibaba Group Holding Limited | Apparatus, system and method for fast leader election by coordination service |
-
2016
- 2016-12-14 CN CN201611151053.9A patent/CN106685706A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320527A (zh) * | 2014-06-12 | 2016-02-10 | 中兴通讯股份有限公司 | 基于zookeeper分布式搜索引擎的配置文件更新方法、装置及系统 |
CN104202383A (zh) * | 2014-08-26 | 2014-12-10 | 浪潮软件股份有限公司 | 一种分布式集群环境下集中配置分发管理的方法 |
CN104199666A (zh) * | 2014-09-09 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种应用程序动态配置方法及装置 |
US20160301587A1 (en) * | 2015-04-09 | 2016-10-13 | Alibaba Group Holding Limited | Apparatus, system and method for fast leader election by coordination service |
CN105677404A (zh) * | 2015-12-31 | 2016-06-15 | 拉扎斯网络科技(上海)有限公司 | 一种基于Zookeeper的配置更新方法及装置 |
CN106020877A (zh) * | 2016-05-16 | 2016-10-12 | 乐视控股(北京)有限公司 | 系统环境配置自动更新方法及装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203471A (zh) * | 2017-05-24 | 2017-09-26 | 腾讯科技(深圳)有限公司 | 联调方法、服务平台及计算机存储介质 |
CN107220897A (zh) * | 2017-05-24 | 2017-09-29 | 腾讯科技(深圳)有限公司 | 一种收益入账的处理方法和装置以及处理系统 |
CN107203471B (zh) * | 2017-05-24 | 2023-03-24 | 腾讯科技(深圳)有限公司 | 联调方法、服务平台及计算机存储介质 |
CN107506218A (zh) * | 2017-09-14 | 2017-12-22 | 北京京东尚科信息技术有限公司 | 一种配置文件的管理方法及管理系统 |
CN107707671A (zh) * | 2017-10-30 | 2018-02-16 | 郑州云海信息技术有限公司 | 一种MyCat集群统一配置的方法 |
CN110134453A (zh) * | 2018-02-09 | 2019-08-16 | 网宿科技股份有限公司 | 服务器配置重载方法及服务器 |
CN110134453B (zh) * | 2018-02-09 | 2022-07-08 | 网宿科技股份有限公司 | 服务器配置重载方法及服务器 |
CN108416035A (zh) * | 2018-03-12 | 2018-08-17 | 四川长虹电器股份有限公司 | 一种基于disconf的数据库映射文件统一管理方法 |
CN108416035B (zh) * | 2018-03-12 | 2021-06-22 | 四川长虹电器股份有限公司 | 一种基于disconf的数据库映射文件统一管理方法 |
CN111654532A (zh) * | 2020-05-08 | 2020-09-11 | 国云科技股份有限公司 | 一种配置文件集中管理系统、方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106685706A (zh) | 一种基于Zookeeper的配置更新方法及系统 | |
CN105897946B (zh) | 一种访问地址的获取方法及系统 | |
US10110430B2 (en) | Intelligent agent features for wearable personal communication nodes | |
RU2589357C2 (ru) | Автоматизированное восстановление и передача по инстанции в комплексных распределенных приложениях | |
CN112069265B (zh) | 配置数据的同步方法、业务数据系统、计算机系统和介质 | |
US7761564B2 (en) | Method and system for monitoring server events in a node configuration by using direct communication between servers | |
US7937716B2 (en) | Managing collections of appliances | |
US20090063650A1 (en) | Managing Collections of Appliances | |
CN108306804A (zh) | 一种Ethercat主站控制器及其通信方法和系统 | |
CN110784347A (zh) | 一种容器集群的节点管理方法、系统、设备及存储介质 | |
Bergaus | Design issues for service delivery platforms: Incorporate user experience: A grounded theory study of individual user needs | |
CN113312145A (zh) | 一种容器调度方法、装置、电子设备及介质 | |
CN106357466B (zh) | 一种互联网产品监控方法及监控系统 | |
CN107038094A (zh) | 一种数据备份方法及装置 | |
CN106874062A (zh) | 一种虚拟机更新方法和装置 | |
CN108173955A (zh) | 一种云平台排除服务器故障的系统 | |
CN114610798A (zh) | 资源配置管理方法及系统、装置、存储介质及电子设备 | |
CN106776756A (zh) | 服务器端、客户端处理天气资源数据的方法和装置 | |
Ise | Towards a Unified University information system: bridging the gap of data interoperability | |
WO2020240954A1 (ja) | 情報処理システム、及び情報処理システムの制御方法 | |
JP7189104B2 (ja) | 情報処理システム、及び情報処理システムの制御方法 | |
Chen et al. | Design of Log Collection Architecture Based on Cloud Native Technology | |
CN110991676B (zh) | 一种基于模块化设计的运维管理平台 | |
CN113946623B (zh) | 一种主备系统数据实时同步系统及方法 | |
CN114398149A (zh) | 一种在多可用区部署分布式数据库容器的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170517 |
|
RJ01 | Rejection of invention patent application after publication |