CN116991468A - 配置文件生成方法、装置、设备及存储介质 - Google Patents
配置文件生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116991468A CN116991468A CN202310968075.8A CN202310968075A CN116991468A CN 116991468 A CN116991468 A CN 116991468A CN 202310968075 A CN202310968075 A CN 202310968075A CN 116991468 A CN116991468 A CN 116991468A
- Authority
- CN
- China
- Prior art keywords
- placeholder
- configuration
- parameter
- type
- determining
- 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
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000013507 mapping Methods 0.000 claims description 97
- 238000013523 data management Methods 0.000 claims description 12
- 238000007726 management method Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 12
- 238000012423 maintenance Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 239000000243 solution Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种配置文件生成方法、装置、设备及存储介质,可用于分布式领域或其他领域。该方法包括:接收客户端发送的配置请求,所述配置请求包括服务器集群对应的配置模板,所述配置模板中包括多个待配置参数的配置信息,所述配置信息中包括至少一个占位符、以及每个占位符的占位符类型;根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据;将所述配置模板中的所述至少一个占位符替换为对应的目标数据,以生成所述服务器集群对应的配置文件;向所述客户端发送所述配置文件。通过上述方法,提高了配置文件的生成效率。
Description
技术领域
本申请涉及分布式领域或其他领域,尤其涉及一种配置文件生成方法、装置、设备及存储介质。
背景技术
分布式微服务应用可以部署在分布式集群中的多个计算设备上。
目前,分布式微服务应用投产过程中,运维人员需要为分布式集群中的计算设备编辑大量的配置文件。例如,分布式集群可以包括多个部署组,针对每一个部署组,运维人员需要为部署组编辑相应的配置文件。然而,分布式集群中所包括的部署组的数量较多,导致运维人员编辑配置文件所需的时间较长、且人工编辑配置文件的过程中容易出现操作失误,使得配置文件的生成效率较低。
发明内容
本申请提供一种配置文件生成方法、装置、设备及存储介质,所述方法可以提高配置文件的生成效率。
第一方面,本申请提供一种配置文件生成方法,包括:
接收客户端发送的配置请求,所述配置请求包括服务器集群对应的配置模板,所述配置模板中包括多个待配置参数的配置信息,所述配置信息中包括至少一个占位符、以及每个占位符的占位符类型;
根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据;
将所述配置模板中的所述至少一个占位符替换为对应的目标数据,以生成所述服务器集群对应的配置文件;
向所述客户端发送所述配置文件。
一种可能的实现方式中,所述根据每个占位符的占位符类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据,包括:
获取所述多个待配置参数的多个参数标识;
确定所述配置模板中包括的多个占位符类型;
确定所述多个参数标识与所述多个占位符类型之间的第一映射关系,所述第一映射关系中包括所述多个占位符类型、以及每个占位符类型对应的参数标识;
根据所述第一映射关系,获取所述占位符对应的目标数据。
一种可能的实现方式中,针对任意一个占位符;所述根据所述第一映射关系,获取所述占位符对应的目标数据,包括:
确定所述占位符对应的第一占位符类型;
根据所述第一占位符类型和所述第一映射关系,确定第一参数标识;
获取所述服务器集群的集群标识;
在配置数据管理库中确定待选数据,所述待选数据为所述配置管理数据库中、所述集群标识对应的数据;
从所述待选数据中获取所述第一参数标识对应的数据;
将所述第一参数标识对应的数据确定为所述占位符对应的目标数据。
一种可能的实现方式中,针对任意一个占位符;所述根据所述第一映射关系,获取所述占位符对应的目标数据,包括:
向客户端发送所述第一映射关系;
接收所述客户端发送的所述第一映射关系对应的第二映射关系,所述第二映射关系中包括所述多个参数标识、每个参数标识对应的占位符类型、以及每个占位符类型对应的数据;
确定所述占位符对应的第一占位符类型;
根据所述第一占位符类型、以及所述第一映射关系或所述第二映射关系,确定第一参数标识;
在所述第二映射关系中获取所述第一参数标识对应的数据;
将所述第一参数标识对应的数据确定为所述占位符对应的目标数据。
一种可能的实现方式中,所述将所述配置模板中的所述多个占位符替换为对应的目标数据,包括:
针对所述配置模板中任意一个占位符,确定所述占位符在所述配置模板中的占位符位置;
根据所述占位符位置,将所述配置模板中的所述占位符替换为对应的目标数据。
一种可能的实现方式中,所述确定所述占位符的占位符位置,包括:
按照从左至右、以及行数递增的顺序遍历所述配置模板,在所述配置模板中识别占位符;
确定所述占位符在所述配置模板中的出现次序;
将所述出现次序确定为所述占位符位置。
一种可能的实现方式中,接收所述客户端发送的所述第一映射关系对应的第二映射关系之后,所述方法还包括:
确定所述第二映射关系中是否存在空缺,并在所述第二映射关系中存在空缺时,向所述客户端发送报错信息。
第二方面,本申请提供一种配置文件生成装置,该配置文件生成装置包括:接收模块、获取模块、替换模块和发送模块,其中,
所述接收模块用于,接收客户端发送的配置请求,所述配置请求包括服务器集群对应的配置模板,所述配置模板中包括多个待配置参数的配置信息,所述配置信息中包括至少一个占位符、以及每个占位符的占位符类型;
所述获取模块用于,根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据;
所述替换模块用于,将所述配置模板中的所述至少一个占位符替换为对应的目标数据,以生成所述服务器集群对应的配置文件;
所述发送模块用于,向所述客户端发送所述配置文件。
一种可能的实现方式中,所述获取模块具体用于:
获取所述多个待配置参数的多个参数标识;
确定所述配置模板中包括的多个占位符类型;
确定所述多个参数标识与所述多个占位符类型之间的第一映射关系,所述第一映射关系中包括所述多个占位符类型、以及每个占位符类型对应的参数标识;
根据所述第一映射关系,获取所述占位符对应的目标数据。
一种可能的实现方式中,针对任意一个占位符;所述获取模块具体用于:
确定所述占位符对应的第一占位符类型;
根据所述第一占位符类型和所述第一映射关系,确定第一参数标识;
获取所述服务器集群的集群标识;
在配置数据管理库中确定待选数据,所述待选数据为所述配置管理数据库中、所述集群标识对应的数据;
从所述待选数据中获取所述第一参数标识对应的数据;
将所述第一参数标识对应的数据确定为所述占位符对应的目标数据。
一种可能的实现方式中,针对任意一个占位符;所述获取模块具体用于:
向客户端发送所述第一映射关系;
接收所述客户端发送的所述第一映射关系对应的第二映射关系,所述第二映射关系中包括所述多个参数标识、每个参数标识对应的占位符类型、以及每个占位符类型对应的数据;
确定所述占位符对应的第一占位符类型;
根据所述第一占位符类型、以及所述第一映射关系或所述第二映射关系,确定第一参数标识;
在所述第二映射关系中获取所述第一参数标识对应的数据;
将所述第一参数标识对应的数据确定为所述占位符对应的目标数据。
一种可能的实现方式中,所述替换模块具体用于:
针对所述配置模板中任意一个占位符,确定所述占位符在所述配置模板中的占位符位置;
根据所述占位符位置,将所述配置模板中的所述占位符替换为对应的目标数据。
一种可能的实现方式中,所述替换模块具体用于:
按照从左至右、以及行数递增的顺序遍历所述配置模板,在所述配置模板中识别占位符;
确定所述占位符在所述配置模板中的出现次序;
将所述出现次序确定为所述占位符位置。
一种可能的实现方式中,所述发送模块还用于,
确定所述第二映射关系中是否存在空缺,并在所述第二映射关系中存在空缺时,向所述客户端发送报错信息。
第三方面,本申请提供一种配置文件生成设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现第一方面任一项所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面任一项所述的方法。
第五方面,本申请提供一种计算机程序产品,包括计算机程序,所述计算机程序被计算机执行时实现如第一方面中任一项所述的方法。
本申请提供的配置文件生成方法、装置、设备及存储介质,可以接收客户端发送的配置请求,配置请求包括服务器集群对应的配置模板,配置模板中包括多个待配置参数的配置信息,配置信息中包括至少一个占位符、以及每个占位符的占位符类型;根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据;将配置模板中的至少一个占位符替换为对应的目标数据,以生成服务器集群对应的配置文件;并可以向客户端发送配置文件。上述方法中,可以自动为服务器集群生成配置文件,使得配置文件的生成效率较高。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种分布式集群的架构示意图;
图2为本申请实施例提供的一种配置文件生成方法的流程示意图;
图3为本申请实施例提供的一种配置模板的示意图;
图4为本申请实施例提供的另一种配置文件生成方法的流程示意图;
图5为本申请实施例提供的一种配置文件生成装置的结构示意图;
图6为本申请实施例提供的一种配置文件生成设备的硬件结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请涉及的配置文件生成方法、装置、设备及存储介质可用于分布式领域,也可用于除分布式领域之外的任意领域,本申请对应用领域不做限定。本申请实施例涉及的配置文件生成方法可以旨在提高配置文件的生成效率。当然,本申请实施例描述的应用场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着新业务场景的出现,本申请实施例提供的技术方案对于类似的问题,同样适用。
本申请实施例涉及配置数据管理库(Configuration Management Database,CMBD),为便于理解,首先对配置数据管理库进行说明。
配置数据管理库,指用于记录和管理互联网技术(Internet Technology,IT)资源运行时的状态数据的数据库。
为便于理解,下面以部署分布式微服务应用的分布式集群为例,结合图1对本申请实施例涉及的应用场景进行说明。
图1为本申请实施例提供的一种分布式集群的架构示意图。请参见图1,分布式集群包括至少一个部署组(例如图1中的部署组1、部署组2和部署组3),每个部署组中包括至少一台服务器。应该理解的是,分布式集群中的部署组、部署组中服务器的数量均可以为一个或多个,本申请实施例对此不做限定。
在上述分布式集群中部署分布式微应用服务时,需要分别为每个部署组设置配置文件,以使对应的部署组可以正常运行。
相关技术中,分布式微服务应用投产时,运维人员可以手动为分布式微服务应用涉及的每一个部署组编辑配置文件。然而,由于分布式微服务应用涉及的部署组的数量较多,导致运行人员编辑配置文件所需的时间较长、且人工编辑配置文件的过程容易出现操作失误,使得配置文件的生成效率较低。
有鉴于此,本申请实施例提供了一种配置文件生成方法,可以自动为每个部署组生成配置文件,提高了配置文件的生成效率。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图2为本申请实施例提供的一种配置文件生成方法的流程示意图。该方法的执行主体可以为配置文件生成系统,也可以为设置在配置文件生成系统中的配置文件生成装置。配置文件生成装置可以通过软件实现,也可以通过软件和硬件的结合实现。请参见图2,该方法可以包括:
S201、接收客户端发送的配置请求,配置请求包括服务器集群对应的配置模板,配置模板中包括多个待配置参数的配置信息,配置信息中包括至少一个占位符、以及每个占位符的占位符类型。
服务器集群可以为多台服务器组成的服务器组,或者服务器集群也可以为单个服务器。例如,服务器集群可以为图1中的部署组。
配置请求可以用于,请求为服务器集群设置配置文件。
占位符可以用于在配置模板中占用固定的位置。针对任意一个占位符,在配置文件生成过程中,可以采用对应的字符替换占位符。
应用理解的是,针对不同的服务器集群,用于替换同一个占位符的字符不同。也就是说,针对不同的服务器集群,配置模板中同一个占位符对应的字符不同。
占位符类型可以用于指示,占位符对应的字符的类型。例如,类型1的占位符对应的字符的类型为类型1,类型2的占位符对应的字符的类型为类型2。
一种可能的实现方式中,在占位符之前、或者占位符之后可以添加注释说明,以说明占位符的类型。
示例性的,配置模板中可以包括:“${xxx}##缓冲刷新时间”,其中,“{xxx}”可以用于表示占位符,“缓冲刷新时间”可以用于表示占位符类型。
另一种可能的实现方式中,可以通过占位符的形式表示占位符类型。
示例性的,配置模板中可以包括:“${xxx}”、以及“${&&}”,其中,“{xxx}”和“{&&}”可以用于表示占位符,“xxx”和“&&”可以用于表示占位符类型。
需要说明的是,本实施例中,可以预先建立配置参数库。配置参数库中包括各个配置参数的多个信息。下面,以任意一个参数为例,配置参数库中包括的参数信息可以如表1所示:
表1
如表1所示,配置参数的参数属性可以包括设计态和运行态。其中,设计态的参数属性可以为标准化、普遍使用、描述性的参数信息;运行态的参数属性可以为后续注入的实际数据。
如表1所示,参数配置名称可以为配置参数的名称。参数功能可以用于描述参数的功能。参数客户化方法可以用于指示,生成配置文件时、采用哪种方式获取配置参数的运行态参数属性对应的内容。参数填写类型可以用于指示配置参数为公共必填类、公共选填类或者自定义类。参数值格式可以用于指示配置参数的参数内容为单一参数或者参数集。
本实施例中,一种可能的实现方式中,可以由运维人员从配置参数库中选择多个待配置参数,对多个待配置参数进行排列组合和编辑,以生成配置模板。进一步的,运维人员还可以通过客户端向配置文件生成系统发送配置模板。
可选的,在生成配置模板的过程中,对待配置参数的参数信息中、设计态的参数属性可以自动注入。例如,针对配置模板中任意一个待配置参数,可以自动注入该参数的参数配置名称、功能描述、参数客户化方式、参数填写类型、以及参数值格式等。
另一种可能的实现方式中,运维人员还可以通过客户端向配置文件生成系统发送预先设置的配置模板。应该理解的是,预先设置的配置模型无需根据配置参数库中的配置参数生成。
可选的,若配置模板为预先设置的,配置文件生成系统接收配置模板后,可以扫描配置模板中包括的多个待配置参数,并可以在配置参数库中查找配置模板中包括的多个待配置参数。若配置参数库中未查找到配置模板中的某个待配置参数,配置文件生成系统还可以将该待配置参数的配置信息添加至配置参数库中。
S202、根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据。
本实施例中,一个待配置参数的配置信息中可以包括一个或多个占位符,该一个或多个占位符的占位符类型不同。
示例性的,假设一个待配置参数的配置信息中包括3个占位符,该待配置参数的配置信息可以作如下表示:
auth:
bufferTime:${xxx}##缓冲刷新时间,默认500
selfCode:${xxx}##识别码
status:${xxx}##状态,默认active
其中,第一个占位符的占位符类型可以为“缓冲刷新时间”,第二个占位符的占位符类型可以为“识别码”,第三个占位符的占位符类型可以为“状态”。
假设一个待配置参数的配置信息中包括1个占位符,该待配置参数的配置信息可以作如下表示:
bufferTime:${xxx}##缓冲刷新时间,默认500
其中,占位符的占位符类型可以为“缓冲刷新时间”。
本实施例中,针对任意一个占位符,可以根据占位符的占位符类型、以及占位符所属待配置参数的参数标识,确定占位符对应的目标数据。
示例性的,假设配置模板中多个待配置参数的配置信息如表2所示:
表2
如表2所示,配置模板中可以包括3个待配置参数,3个待配置参数可以为分别为待配置参数1、待配置参数2和待配置参数3。待配置参数1的参数标识为标识1,待配置参数2的参数标识为标识2,待配置参数3的参数标识为标识3。待配置参数1可以包括1个占位符,1个占位符为占位符1,占位符1的占位符类型为类型1。待配置参数2可以包括2个占位符,2个占位符分别为占位符2和占位符3,占位符2的占位符类型为类型2,占位符3的占位符类型为类型1。待配置参数3可以包括2个占位符,2个占位符分别为占位符4和占位符5,占位符4的占位符类型为类型2,占位符5的占位符类型为类型3。
以表2中的占位符3为例,由表2可知,占位符3的占位符类型为类型1,占位符3所属的待配置参数为待配置参数2,待配置参数2的参数标识为标识2。由此,可以根据占位符类型为类型1、以及参数标识为标识2确定占位符3对应的目标数据。
具体实施过程中,可以根据占位符的占位符类型、以及占位符所属待配置参数的参数标识,从服务器集群的配置数据管理库中获取占位符对应的目标数据;或者,也可以通过其他方式获取占位符对应的目标数据,对此本实施例不做限定。
S203、将配置模板中的至少一个占位符替换为对应的目标数据,以生成服务器集群对应的配置文件。
本实施例中,针对配置模板中任意一个占位符,可以确定占位符在配置模板中的占位符位置;根据占位符位置,将配置模板中的占位符替换为对应的目标数据。
具体而言,可以先确定占位符在配置模板中的占位符位置,再采用对应的目标数据替换占位符位置上的占位符。
确定占位符位置时,可以按照从左至右、以及行数递增的顺序遍历配置模板,在配置模板中识别占位符;确定占位符在配置模板中的出现次序;将出现次序确定为占位符位置。
如图3所示,图3为本申请实施例提供的一种配置模板的示意图。请参见图3,配置模板中包括5个占位符。具体实施过程中,按照从左至右、以及行数递增的顺序遍历整个配置模板,可以确定5个占位符依次可以为占位符1、占位符2、占位符3、占位符4和占位符5。可以确定占位符1的占位符位置为1、占位符2的占位符位置为2、占位符3的占位符位置为3、占位符4的占位符位置为4、以及占位符5的占位符位置为5。
S204、向客户端发送配置文件。
本实施例中,生成配置文件后,还可以向客户端发送配置文件,以通知客户端配置文件生成完成。
可选的,客户端接收配置文件后,运维人员可以对配置文件进行命名、并设置配置文件的文件格式。本实施例对配置文件的命名规则、以及配置文件的文件格式不做限定。例如,配置文件的名称可以为“服务器集群的集群标识-部署组-功能-配置名称-版本号”,文件格式可以为yaml格式、xml格式或者info格式等。
可选的,本实施例中,运维人员可以同时选择客户端接收的多个配置文件、在客户端的显示屏幕上集中预览展示多个配置文件、并高亮显示多个配置文件的差异部分,以便于运维人员对自动生成的配置文件进行检查。
可选的,运维人员可以通过输入等其他操作对客户端接收的配置文件进行编辑更新,并可以保存更新后的配置文件。
可选的,运维人员可以通过输入操作,向客户端输入配置文件名称等,以查找并预览相应的配置文件。
可选的,运维人员还可以将客户端接收的配置文件存储至个人配置文件库中。
本实施例提供的配置文件生成方法,可以接收客户端发送的配置请求,配置请求包括服务器集群对应的配置模板,配置模板中包括多个待配置参数的配置信息,配置信息中包括至少一个占位符、以及每个占位符的占位符类型;根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据;将配置模板中的至少一个占位符替换为对应的目标数据,以生成服务器集群对应的配置文件;并可以向客户端发送配置文件。上述方法中,可以自动为服务器集群生成配置文件,使得配置文件的生成效率较高。
在图2实施例的基础上,下面,结合图4,对上述方案进行进一步详细说明。
图4为本申请实施例提供的另一种配置文件生成方法的流程示意图。该方法的执行主体可以为配置文件生成系统,也可以为设置在配置文件生成系统中的作业处理装置。配置文件生成装置可以通过软件实现,也可以通过软件和硬件的结合实现。请参见图4,该方法可以包括:
S401、接收客户端发送的配置请求,配置请求包括服务器集群对应的配置模板,配置模板中包括多个待配置参数的配置信息,配置信息中包括至少一个占位符、以及每个占位符的占位符类型。
需要说明的是,S401的具体实现方式,可以参见S201,此处不再赘述。
S402、获取多个待配置参数的多个参数标识。
参数标识可以用于唯一代表一个参数。
示例性的,如表2所示,待配置参数1的参数标识可以为标识1,待配置参数2的参数标识可以为标识2。
本实施例中,可以遍历整个配置模板,以获取配置模板中的多个参数标识。
S403、确定配置模板中包括的多个占位符类型。
应该理解的是,配置模板中的多个占位符的占位符类型可以相同,或者,配置模板中的多个占位符的占位符类型也可以不同。
示例性的,如表2所示,占位符1的占位符类型可以为类型1,占位符3的占位符类型也可以为类型1。
本实施例中,可以遍历整个配置模板,并识别每个占位符的占位符类型。
S404、确定多个参数标识与多个占位符类型之间的第一映射关系。
第一映射关系中包括多个占位符类型、以及每个占位符类型对应的参数标识。
本实施例中,获取配置模板中所有待配置参数的参数标识、以及所有占位符的占位符类型后,可以建立待配置参数的参数标识与占位符的占位符类型之间的第一映射关系。
示例性的,假设配置模板中包括2个待配置参数,2个待配置参数分别为待配置参数1和待配置参数2。待配置参数1的参数标识为标识1,待配置参数2的参数标识为标识2。待配置参数1的配置信息中包括2个占位符,2个占位符的占位符类型分别为类型1和类型2;待配置参数2的配置信息中包括1个占位符,1个占位符的占位符类型为类型1。则第一映射关系可以如表3所示:
表3
S405、根据第一映射关系,获取占位符对应的目标数据。
本实施例中,针对任意一个占位符,根据第一映射关系,获取占位符对应的目标数据,至少存在如下两种方式:
方式1、从配置数据管理库中获取目标数据。
该方式下,针对任意一个占位符,可以确定占位符对应的第一占位符类型;根据第一占位符类型和第一映射关系,确定第一参数标识;获取服务器集群的集群标识;在配置数据管理库中确定待选数据,待选数据为配置管理数据库中、集群标识对应的数据;从待选数据中获取第一参数标识对应的数据;将第一参数标识对应的数据确定为占位符对应的目标数据。
应该理解的是,针对任意一个占位符,该占位符在不同服务器集群的配置文件中对应的目标数据不同。
本实施例中,配置请求中还可以包括服务器集群的集群标志。实际实施过程中,可以从配置请求中获取服务器集群的集群标识,并可以根据集群标识在配置数据管理库中确定待选数据。可以根据占位符的第一占位符类型和第一映射关系,确定占位符所属的配置参数的第一参数标识,并可以将待选数据中、第一参数标识对应的数据确定为目标数据。
该方式下,可以直接从配置数据管理库中获取目标数据,数据获取效率较高。
方式2、从客户端获取目标数据。
该方式下,针对任意一个占位符,可以向客户端发送第一映射关系;接收客户端发送的第一映射关系对应的第二映射关系,第二映射关系中包括多个参数标识、每个参数标识对应的占位符类型、以及每个占位符类型对应的数据;确定占位符对应的第一占位符类型;根据第一占位符类型、以及第一映射关系或第二映射关系,确定第一参数标识;在第二映射关系中获取第一参数标识对应的数据;将第一参数标识对应的数据确定为占位符对应的目标数据。
第二映射关系可以为,第一映射关系对应的、包括第一映射关系中的每个占位符对应的数据的映射关系。
示例性的,假设第一映射关系如表3所示,则第二映射关系可以如表4所示:
表4
本实施例中,可以根据第一参数标识、第一占位符类型、以及第二映射关系,确定占位符对应的目标数据。
可选的,第二映射关系可以由运维人员进行编辑生成,并通过客户端向配置文件生成系统发送。
本实施例中,接收所述客户端发送的所述第一映射关系对应的第二映射关系之后,配置文件生成系统还可以确定第二映射关系中是否存在空缺,并在第二映射关系中存在空缺时,向客户端发送报错信息。
空缺可以为第二映射关系中、某个占位符对应的数据的位置上存在的空缺。
具体而言,若第二映射关系中、某个占位符对应的数据的位置上存在的空缺,则第二映射关系不完整。配置文件生成系统可以向客户端发送报错信息,以便于运维人员可以及时更新第二映射关系。通过上述方法,可以避免第二映射关系中存在漏填的数据。
可选的,第二映射关系中、某个占位符对应的数据的位置上存在非数据格式的字符时,也可以向客户端发送报错信息,以提醒运维人员对第二映射关系进行更新。通过上述方法,可以保证第二映射关系的正确性。
S406、将配置模板中的至少一个占位符替换为对应的目标数据,以生成服务器集群对应的配置文件。
S407、向客户端发送配置文件。
需要说明的是,S406-S407的具体实现方式,可以参见S203-S204,此处不再赘述。
本实施例提供的配置文件生成方法,可以接收客户端发送的配置请求,配置请求包括服务器集群对应的配置模板,配置模板中包括多个待配置参数的配置信息,配置信息中包括至少一个占位符、以及每个占位符的占位符类型;可以获取多个待配置参数的多个参数标识,确定配置模板中包括的多个占位符类型,确定多个参数标识与多个占位符类型之间的第一映射关系,根据第一映射关系,获取占位符对应的目标数据,可以将配置模板中的至少一个占位符替换为对应的目标数据,以生成服务器集群对应的配置文件,并可以向客户端发送配置文件。通过上述方法,可以自动为服务器集群生成配置文件,使得配置文件的生成效率较高。
图5为本申请实施例提供的一种配置文件生成装置的结构示意图。请参见图5,该配置文件生成装置10包括:接收模块11、获取模块12、替换模块13和发送模块14,其中,
所述接收模块11用于,接收客户端发送的配置请求,所述配置请求包括服务器集群对应的配置模板,所述配置模板中包括多个待配置参数的配置信息,所述配置信息中包括至少一个占位符、以及每个占位符的占位符类型;
所述获取模块12用于,根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据;
所述替换模块13用于,将所述配置模板中的所述至少一个占位符替换为对应的目标数据,以生成所述服务器集群对应的配置文件;
所述发送模块14用于,向所述客户端发送所述配置文件。
本实施例提供的配置文件生成装置,可用于执行上述方法实施例中的配置文件生成方法,其实现原理和技术效果类似,此处不作赘述。
在一种可能的实现方式中,所述获取模块12具体用于:
获取所述多个待配置参数的多个参数标识;
确定所述配置模板中包括的多个占位符类型;
确定所述多个参数标识与所述多个占位符类型之间的第一映射关系,所述第一映射关系中包括所述多个占位符类型、以及每个占位符类型对应的参数标识;
根据所述第一映射关系,获取所述占位符对应的目标数据。
在一种可能的实现方式中,针对任意一个占位符;所述获取模块12具体用于:
确定所述占位符对应的第一占位符类型;
根据所述第一占位符类型和所述第一映射关系,确定第一参数标识;
获取所述服务器集群的集群标识;
在配置数据管理库中确定待选数据,所述待选数据为所述配置管理数据库中、所述集群标识对应的数据;
从所述待选数据中获取所述第一参数标识对应的数据;
将所述第一参数标识对应的数据确定为所述占位符对应的目标数据。
在一种可能的实现方式中,针对任意一个占位符;所述获取模块12具体用于:
向客户端发送所述第一映射关系;
接收所述客户端发送的所述第一映射关系对应的第二映射关系,所述第二映射关系中包括所述多个参数标识、每个参数标识对应的占位符类型、以及每个占位符类型对应的数据;
确定所述占位符对应的第一占位符类型;
根据所述第一占位符类型、以及所述第一映射关系或所述第二映射关系,确定第一参数标识;
在所述第二映射关系中获取所述第一参数标识对应的数据;
将所述第一参数标识对应的数据确定为所述占位符对应的目标数据。
在一种可能的实现方式中,所述替换模块13具体用于:
针对所述配置模板中任意一个占位符,确定所述占位符在所述配置模板中的占位符位置;
根据所述占位符位置,将所述配置模板中的所述占位符替换为对应的目标数据。
在一种可能的实现方式中,所述替换模块13具体用于:
按照从左至右、以及行数递增的顺序遍历所述配置模板,在所述配置模板中识别占位符;
确定所述占位符在所述配置模板中的出现次序;
将所述出现次序确定为所述占位符位置。
在一种可能的实现方式中,所述发送模块14还用于,
确定所述第二映射关系中是否存在空缺,并在所述第二映射关系中存在空缺时,向所述客户端发送报错信息。
本实施例提供的配置文件生成装置,可用于执行上述方法实施例中的配置文件生成方法,其实现原理和技术效果类似,此处不作赘述。
图6为本申请实施例提供的一种配置文件生成设备的硬件结构示意图。请参见图6,该配置文件生成设备20可以包括:处理器21和存储器22,其中,处理器21和存储器22可以通信;示例性的,处理器21和存储器22通过通信总线23通信,所述存储器22用于存储计算机执行指令,所述处理器21用于调用存储器中的计算机执行指令执行上述任意方法实施例所示的配置文件生成方法。
可选的,配置文件生成设备20还可以包括通信接口,通信接口可以包括发送器和/或接收器。
可选的,上述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机执行指令;所述计算机执行指令用于实现如上述任意实施例所述的配置文件生成方法。
本申请实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序,当所述计算机程序被执行时,使得计算机执行上述配置文件生成方法。
实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppydisk)、光盘(英文:optical disc)及其任意组合。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程终端设备的处理单元以产生一个机器,使得通过计算机或其他可编程终端设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程终端设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
在本申请中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本领域技术人员在考虑说明书及实践里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
Claims (10)
1.一种配置文件生成方法,其特征在于,包括:
接收客户端发送的配置请求,所述配置请求包括服务器集群对应的配置模板,所述配置模板中包括多个待配置参数的配置信息,所述配置信息中包括至少一个占位符、以及每个占位符的占位符类型;
根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据;
将所述配置模板中的所述至少一个占位符替换为对应的目标数据,以生成所述服务器集群对应的配置文件;
向所述客户端发送所述配置文件。
2.根据权利要求1所述的方法,其特征在于,所述根据每个占位符的占位符类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据,包括:
获取所述多个待配置参数的多个参数标识;
确定所述配置模板中包括的多个占位符类型;
确定所述多个参数标识与所述多个占位符类型之间的第一映射关系,所述第一映射关系中包括所述多个占位符类型、以及每个占位符类型对应的参数标识;
根据所述第一映射关系,获取所述占位符对应的目标数据。
3.根据权利要求2所述的方法,其特征在于,针对任意一个占位符;所述根据所述第一映射关系,获取所述占位符对应的目标数据,包括:
确定所述占位符对应的第一占位符类型;
根据所述第一占位符类型和所述第一映射关系,确定第一参数标识;
获取所述服务器集群的集群标识;
在配置数据管理库中确定待选数据,所述待选数据为所述配置管理数据库中、所述集群标识对应的数据;
从所述待选数据中获取所述第一参数标识对应的数据;
将所述第一参数标识对应的数据确定为所述占位符对应的目标数据。
4.根据权利要求2所述的方法,其特征在于,针对任意一个占位符;所述根据所述第一映射关系,获取所述占位符对应的目标数据,包括:
向客户端发送所述第一映射关系;
接收所述客户端发送的所述第一映射关系对应的第二映射关系,所述第二映射关系中包括所述多个参数标识、每个参数标识对应的占位符类型、以及每个占位符类型对应的数据;
确定所述占位符对应的第一占位符类型;
根据所述第一占位符类型、以及所述第一映射关系或所述第二映射关系,确定第一参数标识;
在所述第二映射关系中获取所述第一参数标识对应的数据;
将所述第一参数标识对应的数据确定为所述占位符对应的目标数据。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述将所述配置模板中的所述多个占位符替换为对应的目标数据,包括:
针对所述配置模板中任意一个占位符,确定所述占位符在所述配置模板中的占位符位置;
根据所述占位符位置,将所述配置模板中的所述占位符替换为对应的目标数据。
6.根据权利要求5所述的方法,其特征在于,所述确定所述占位符的占位符位置,包括:
按照从左至右、以及行数递增的顺序遍历所述配置模板,在所述配置模板中识别占位符;
确定所述占位符在所述配置模板中的出现次序;
将所述出现次序确定为所述占位符位置。
7.根据权利要求4-6所述的方法,其特征在于,接收所述客户端发送的所述第一映射关系对应的第二映射关系之后,所述方法还包括:
确定所述第二映射关系中是否存在空缺,并在所述第二映射关系中存在空缺时,向所述客户端发送报错信息。
8.一种配置文件生成装置,其特征在于,所述装置包括接收模块、获取模块、替换模块和发送模块,其中,
所述接收模块用于,接收客户端发送的配置请求,所述配置请求包括服务器集群对应的配置模板,所述配置模板中包括多个待配置参数的配置信息,所述配置信息中包括至少一个占位符、以及每个占位符的占位符类型;
所述获取模块用于,根据每个占位符的类型、以及每个占位符所属的待配置参数的参数标识,获取每个占位符对应的目标数据;
所述替换模块用于,将所述配置模板中的所述至少一个占位符替换为对应的目标数据,以生成所述服务器集群对应的配置文件;
所述发送模块用于,向所述客户端发送所述配置文件。
9.一种配置文件生成设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310968075.8A CN116991468A (zh) | 2023-08-02 | 2023-08-02 | 配置文件生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310968075.8A CN116991468A (zh) | 2023-08-02 | 2023-08-02 | 配置文件生成方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116991468A true CN116991468A (zh) | 2023-11-03 |
Family
ID=88527882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310968075.8A Pending CN116991468A (zh) | 2023-08-02 | 2023-08-02 | 配置文件生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116991468A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117992115A (zh) * | 2024-04-02 | 2024-05-07 | 建信金融科技有限责任公司 | 系统配置处理方法、装置、设备、介质及程序产品 |
-
2023
- 2023-08-02 CN CN202310968075.8A patent/CN116991468A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117992115A (zh) * | 2024-04-02 | 2024-05-07 | 建信金融科技有限责任公司 | 系统配置处理方法、装置、设备、介质及程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108984388A (zh) | 一种生成自动化测试用例的方法及终端设备 | |
CN107294750B (zh) | 一种云集群能自识别的分布配置管理方法和装置 | |
CN102298365A (zh) | 自动识别管理航天测控地面站设备变化的方法 | |
CN116991468A (zh) | 配置文件生成方法、装置、设备及存储介质 | |
CN107908488B (zh) | 消息请求接口交互方法、装置、计算机设备及存储介质 | |
CN105245582B (zh) | 数据中心的监控方法和监控装置 | |
CN111813788A (zh) | 信息的查询方法和装置、信息的同步方法和装置 | |
CN112422709A (zh) | 标识管理方法、终端设备、标识解析二级节点及介质 | |
CN110738038A (zh) | 合同文本的生成方法、装置、设备及计算机可读存储介质 | |
CN105868170A (zh) | 一种服务器端工业数据报表生成方法 | |
CN112561388A (zh) | 一种基于物联网的信息处理方法、装置及设备 | |
CN113934710B (zh) | 数据采集方法及装置 | |
JP2016143363A (ja) | リポジトリ管理システム及び管理方法 | |
CN105991316B (zh) | 一种传输网资源数据的实时管理方法和装置 | |
CN113568763A (zh) | 一种产线设备通信系统的生成方法和装置及设备 | |
CN112860292A (zh) | 一种基于应用的配置管理方法及装置 | |
CN112948195A (zh) | 接口测试的方法、装置、电子设备和存储介质 | |
CN112416980A (zh) | 数据业务处理方法、装置及设备 | |
CN116560722B (zh) | 运维流程处理方法、装置、电子设备及存储介质 | |
WO2023050815A1 (zh) | 切片业务配置方法、网络设备、网络系统及存储介质 | |
CN112582014B (zh) | 一种固态硬盘批量生产方法、装置、设备及介质 | |
WO2017000675A1 (zh) | 一种ctp生成方法、装置、网管服务器、系统和计算机可读存储介质 | |
US9338297B2 (en) | Setup application for generating custom code | |
CN116610345B (zh) | 一种基于执行记录表的应用程序升级方法和装置 | |
WO2024020898A1 (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 |