配置文件自动化管理方法和系统、配置管理平台和客户端技术方案

技术编号:21898944 阅读:17 留言:0更新日期:2019-08-17 18:25
本发明专利技术实施例提供一种配置文件自动化管理方法和系统、配置管理平台和客户端,其中,该方法包括:配置管理平台生成版本配置信息;配置管理平台将版本配置信息同步配置到多个目标服务器;在同步配置成功之后,配置管理平台发送验证请求到多个目标服务器,用于请求验证多个目标服务器中各个目标服务器接收到的文件的完整性;在确定各个目标服务器都验证通过的情况下,确定发布成功;在确定存在未验证通过的目标服务器的情况下,控制多个目标服务器回滚至之前的版本。通过上述方案解决了现有的配置文件自动化管理实现过于复杂的技术问题,达到了高效实现文件配置的目的,且可以保证配置文件的正确性和完整性。

Configuration File Automation Management Method and System, Configuration Management Platform and Client

【技术实现步骤摘要】
配置文件自动化管理方法和系统、配置管理平台和客户端
本专利技术涉及互联网
,尤其涉及一种配置文件自动化管理方法和系统、配置管理平台和客户端。
技术介绍
随着互联网技术的不断,业务项目也越来越多,项目也越来越复杂,相应的,项目的配置文件也越来越多。为了满足业务需求的变化,一般会在配置文件中设置变量,通过修改配置文件中的变量来满足需求的变更。然而,针对如果快速准确地生成或者更改配置文件,并同步到线上服务器还没有特别好的解决方案。这主要是因为在系统变复杂的情况下,配置项会越来越多,一方面配置管理变得繁琐,另一方面配置修改后需要重新上线的工作量也非常大。这种情况下就需要一套集中化配置管理系统,一方面提供统一的配置管理,另一方面提供配置变更的自动下发以使得配置变更可以及时生效,现有的统一配置管理系统,常见的有:zookeeper、etcd等等现有的配置文件自动化管理方案可以如图1所示,server端只需要调用config-server对应的客户端获取配置,然后监听配置变更即可,实现起来较为简单。confd,它提供了一种新的集成思路,confd的存在类似于快递员,买了东西不需要自己到店取货,confd这个快递员会将货取过来,然后送到家里,并且通知用户端货已经送到了。Confd架构流程可以如图2所示。confd是分布式的,较稳定,也更容易上手使用,可以较为简单地接入到自己的用户程序中,然而,confd整体而言比较笨重,对于配置信息的类,回调函数类,都要求是单例的,不关心配置信息内部具体的变动,只有使用者自己去实现这部分功能,实现配置信息类的方法比较繁杂。Zookeeper的主要优势是成熟、健壮以及丰富的特性,然而,Zookeeper需要采用Java开发,且实现起来较为复杂。针对现有的配置文件自动化管理方案所存在的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供一种配置文件自动化管理方法和系统、配置管理平台和客户端,以达到简单高效实现文件配置的目的,且可以保证配置文件的正确性和完整性。一方面,本专利技术实施例提供了一种配置文件自动化管理方法,包括:配置管理平台生成版本配置信息;所述配置管理平台将所述版本配置信息同步配置到多个目标服务器;在同步配置成功之后,所述配置管理平台发送验证请求到所述多个目标服务器,用于请求验证所述多个目标服务器中各个目标服务器接收到的文件的完整性;在确定各个目标服务器都验证通过的情况下,确定发布成功;在确定存在未验证通过的目标服务器的情况下,控制所述多个目标服务器回滚至之前的版本。另一方面,本专利技术实施例提供了一种配置文件自动化管理方法,包括:客户端向目标服务器发送版本更新请求以获取版本配置信息;所述客户端根据获取的版本配置信息中的版本号,与本地存储的版本号进行比对;在获取的版本配置信息中的版本号与本地存储的版本号不同的情况下,将所述版本配置信息配置到本地;对配置后的版本配置信息进行校验,在校验通过的情况下,将所述版本配置信息推送至预设文件夹。又一方面,本专利技术实施例提供了一种配置管理平台,包括:生成模块,用于生成版本配置信息;同步模块,用于将所述版本配置信息同步配置到多个目标服务器;发送模块,用于在同步配置成功之后,发送验证请求到所述多个目标服务器,用于请求验证所述多个目标服务器中各个目标服务器接收到的文件的完整性;确定模块,用于在确定各个目标服务器都验证通过的情况下,确定发布成功;控制模块,用于在确定存在未验证通过的目标服务器的情况下,控制所述多个目标服务器回滚至之前的版本。又一方面,本专利技术实施例提供了一种客户端,包括:发送模块,用于向目标服务器发送版本更新请求以获取版本配置信息;比对模块,用于根据获取的版本配置信息中的版本号,与本地存储的版本号进行比对;配置模块,用于在获取的版本配置信息中的版本号与本地存储的版本号不同的情况下,将所述版本配置信息配置到本地;校验模块,用于对配置后的版本配置信息进行校验,在校验通过的情况下,将所述版本配置信息推送至预设文件夹。又一方面,本专利技术实施例提供了一种配置文件自动化管理系统,包括:上述的配置管理平台、客户端、和多个目标服务器。上述技术方案具有如下有益效果:由配置管理平台生成版本配置信息,然后将生成的版本配置信息同步配置到多个目标服务器,在配置成功之后,各个目标服务器验证接收到的文件的完整性,只有在确定各个目标服务器都验证通过的情况下,才确定发布成功,如果存在未验证通过的服务器,那么就进行版本回滚。通过上述方案解决了现有的配置文件自动化管理实现过于复杂的技术问题,达到了高效实现文件配置的目的,且可以保证配置文件的正确性和完整性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为现有的配置文件自动化管理架构示意图;图2为现有的Confd架构流程示意图;图3为本专利技术实施例一种配置文件自动化管理方法的流程图;图4为本专利技术实施例另一种配置文件自动化管理方法的流程图;图5为本专利技术实施例一种配置文件自动化管理装置的结构框图;图6为本专利技术实施例另一种配置文件自动化管理装置的结构框图;图7为本专利技术实施例一种配置文件自动化管理系统示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。考虑到对于一个可靠的分布式配置平台而言,需要满足如下特性:高可用性,即,服务器集群应该无单点故障,只要集群中还有存活的节点,就能提供服务;容错性,容错性主要针对客户端,应保证即便在配置平台不可用时,也不影响客户端的正常运行;高性能:针对配置平台,主要操作是获取配置,不能因为获取配置给应用带来不可接受的损失;可靠的存储:这包括数据的备份容灾,一致性等,通过数据库和一些运维手段可以解决;近似实时生效:对于配置的变更,客户端应用能够及时感知;负载均衡:为了尽量提升服务器集群的性能及稳定性,应尽量保证客户端的请求能尽量均衡负载到各服务器节点;扩展性:服务器集群应该保证做到无感扩容,以提升集群服务能力。基于这种需求,在本例中,提供了一种配置文件自动化管理方法,如图3所示,可以包括如下步骤:步骤301:配置管理平台生成版本配置信息;其中,配置管理平台具体的可以配置但不限于以下内容:配置生成目录结构:根目录/版本号/服务器ip/项目名称/配置;配置索引路径:根目录/版本号/服务器ip/ConfigList.md5;配置索引内文件格式:配置路径配置内容md5\n;生成一个版本号文件夹,内包含每个node(即,目标服务器)的所有配置。步骤302:所述配置管理平台将所述版本配置信息同步配置到多个目标服务器;例如,可以通过如下指令进行远程同步:rsync-av20181018xxxx/ip:port::graystone,以将版本配置信息同步配置本文档来自技高网
...

【技术保护点】
1.一种配置文件自动化管理方法,其特征在于,所述方法包括:配置管理平台生成版本配置信息;所述配置管理平台将所述版本配置信息同步配置到多个目标服务器;在同步配置成功之后,所述配置管理平台发送验证请求到所述多个目标服务器,用于请求验证所述多个目标服务器中各个目标服务器接收到的文件的完整性;在确定各个目标服务器都验证通过的情况下,确定发布成功;在确定存在未验证通过的目标服务器的情况下,控制所述多个目标服务器回滚至之前的版本。

【技术特征摘要】
1.一种配置文件自动化管理方法,其特征在于,所述方法包括:配置管理平台生成版本配置信息;所述配置管理平台将所述版本配置信息同步配置到多个目标服务器;在同步配置成功之后,所述配置管理平台发送验证请求到所述多个目标服务器,用于请求验证所述多个目标服务器中各个目标服务器接收到的文件的完整性;在确定各个目标服务器都验证通过的情况下,确定发布成功;在确定存在未验证通过的目标服务器的情况下,控制所述多个目标服务器回滚至之前的版本。2.根据权利要求1所述的方法,其特征在于,所述配置管理平台发送验证请求到所述多个目标服务器,包括:所述配置管理平台发布版本号到所述多个目标服务器,以触发所述多个目标服务器中各个目标服务器从接收到的文件的文件目录中读取MD5值,并对MD5值进行校验,以验证接收到的文件的完整性。3.根据权利要求1所述的方法,其特征在于,在确定所述多个目标服务器中各个目标服务器都验证通过的情况下,确定发布成功,包括:在确定各个目标服务器都验证通过的情况下,向所述多个目标服务器发送切换配置命令,其中,所述切换配置指令用于指示目标服务器将所述版本配置信息配置到指定目录中;所述配置管理平台在确定各个目标服务器都反馈配置成功消息的情况下,确定发布成功。4.根据权利要求1所述的方法,其特征在于,在配置管理平台生成版本配置信息之后,还包括:在接收到添加配置请求的情况下,确定请求添加的文件的文件名是否符合唯一性要求;在确定符合唯一性要求的情况下,确定所述请求添加的文件的文件类型是否为预设类型;在确定为预设类型的情况下,将所述请求添加的文件增加至所述版本配置信息中,其中,所述预设类型包括以下至少之一:php、json、xml、ini。5.根据权利要求1所述的方法,其特征在于,配置管理平台生成版本配置信息,包括:对所述多个目标服务器中的各个目标服务器进行遍历,将各个目标服务器配置内的变量替换为新配置的变量参数,将各个目标服务器配置内的常量替换为新配置的常量参数,...

【专利技术属性】
技术研发人员:邱帅兵任文越黄晨
申请(专利权)人:微梦创科网络科技中国有限公司
类型:发明
国别省市:北京,11

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

1