CN111198726B - 一种适应传统应用云化的配置系统及方法 - Google Patents

一种适应传统应用云化的配置系统及方法 Download PDF

Info

Publication number
CN111198726B
CN111198726B CN201911398912.8A CN201911398912A CN111198726B CN 111198726 B CN111198726 B CN 111198726B CN 201911398912 A CN201911398912 A CN 201911398912A CN 111198726 B CN111198726 B CN 111198726B
Authority
CN
China
Prior art keywords
configuration
client
information
center
environment
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.)
Active
Application number
CN201911398912.8A
Other languages
English (en)
Other versions
CN111198726A (zh
Inventor
张伟
林殷
徐凤桐
黄会敏
熊兆
韩琼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongke Star Map Co ltd
Original Assignee
Zhongke Star Map Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhongke Star Map Co ltd filed Critical Zhongke Star Map Co ltd
Priority to CN201911398912.8A priority Critical patent/CN111198726B/zh
Publication of CN111198726A publication Critical patent/CN111198726A/zh
Application granted granted Critical
Publication of CN111198726B publication Critical patent/CN111198726B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提出一种适应传统应用云化的配置系统及方法,包括如下步骤:步骤1、配置中心进行初始化;步骤2、应用开发者编写和设置应用程序使用的配置模板;步骤3、部署配置中心客户端;步骤4、部署应用程序并启动。本发明是一种范语言、范框架的云平台配置系统及方法,既可以兼容传统应用配置,使得传统应用以较小的代价实现云平台配置的迁移;也可以兼容云原生应用的配置管理。本发明所提配置系统及方法通过多种配置手段实现应用配置自动化,解决了应用程序在云平台中多副本、多版本、多环境、高频次发版情况下配置难以管理的问题。

Description

一种适应传统应用云化的配置系统及方法
技术领域
本发明涉及云平台技术领域,具体涉及一种适应传统应用云化的配置系统及方法。
背景技术
近年来,随着DevOps模式的兴起,以及云平台的推广,越来越多的应用程序迁移上云。带来了负载均衡、自动扩缩容、平滑升级、冗余容灾、服务网格等功能,应用的稳定性、吞吐量、易用性都有了很大的提升。但是一般来说,应用的生命周期中,涉及很多配置,对应用配置管理提出了巨大的挑战。
在运行环境方面,有开发环境、测试环境、准生产环境、生产环境、用户验证环境等;在版本方面,有演示版本、测试版本、验证版本、1.0版本、2.0版本,甚至是某个特性的专有版本;在运行数量方面,一般会有1~3个副本,不同环境根据实际情况可能会有几个到上百个甚至更多的副本数量;在发版方面,得益于CICD系统,发版的频次也越来越快,可以达到每天几次甚至几十次发版;综上,应用程序不同的版本在不同的运行环境中,需要不同的配置文件;每次发版都需要进行配置;每一个副本都需要进行配置;当发生弹性扩缩容的时候需要马上进行配置。这样就导致了应用程序的配置组合繁杂且数量众多,传统的手工变更方式容易出现错误,并且无法做到及时全量的同步,阻碍了应用系统的快速部署。
现有云平台配置中心方案主要有Spring Clouod Config以及Apollo。SpringCloud官方自身提供了Spring Cloud Config分布式配置中心,由它来提供集中化的外部配置支持,它分为客户端和服务端两个部分。其中服务端称作配置中心,是一个独立的微服务应用,用来连接仓库(如Git、Svn)并为客户端提供获取配置的接口;而客户端是各微服务应用,通过指定配置中心地址从远端获取配置内容,启动时加载配置信息到应用上下文中。因Spring Cloud Config实现的配置中心默认采用了Git来存储配置信息,所以版本控制管理也是基于Git仓库本身的特性来支持的。但是Spring ClouodConfig只能用于Java语言Spring架构的应用程序,无法直接兼容其他语言、其他架构的应用程序。
Apollo(阿波罗)是携程框架部门研发的分布式配置中心,集中化管理应用不同环境、不同集群的配置,可于微服务配置管理场景。Apollo支持有限的开发语言和框架Java,.Net。Apollo配置管理方式侵入性强,应用需要进行代码级别改造。
本发明要解决的技术问题是:传统应用在向云平台迁移时配置往往是制约迁移的一个关键点。传统的配置管理方式难以适应云上应用配置多副本、多版本、多环境、高频次发版的需求。现有云平台配置管理往往是针对特定框架、特定语言的,难以适应多语言、多框架各类应用。而且传统应用配置改造为云平台配置管理的成本较大,往往需要进行代码级别改造。
发明内容
为了解决以上技术问题,本发明提出了一种适应传统应用云化的配置方法,包括如下步骤:
步骤1、配置中心进行初始化;
步骤2、应用开发者编写和设置应用程序使用的配置模板;
步骤3、部署配置中心客户端;
步骤4、部署应用程序并启动。
进一步的,所述步骤1具体包括:
步骤1.1采集环境基础信息,包括生产环境/测试环境/研发环境;
步骤1.2采集环境中基础中间件配置信息;环境中部署的基础中间件,包括负载均衡器信息、数据库信息、缓存服务信息、存储服务信息、消息队列服务信息;
步骤1.3创建配置规则,设置标记符、前缀、后缀;根据配置规则生成配置项,配置中心客户端将配置项根据应用程序的配置模板生成配置,配置是应用程序使用的;
步骤1.4启动配置中心;
步骤1.5查看可用配置规则、配置项;
步骤1.6将配置中心的服务信息写入到配置中心客户端运行的环境中。
进一步的,所述步骤2具体包括:
步骤2.1、应用开发者设置默认配置文件;
步骤2.2、按配置规则将默认配置文件变为配置模板。
进一步的,所述步骤3具体包括:
配置中心客户端基于编码实现,或者基于KubernetesConfigmap实现的。
进一步的,所述步骤4具体包括:
步骤4.1云平台自动编排,并自动将配置中心客户端以边车的形式注入绑定;
步骤4.2边车的方式将配置中心客户端和应用程序部署在一台机器上,云平台中边车注入的配置中心客户端和应用程序共享网络命名空间;
步骤4.3配置中心客户端读取所在运行环境的基本信息,发现配置中心,配置中心客户端通过环境信息获取配置中心的地址进而可以连接配置中心,向配置中心进行注册;
步骤4.4配置中心向配置中心客户端下发配置规则、配置项;
步骤4.5配置中心客户端读取应用程序提供的配置模板,并生成配置文件;
步骤4.6配置中心客户端将配置项注入环境变量;配置中心向配置中心客户端下发的配置项;
步骤4.7配置中心客户端启动多种服务模式,提供REST、文件形式的配置服务;应用程序通过配置中心客户端提供的REST接口,配置文件以及步骤4.6中的环境变量获取所需配置信息;
步骤4.8应用程序启动;
步骤4.9配置中心客户端监听配置中心变更,发送变更时,重复执行步骤4.4、4.5;配置中心会定期下发,当配置中心的配置规则或者配置项变化时也会下发。
本发明还提出一种适应传统应用云化的配置系统,包括:
配置中心、配置中心客户端,所述的配置中心客户端用于和配置中心通信并生成配置给应用程序。
配置中心位于云平台服务器上,包括:
环境信息管理模块:用于管理不同环境的基础设施信息;包括环境编号、所属区域、网络分区等信息;
基础中间件信息管理模块,用于管理不同环境中的基础中间件信息;环境中部署的基础中间件,包括负载均衡器信息、数据库信息、缓存服务信息、存储服务信息、消息队列服务信息;
配置规则管理模块,用于管理配置规则,将基础设施信息、基础中间件信息自动转换为配置项;制定配置规则,采用标记符、前缀、配置项名称、后缀的形式标记,将环境的基础信息、环境内部署的中间件信息,按规则,以特定的标记符号,转换为配置项;
配置变更事件管理模块,管理配置变更事件,当环境信息发生变化或者基础中间件信息发生变化,或者管理员更改配置项时,通过查询已注册的客户端列表,将配置信息增量变化部分推送给客户端;
管理客户端注册管理模块,用于管理客户端注册;
配置项的管理界面提供模块,用于提供界面,供管理员对配置项进行增加、修改、删除等功能;对配置项进行重新下发、批量下发、批量导出、批量导入等功能;对环境信息进行重新识别导入等功能。
进一步的,管理客户端注册管理模块,用于管理客户端注册;依次执行以下步骤:
接收客户端启动后,自动向管理中心进行注册;
接收客户端所在应用程序的应用标识、版本、运行环境等基础信息;
配置中心向客户端下发配置规则;
配置中心向客户端下发客户端需要的全量的环境配置信息;
配置中心的配置项发生变更时,向客户端推送增量配置;
配置中心定期向客户端发送全量的配置、全量的配置规则;
进一步的,配置中心客户端包括:
注册模块:用于读取云平台的环境信息,自动识别所处的运行环境,并向配置中心进行注册;读取应用程序的应用标识、版本、运行环境等信息,并向配置中心进行注册;
部署模块:用于将客户端以边车的模式与应用程序部署在一起;
配置文件生成模块,用于接收配置中心的配置规则、配置项,读取应用程序的配置文件模板,按照规则,生成配置文件;
监听模块:用于监听配置中心变化,收到配置中心配置变更事件时自动刷新应用程序的配置文件;
配置文件内容注入模块:用于将配置文件内容注入到应用程序运行的环境变量中;
访问接口提供模块:用于提供REST访问接口,供应用程序调用查询配置文件内容。
有益效果:
本发明提供了一种范语言、范框架的云平台配置系统及方法,既可以兼容传统应用配置,使得传统应用以较小的代价实现云平台配置的迁移;也可以兼容云原生应用的配置管理。本发明所提配置系统及方法通过多种配置手段实现应用配置自动化,解决了应用程序在云平台中多副本、多版本、多环境、高频次发版情况下配置难以管理的问题。
现有云平台的配置中心受限于特定的语言和框架,例如Spring ClouodConfig只能用于Java语言Spring架构的应用程序,无法直接兼容其他语言、其他架构的应用程序。Apollo支持有限的开发语言和框架Java,.Net,其他语言需要有配套的客户端才可使用。本发明所提配置中心方案可以支持支持范语言、范框架的应用配置管理。
使用现有云平台配置中心时,传统应用程序往往需要进行源码级的改动,改造成本高;并且程序改造后依赖特定配置中心,降低了应用程序部署形式的灵活性。这样的改造对于传统应用往往是不可接受的。传统应用使用本发明所提配置中心方案上云时可以不需要进行代码级别的改造,降低了改造成本。传统应用于本发明所提配置中心适配完成后,可以不依赖于本发明所提配置中心进行其他形式的部署。
附图说明
图1:本发明的自动化配置管理框架结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅为本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域的普通技术人员在不付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。
如附图1,本发明的配置系统包括配置中心、配置中心客户端(配置中心客户端与应用程序部署在一起),所述的配置中心客户端用于和配置中心(配置中心可以根据需要支持的应用规模部署在服务器或者PC机等设备上)通信并生成配置给应用程序(应用程序可位于服务器也可位于客户端),参见附图1配置中心客户端C1-C4。
配置中心位于云平台服务器上,其功能包括:
管理不同环境的基础设施信息;包括环境编号、所属区域、网络分区等信息。
管理不同环境中的基础中间件信息;环境中部署的基础中间件,如负载均衡器信息、数据库信息、缓存服务信息、存储服务信息、消息队列服务信息等。
管理配置规则,将基础设施信息、基础中间件信息自动转换为配置项;
制定配置规则,采用标记符、前缀、配置项名称、后缀的形式标记,将环境的基础信息、环境内部署的中间件信息,按规则,以特定的标记符号,转换为配置项。例如可以约定采用@$SERVER_IP$的形式进行标记,其中标记符为@,前缀为$,后缀为$。
将环境的基础信息、环境内部署的中间件信息,按上述规则,以特定的标记符号,转换为配置项。
假设环境内的REDIS服务IP为1.2.3.4,端口为5678,转换成2条配置项,
形如:@$ENV_REDIS_IP$=1.2.3.4
@$ENV_REIDS_PORT$=5678
管理配置变更事件,当发生配置变更时推送给客户端;
当环境信息发生变化或者基础中间件信息发生变化,或者管理员更改配置项时,通过查询已注册的客户端列表,将配置信息增量变化部分推送给客户端。
管理客户端注册,依次执行以下步骤:
接收客户端启动后,自动向管理中心进行注册;
接收客户端所在应用程序的应用标识、版本、运行环境等基础信息;
配置中心向客户端下发配置规则;
配置中心向客户端下发客户端需要的全量的环境配置信息;
配置中心的配置项发生变更时,向客户端推送增量配置;
配置中心定期向客户端发送全量的配置、全量的配置规则;
提供配置项的管理界面
提供界面,供管理员对配置项进行增加、修改、删除等功能;对配置项进行重新下发、批量下发、批量导出、批量导入等功能;对环境信息进行重新识别导入等功能。
根据本发明的一个实施例,继续参见图1,其中,配置中心客户端的功能包括:
读取云平台的环境信息,自动识别所处的运行环境,并向配置中心进行注册;
读取应用程序的应用标识、版本、运行环境等信息,并向配置中心进行注册;
客户端可以以边车的模式与应用程序部署在一起。
客户端接收配置中心的配置规则、配置项,读取应用程序的配置文件模板,按照规则,生成配置文件。可选的,配置文件模板首行用于描述存放路径,如/a/b/c/x.json,代表将生成的配置文件存放到/a/b/c/x.json。
监听配置中心变化,收到配置中心配置变更事件时自动刷新应用程序的配置文件。
客户端可以将配置文件内容注入到应用程序运行的环境变量中。
客户端可以提供REST访问接口,供应用程序调用查询配置文件内容。
客户端可以提供文件访问接口,以JSON、XML、INI的方式保存查询配置文件内容。
根据本发明的一个实施例,该方法的云平台配置中心的配置运行步骤是:
步骤1、配置中心初始化:
步骤1.1采集环境基础信息,包括生产环境/测试环境/研发环境;
步骤1.2采集环境中基础中间件配置信息;环境中部署的基础中间件,如负载均衡器信息、数据库信息、缓存服务信息、存储服务信息、消息队列服务信息等;
步骤1.3创建配置规则,设置标记符、前缀、后缀;根据配置规则生成配置项,配置中心客户端将配置项根据应用程序的配置模板生成配置。配置是应用程序使用的;
步骤1.4启动配置中心;
步骤1.5查看可用配置规则、配置项;
步骤1.6将配置中心的服务信息(如配置中心的IP,端口或者域名等可以使得配置中心客户端连接配置中心)写入到配置中心客户端运行的环境中。一般云平台在编排应用时,能够将一些基础信息开放给应用程序,也会将应用的基础信息开放给云平台。配置中心客户端就是利用这些开放的信息,识别所在的运行环境,识别应用程序版本等信息,以及发现配置中心;应用程序是运行在云平台上。
步骤2、编写配置模板:
步骤2.1应用开发者默认配置文件;
步骤2.2按配置规则将默认配置文件变为配置模板;
步骤3、部署配置中心客户端:
配置中心客户端实现技术可以有多种,可以是编码实现的程序或应用。可以是基于KubernetesConfigmap实现的。
步骤4、部署应用程序:
步骤4.1云平台自动编排,并自动将客户端以边车的形式注入绑定;
步骤4.2边车的方式将配置中心客户端和应用程序部署在一台机器上,云平台中边车注入的配置中心客户端和应用程序往往共享网络命名空间;
步骤4.3客户端读取所在运行环境的基本信息,发现配置中心,向配置中心进行注册;配置中心客户端可以通过环境信息获取配置中心的地址进而可以连接配置中心;
步骤4.4配置中心向配置中心客户端下发配置规则、配置项;
步骤4.5配置中心客户端读取应用程序提供的配置模板,并生成配置文件;
步骤4.6客户端将配置项注入环境变量;配置中心向配置中心客户端下发配置项;
步骤4.7客户端启动多种服务模式,提供REST、文件等形式的配置服务;应用程序可以通过配置中心客户端提供的REST接口,配置文件以及步骤6中的环境变量获取所需配置信息;
步骤4.8应用程序启动;参见图1中的应用程序P1-P4;
步骤4.9配置中心客户端监听配置中心变更,发送变更时,重复执行4、5;配置中心会定期下发,当配置中心的配置规则或者配置项变化时也会下发;
本发明所提配置中心方案支持范语言、范框架的软件配置管理;
传统应用使用本发明所提配置中心方案上云时可以不需要进行代码级别的改造,降低了改造成本。传统应用于本发明所提配置中心适配完成后,可以不依赖于本发明所提配置中心进行其他形式的部署。
本发明所提配置中心方案支持多种配置方式,支持全类型配置文件方式,支持环境变量方式,支持启动参数方式,支持数据库方式。
配置中心客户端能够自动识别运行环境及应用程序信息,配置中心据此推送相关配置给客户端;
配置中心无需维护多版本、多环境下的配置组合矩阵,只需维护单一配置项;
配置中心按客户端需求将配置规则、配置数据推送给客户端,客户端按照配置模板为应用程序生成配置。
综上,可以看出,本发明提出的技术方案具体有如下优势:
1)本发明实现了一套配置规则,使得应用程序在配置时,可以不关心具体的配置内容,只需按规则进行配置的声明;
2)本发明对应用程序编程语言没有要求,可以不对应用程序进行代码级改造;
3)本发明能够自动识别云平台所处环境,进而自动配置,做到一次描述,随时可用;
4)本发明能够做到配置的自动更新,传统模型下,更改了某一配置项,需要将所有使用此项的配置文件重写,客户端可以自动更新配置文件,避免漏更、错更;
5)本发明能够覆盖多副本、多版本、多环境、高频次发版的需求场景;
6)本发明与现有技术相比,易用性、准确性、及时性等方面优于同类技术方案;
7)本发明采用客户端按需与配置中心交互的方式,应用程序可以从本地获得数据,避免了应用程序直接访问配置中心带来的访问压力。发生变更时配置中心可以精确推送增量配置给客户端;
8)在大规模分布式部署情况下,传统的配置中心压力较大,可能会成为瓶颈,本发明所提方案可以支撑大规模部署情况下的应用配置服务。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,且应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

Claims (5)

1.一种适应传统应用云化的配置方法,其特征在于,包括如下步骤:
步骤1、配置中心进行初始化;所述步骤1具体包括:
步骤1.1采集环境基础信息,包括生产环境/测试环境/研发环境;
步骤1.2采集环境中基础中间件配置信息;环境中部署的基础中间件,包括负载均衡器信息、数据库信息、缓存服务信息、存储服务信息、消息队列服务信息;
步骤1.3创建配置规则,设置标记符、前缀、后缀;根据配置规则生成配置项,配置中心客户端将配置项根据应用程序的配置模板生成配置,配置是应用程序使用的;
步骤1.4启动配置中心;
步骤1.5查看可用配置规则、配置项;
步骤1.6将配置中心的服务信息写入到配置中心客户端运行的环境中;
步骤2、应用开发者编写和设置应用程序使用的配置模板;
步骤3、部署配置中心客户端;
步骤4、部署应用程序并启动;所述步骤4具体包括:
步骤4.1云平台自动编排,并自动将配置中心客户端以边车的形式注入绑定;
步骤4.2边车的方式将配置中心客户端和应用程序部署在一台机器上,云平台中边车注入的配置中心客户端和应用程序共享网络命名空间;
步骤4.3配置中心客户端读取所在运行环境的基本信息,发现配置中心,配置中心客户端通过环境信息获取配置中心的地址进而可以连接配置中心,向配置中心进行注册;
步骤4.4配置中心向配置中心客户端下发配置规则、配置项;
步骤4.5配置中心客户端读取应用程序提供的配置模板,并生成配置文件;
步骤4.6配置中心客户端将配置项注入环境变量;配置中心向配置中心客户端下发的配置项;
步骤4.7配置中心客户端启动多种服务模式,提供REST、文件形式的配置服务;应用程序通过配置中心客户端提供的REST接口,配置文件以及步骤4.6中的环境变量获取所需配置信息;
步骤4.8应用程序启动;
步骤4.9配置中心客户端监听配置中心变更,发送变更时,重复执行步骤4.4、4.5;配置中心会定期下发,当配置中心的配置规则或者配置项变化时也会下发。
2.根据权利要求1所述的一种适应传统应用云化的配置方法,其特征在于,所述步骤2具体包括:
步骤2.1、应用开发者设置默认配置文件;
步骤2.2、按配置规则将默认配置文件变为配置模板。
3.根据权利要求1所述的一种适应传统应用云化的配置方法,其特征在于,所述步骤3具体包括:
配置中心客户端基于编码实现,或者基于KubernetesConfigmap实现。
4.一种适应传统应用云化的配置系统,其特征在于,包括:
配置中心、配置中心客户端,所述的配置中心客户端用于和配置中心通信并生成配置给应用程序;
所述配置中心位于云平台服务器上,包括:
环境信息管理模块:用于管理不同环境的基础设施信息;包括环境编号、所属区域、网络分区信息;
基础中间件信息管理模块,用于管理不同环境中的基础中间件信息;环境中部署的基础中间件,包括负载均衡器信息、数据库信息、缓存服务信息、存储服务信息、消息队列服务信息;
配置规则管理模块,用于管理配置规则,将基础设施信息、基础中间件信息自动转换为配置项;制定配置规则,采用标记符、前缀、配置项名称、后缀的形式标记,将环境的基础信息、环境内部署的中间件信息,按规则以特定的标记符号转换为配置项;
配置变更事件管理模块,管理配置变更事件,当环境信息发生变化或者基础中间件信息发生变化,或者管理员更改配置项时,通过查询已注册的客户端列表,将配置信息增量变化部分推送给客户端;
管理客户端注册管理模块,用于管理客户端注册;
配置项的管理界面提供模块,用于提供界面,供管理员对配置项进行增加、修改、删除功能;对配置项进行重新下发、批量下发、批量导出、批量导入功能;对环境信息进行重新识别导入功能;
配置中心客户端包括:
注册模块:用于读取云平台的环境信息,自动识别所处的运行环境,并向配置中心进行注册;读取应用程序的应用标识、版本、运行环境信息,并向配置中心进行注册;
部署模块:用于将客户端以边车的模式与应用程序部署在一起;
配置文件生成模块,用于接收配置中心的配置规则、配置项,读取应用程序的配置文件模板,按照规则生成配置文件;
监听模块:用于监听配置中心变化,收到配置中心配置变更事件时自动刷新应用程序的配置文件;
配置文件内容注入模块:用于将配置文件内容注入到应用程序运行的环境变量中;
访问接口提供模块:用于提供REST访问接口,供应用程序调用查询配置文件内容。
5.根据权利要求4所述的一种适应传统应用云化的配置系统,其特征在于,管理客户端注册管理模块,用于管理客户端注册;依次执行以下步骤:
接收客户端启动后,自动向管理中心进行注册;
接收客户端所在应用程序的应用标识、版本、运行环境基础信息;
配置中心向客户端下发配置规则;
配置中心向客户端下发客户端需要的全量的环境配置信息;
配置中心的配置项发生变更时,向客户端推送增量配置;
配置中心定期向客户端发送全量的配置、全量的配置规则。
CN201911398912.8A 2019-12-30 2019-12-30 一种适应传统应用云化的配置系统及方法 Active CN111198726B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911398912.8A CN111198726B (zh) 2019-12-30 2019-12-30 一种适应传统应用云化的配置系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911398912.8A CN111198726B (zh) 2019-12-30 2019-12-30 一种适应传统应用云化的配置系统及方法

Publications (2)

Publication Number Publication Date
CN111198726A CN111198726A (zh) 2020-05-26
CN111198726B true CN111198726B (zh) 2023-07-14

Family

ID=70745420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911398912.8A Active CN111198726B (zh) 2019-12-30 2019-12-30 一种适应传统应用云化的配置系统及方法

Country Status (1)

Country Link
CN (1) CN111198726B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113821271A (zh) * 2021-09-15 2021-12-21 上海得帆信息技术有限公司 一种业务应用集成平台的连接器扩展方法和系统
US11989541B2 (en) * 2021-10-04 2024-05-21 Target Brands, Inc. Deployment migration tool with decoding capabilities
CN114371882A (zh) * 2021-12-27 2022-04-19 天翼物联科技有限公司 一种应用的统一配置管理方法、系统、装置及存储介质
CN114924806B (zh) * 2022-04-07 2024-03-26 南京慧尔视软件科技有限公司 一种配置信息的动态同步方法、装置、设备及介质
CN116245607B (zh) * 2023-02-07 2024-01-26 北京易捷思达科技发展有限公司 适用于云产品的配置方法、装置及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103582867A (zh) * 2011-03-16 2014-02-12 谷歌公司 用于指定基于云的部署的配置的高级语言
CN103685567A (zh) * 2013-12-31 2014-03-26 曙光云计算技术有限公司 云环境下配置虚拟应用服务器的方法
CN104246697A (zh) * 2012-06-08 2014-12-24 惠普发展公司,有限责任合伙企业 针对应用的版本管理
CN104793946A (zh) * 2015-04-27 2015-07-22 广州杰赛科技股份有限公司 基于云计算平台的应用部署方法和系统
CN105100200A (zh) * 2015-06-02 2015-11-25 北京京东尚科信息技术有限公司 分布式部署统一配置和自动适配方法和系统
CN105487892A (zh) * 2015-11-26 2016-04-13 武大吉奥信息技术有限公司 一种Linux环境下的云中GIS服务部署系统
CN105516233A (zh) * 2014-09-30 2016-04-20 索尼电脑娱乐美国公司 用于在一个或多个云系统上便携部署应用的方法和系统
CN108111332A (zh) * 2017-11-10 2018-06-01 上海华讯网络系统有限公司 应用sdn的混合云管理系统及方法
CN108429806A (zh) * 2018-03-09 2018-08-21 深圳市富途网络科技有限公司 一种基于云服务的设置项同步系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9923765B2 (en) * 2016-05-20 2018-03-20 CloudCoreo, Inc. Deploying and monitoring multiplatform cloud-based infrastructures

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103582867A (zh) * 2011-03-16 2014-02-12 谷歌公司 用于指定基于云的部署的配置的高级语言
CN104246697A (zh) * 2012-06-08 2014-12-24 惠普发展公司,有限责任合伙企业 针对应用的版本管理
CN103685567A (zh) * 2013-12-31 2014-03-26 曙光云计算技术有限公司 云环境下配置虚拟应用服务器的方法
CN105516233A (zh) * 2014-09-30 2016-04-20 索尼电脑娱乐美国公司 用于在一个或多个云系统上便携部署应用的方法和系统
CN104793946A (zh) * 2015-04-27 2015-07-22 广州杰赛科技股份有限公司 基于云计算平台的应用部署方法和系统
CN105100200A (zh) * 2015-06-02 2015-11-25 北京京东尚科信息技术有限公司 分布式部署统一配置和自动适配方法和系统
CN105487892A (zh) * 2015-11-26 2016-04-13 武大吉奥信息技术有限公司 一种Linux环境下的云中GIS服务部署系统
CN108111332A (zh) * 2017-11-10 2018-06-01 上海华讯网络系统有限公司 应用sdn的混合云管理系统及方法
CN108429806A (zh) * 2018-03-09 2018-08-21 深圳市富途网络科技有限公司 一种基于云服务的设置项同步系统及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
An universal automatic configuration software model based on the cloud computing;Fuze Sun,Qing Wu,Juan Huang,Yue Yu,et.al;《2013 5th IEEE International Conference on Broadband Network&Multimedia Technology》;第306-311页 *
云应用配置部署模型;姬源,黄育松,谢东,王向东;《计算机系统应用》;第25卷(第5期);第13-18页 *
基于模板的云应用部署引擎设计;姚思佳等;《计算机应用与软件》(第09期);第10-13页+73页 *

Also Published As

Publication number Publication date
CN111198726A (zh) 2020-05-26

Similar Documents

Publication Publication Date Title
CN111198726B (zh) 一种适应传统应用云化的配置系统及方法
CN107943950B (zh) 一种区块链中数据智能合约生成的方法及系统
US9996333B2 (en) Apparatus and method for automating the installation and configuration of infrastructure
CN109885316B (zh) 基于kubernetes的hdfs-hbase部署方法及装置
US6199068B1 (en) Mapping interface for a distributed server to translate between dissimilar file formats
CA2303064C (en) Automated meter reading system
US11561784B2 (en) Versioning of pipeline templates for continuous delivery of services on datacenters configured in cloud platforms
CN100520718C (zh) 脚本命令注册方法、调用源程序代码的方法和装置
CN103605570A (zh) 一种基于虚拟机模板自动部署应用的方法及系统
CN102314358B (zh) 一种在云平台上以soa的方式部署常规应用的方法
US20120317050A1 (en) Method, computer program product and computer-readable storage medium for the generic creation of a structure tree for describing an it process
CN102754411A (zh) 使用客户端-服务器网桥管理对象
CN110163002B (zh) 一种SaaS软件租户数据隔离的方法
CN107783816A (zh) 虚拟机的创建方法及装置、大数据集群创建的方法及装置
CN107025108B (zh) 从源代码管理(scm)系统将分级数据导出到产品生命周期管理(plm)系统
US20220236975A1 (en) Optimized compilation of pipelines for continuous delivery of services on datacenters configured in cloud platforms
CN111857801B (zh) 一种移动应用的构建方法
CN110389766A (zh) HBase容器集群部署方法、系统、设备及计算机可读存储介质
CN112217656A (zh) Sd-wan系统中的网络设备的配置信息同步方法和装置
CN109614088B (zh) 表单组件生成方法及装置
JPWO2017033441A1 (ja) システム構築支援システム、方法および記憶媒体
CN113434175B (zh) 数据处理方法、装置、存储介质及设备
CN114895943B (zh) 一种应用配置增量分发与自动升级的实现方法与装置
CN113839992B (zh) 设备控制方法及装置
CN113849399A (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
GR01 Patent grant
GR01 Patent grant