CN114915547A - 组件、私有云组件的配置方法、相关装置以及存储介质 - Google Patents
组件、私有云组件的配置方法、相关装置以及存储介质 Download PDFInfo
- Publication number
- CN114915547A CN114915547A CN202110175599.2A CN202110175599A CN114915547A CN 114915547 A CN114915547 A CN 114915547A CN 202110175599 A CN202110175599 A CN 202110175599A CN 114915547 A CN114915547 A CN 114915547A
- Authority
- CN
- China
- Prior art keywords
- service
- configuration
- component
- target
- target component
- 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
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种组件、私有云组件的配置方法、相关装置以及存储介质,组件的配置方法包括:接收目标组件的配置声明定义,生成所述目标组件在网络层面的服务的配置信息。由于目标组件的配置声明定义中的服务级别用于说明目标组件的提供服务所需部署的位置范围,因此,在生成目标组件在网络层面的服务的配置信息时,目标组件的提供服务的服务级别指定了目标组件在网络层面的服务的配置信息的作用范围,如此,目标组件则可以在目标组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署,实现私有云网络下多地域多可用区之间的服务调度。
Description
技术领域
本申请涉及云平台技术领域,尤其涉及一种组件、私有云组件的配置方法、相关装置以及存储介质。
背景技术
现有技术中,通常使用Nacos开源架构作为针对微服务的配置管理平台,具有发现、配置和管理微服务的功能。具体的,Nacos开源架构能够为组件生成配置文件,组件通过启动运行配置文件,可具有调用其他组件的服务、为其它组件提供服务等功能。
然而,Nacos开源架构本身不支持多地域多可用区场景下的就近访问策略,因此,要求利用其生成配置文件的所有组件都必须被部署在同一个地域同一个可用区里,这对于需多地域多可用区部署组件的私有云并不适用。
发明内容
基于上述现有技术的不足,本申请提出了一种组件、私有云组件的配置方法、相关装置以及存储介质,以实现多地域多可用区部署组件。
本发明第一方面公开了一种组件的配置方法,应用于配置中心,所述组件的配置方法包括:
接收目标组件的配置声明定义;其中,所述目标组件的配置声明定义用于说明所述目标组件的配置需求;所述目标组件的配置声明定义包括:所述目标组件的基础信息和提供服务的服务信息;所述提供服务的服务信息包括:所述提供服务的服务名和服务级别;所述服务级别用于说明所述提供服务所需部署的位置范围;
生成所述目标组件在网络层面的服务的配置信息;其中,所述配置信息包括:所述目标组件在网络层面的服务的访问地址,所述目标组件在网络层面的服务的服务名为所述提供服务的服务名;所述配置信息的作用范围由所述提供服务的服务级别所指定。
可选地,在上述组件的配置方法中,所述目标组件的配置声明定义还包括:所述目标组件的依赖服务的标识;其中:所述接收目标组件的配置声明定义之后,还包括:
利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,所述依赖服务的配置信息的查找方式满足所述依赖服务的服务发现策略的要求;
生成所述目标组件的配置文件;其中,所述目标组件的配置文件包括:所述依赖服务的配置信息。
可选地,在上述组件的配置方法中,所述提供服务的服务信息还包括:所述提供服务的服务类型;其中:生成所述目标组件在网络层面的服务的配置信息,包括:
生成所述目标组件在目标网络层面的服务的配置信息;所述目标网络层面利用所述目标组件的提供服务的服务类型确定。
可选地,在上述组件的配置方法中,所述依赖服务的服务发现策略包括:就近访问策略、指定网络层面的策略和列表访问策略;其中,所述依赖服务的服务发现策略为所述指定网络层面的策略,所述目标组件的配置声明定义还包括:访问所述依赖服务所在网络层面的指定信息;所述依赖服务的服务发现策略为所述列表访问策略,所述目标组件的配置声明定义还包括:访问所述依赖服务的指定区域。
可选地,在上述组件的配置方法中,所述依赖服务的服务发现策略为就近访问策略,所述利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,包括:
在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且与所述目标组件所部署位置相同的服务的配置信息;
所述依赖服务的服务发现策略为指定网络层面的策略,所述利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,包括:
在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且所述访问所述依赖服务所在网络层面的指定信息所指明的网络层面的服务的配置信息;
所述依赖服务的服务发现策略为列表访问策略,所述利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,包括:
在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且属于所述访问所述依赖服务的指定区域内的服务的配置信息。
可选地,在上述组件的配置方法中,所述生成所述目标组件在目标网络层面的服务的配置信息;所述目标网络层面利用所述目标组件的提供服务的服务类型确定,包括:
若所述目标组件的提供服务的服务类型为容器化的服务,则生成所述目标组件在容器网络层面的overlay服务的配置信息、在基础网络层面的underlay服务的配置信息、以及在专有网络VPC网络层面的overlay服务的配置信息;
若所述目标组件的提供服务的服务类型为非容器化的服务,则生成所述目标组件在基础网络层面的underlay服务的配置信息、和在专有网络VPC网络层面的overlay服务的配置信息。
本申请第二方面公开了一种私有云组件的配置方法,应用于配置中心,所述私有云组件的配置方法包括:
接收目标私有云的配置包的计算请求;其中,所述计算请求用于请求得到所述目标私有云的组件的配置文件所组成的配置包;
利用上述第一方面中任意一项所述的组件的配置方法,对所述目标私有云的组件进行配置;
在得到所述目标私有云的组件的配置文件时,将所述目标私有云的所有组件的配置文件进行打包,得到所述目标私有云的配置包;
将所述目标私有云的配置包存储到对象存储,并生成所述私有云的配置包的下载链接。
本申请第三方面公开了一种组件的配置装置,应用于配置中心,所述组件的配置装置包括:
接收单元,用于接收目标组件的配置声明定义;其中,所述目标组件的配置声明定义用于说明所述目标组件的配置需求;所述目标组件的配置声明定义包括:所述目标组件的基础信息和提供服务的服务信息;所述提供服务的服务信息包括:所述提供服务的服务名和服务级别;所述服务级别用于说明所述提供服务所需部署的位置范围;
第一生成单元,用于生成所述目标组件在网络层面的服务的配置信息;其中,所述配置信息包括:所述目标组件在网络层面的服务的访问地址,所述目标组件在网络层面的服务的服务名为所述提供服务的服务名;所述配置信息的作用范围由所述提供服务的服务级别所指定。
可选地,在上述组件的配置装置中,所述目标组件的配置声明定义还包括:所述目标组件的依赖服务的标识;其中:所述组件的配置装置,还包括:
查找单元,用于利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,所述依赖服务的配置信息的查找方式满足所述依赖服务的服务发现策略的要求;
第二生成单元,用于生成所述目标组件的配置文件;其中,所述目标组件的配置文件包括:所述依赖服务的配置信息。
可选地,在上述组件的配置装置中,所述提供服务的服务信息还包括:所述提供服务的服务类型;其中:第一生成单元,包括:
第一生成子单元,用于生成所述目标组件在目标网络层面的服务的配置信息;所述目标网络层面利用所述目标组件的提供服务的服务类型确定。
可选地,在上述组件的配置装置中,所述依赖服务的服务发现策略包括:就近访问策略、指定网络层面的策略和列表访问策略;其中,所述依赖服务的服务发现策略为所述指定网络层面的策略,所述目标组件的配置声明定义还包括:访问所述依赖服务所在网络层面的指定信息;所述依赖服务的服务发现策略为所述列表访问策略,所述目标组件的配置声明定义还包括:访问所述依赖服务的指定区域。
可选地,在上述组件的配置装置中,所述依赖服务的服务发现策略为就近访问策略,所述查找单元,包括:
第一查找子单元,用于在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且与所述目标组件所部署位置相同的服务的配置信息;
可选地,在上述组件的配置装置中,所述依赖服务的服务发现策略为指定网络层面的策略,所述查找单元,包括:
第二查找子单元,用于在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且所述访问所述依赖服务所在网络层面的指定信息所指明的网络层面的服务的配置信息;
可选地,在上述组件的配置装置中,所述依赖服务的服务发现策略为列表访问策略,所述查找单元,包括:
第三查找子单元,用于在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且属于所述访问所述依赖服务的指定区域内的服务的配置信息。
可选地,在上述组件的配置装置中,所述第一生成子单元,包括:
第二生成子单元,用于若所述目标组件的提供服务的服务类型为容器化的服务,则生成所述目标组件在容器网络层面的overlay服务的配置信息、在基础网络层面的underlay服务的配置信息、以及在专有网络VPC网络层面的overlay服务的配置信息;
第三生成子单元,用于若所述目标组件的提供服务的服务类型为非容器化的服务,则生成所述目标组件在基础网络层面的underlay服务的配置信息、和在专有网络VPC网络层面的overlay服务的配置信息。
本申请第四方面公开了一种配置中心,包括:
交互模块,用于接收目标私有云的配置包的计算请求;其中,所述计算请求用于请求得到所述目标私有云的组件的配置文件所组成的配置包;
配置包计算模块,用于利用上述第一方面中任意一项所述的组件的配置方法,对所述目标私有云的组件进行配置;在得到所述目标私有云的组件的配置文件时,将所述目标私有云的所有组件得到配置文件进行打包,得到所述目标私有云的配置包,将所述目标私有云的配置包存储到对象存储,并生成所述私有云的配置包的下载链接。
本申请第五方面公开了一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现如上述第一方面任意一项所述的组件的配置方法,或者如上述第二方面所述的私有云组件的配置方法。
从上述技术方案可以看出,本申请提出的组件的配置方法中,在接收到目标组件的配置声明定义,由于目标组件的配置声明定义中的服务级别用于说明目标组件的提供服务所需部署的位置范围,因此,在生成目标组件在网络层面的服务的配置信息时,目标组件的提供服务的服务级别指定了目标组件在网络层面的服务的配置信息的作用范围,如此,目标组件则可以在目标组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提出的一种私有云组件的配置方法的流程示意图;
图2为本申请实施例提出的另一种私有云组件的配置方法的流程示意图;
图3为本申请实施例提出的一种配置中心的配置计算接口的输入参数的代码图;
图4为本申请实施例提出的一种配置中心的配置计算接口的返回参数的代码图;
图5为本申请实施例提出的一种组件的配置方法的流程示意图;
图6为本申请实施例提出一种配置声明定义中的提供服务的服务信息的代码图;
图7为本申请实施例提出的一种配置声明定义中的依赖服务部分的代码图;
图8为本申请实施例提出的一种配置声明定义中的资源需求部分的代码图;
图9为本申请实施例提出的一种配置声明定义中的依赖基础信息部分的代码图;
图10为本申请实施例提出的一种配置声明定义中的私有变量部分的代码图;
图11为本申请实施例提出的一种容器网络层面的overlay服务的代码图;
图12为本申请实施例提出的一种基础网络层面的underlay服务的代码图;
图13为本申请实施例提出的一种VPC网络层面的overlay服务的代码图;
图14为本申请实施例提出的一种组件的配置方法的流程示意图;
图15为本申请实施例提出的一种组件的配置装置的结构示意图;
图16为本申请实施例提出的一种配置中心的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,本申请实施例提出的一种私有云组件的配置方法,应用于配置中心,具体包括以下步骤:
S101、接收目标私有云的配置包的计算请求。
私有云是将云基础设施与软硬件资源创建在防火墙内,以供机构或企业内各部门共享数据中心内的资源。创建私有云,除了硬件资源外,一般还有云设备软件。
私有云计算包含云硬件、云平台、云服务三个层次。云硬件是用户自己的个人电脑或服务器,而非云计算厂商的数据中心。云计算厂商构建数据中心的目的是为千百万用户提供公共云服务,因此需要拥有几十上百万台服务器。私有云计算,对个人来说只服务于亲朋好友,对企业来说只服务于本企业员工以及本企业的客户和供应商,因此个人或企业自己的个人电脑或服务器已经足够用来提供云服务。
目标私有云的配置包的计算请求用于请求得到目标私有云的组件的配置文件所组成的配置包。目标私有云为需要配置中心对目标私有云的组件进行配置的私有云。对组件进行配置,指的是对目标私有云的组件的环境相关的可变信息进行配置。环境相关的可变信息有目标组件的基础信息、提供服务的服务信息、目标组件的依赖服务的标识等等。
可选地,在本申请一具体实施例中,目标私有云的配置包的计算请求可以通过配置中心页面触发生成。具体的,用户可以在配置中心的配置中心页面选择触发某一个目标私有云的配置包的计算请求,进而使得配置中心接收到目标私有云的配置包的计算请求。其中,目标私有云的配直包的计算请求可以携带有目标私有云的标识信息,例如目标私有云的标识号、目标私有云的名称等。
可选地,在本申请一具体实施例中,目标私有云的配置包的计算请求可以通过目标私有云触发生成,目标私有云接入配置中心后,向配置中心发送目标私有云的配置包的计算请求,请求得到目标私有云的组件的配置文件所组成的配置包,其中,计算请求中可以携带目标私有云的组件的配置声明定义以及目标私有云的标识信息。
S102、利用组件的配置方法,对目标私有云的组件进行配置。
采用组件的配置方法,对目标私有云的组件进行配置,完成对目标私有云的组件的服务注册,以及生成目标私有云的组件的配置文件。目标私有云的组件的配置文件可以使目标私有云的组件具有调用依赖服务的功能。
具体的,采用组件的配置方法,对目标私有云的组件进行配置的过程为:接收目标组件的配置声明定义,生成目标组件在网络层面的服务的配置信息,利用依赖服务的标识,在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息,依赖服务的配置信息的查找方式满足依赖服务的服务发现策略的要求,生成目标组件的配置文件。
目标组件在图1示出的实施例中特指目标私有云的组件。
其中,目标组件的配置文件包括:依赖服务的配置信息。目标组件的配置声明定义用于说明目标组件的配置需求。目标组件的配置声明定义包括:目标组件的基础信息和提供服务的服务信息。提供服务的服务信息包括:提供服务的服务名和服务级别,服务级别用于说明提供服务所需部署的位置范围。配置信息包括:目标组件在网络层面的服务的访问地址,目标组件在网络层面的服务的服务名为提供服务的服务名,配置信息的作用范围由提供服务的服务级别所指定。
目标组件的配置声明定义可以通过配置中心的接口传入。例如可以是目标私有云接入配置中心,通过配置中心的接口传入目标组件的配置声明定义。其中。目标私有云所传入的目标组件的配置声明定义,可以是目标私有云中所有目标组件的配置声明定义,也可以是部分目标组件的配置声明定义。举例说明,在目标私有云初始配置场景下,目标私有云会将所有目标组件的配置声明定义均传入配置中心,在部分目标组件需要修改原本的配置声明定义时,则会将部分目标组件修改后的配置声明定义传入配置中心。
目标组件的配置声明定义可以拆成目标组件的各个配置项存储到配置中心本地,在执行步骤S102的时,再将目标组件的各个配置项拼接成目标组件的配置声明定义,通过配置声明定义计算生成目标组件在网络层面的服务的配置信息,并通过配置声明定义中的依赖服务的标识在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息,依赖服务的配置信息的查找方式满足依赖服务的服务发现策略的要求,生成目标组件的配置文件。
通过配置声明定义计算生成目标组件在网络层面的服务的配置信息之后,目标组件的提供服务完成了服务注册。即通过调用目标组件在网络层面的服务的配置信息,可以访问到目标组件的提供服务,当其他目标组件依赖于该服务时,即可将目标组件在网络层面的服务的配置信息写入其他目标组件的配置文件中,使得其他目标组件可通过目标组件在网络层面的服务的配置信息调用到该目标组件在网络层面的服务。配置声明定义中包括有提供服务的服务信息。提供服务的服务信息包括:提供服务的服务名和服务级别。由于目标组件的配置声明定义中的服务级别用于说明目标组件的提供服务所需部署的位置范围,因此,在生成目标组件在网络层面的服务的配置信息时,目标组件的提供服务的服务级别指定了目标组件在网络层面的服务的配置信息的作用范围,如此,目标组件则可以在目标组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署。
通过配置声明定义中的依赖服务的标识在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息。依赖服务的配置信息包括:在网络层面的依赖服务的访问地址。依赖服务的配置信息的查找方式满足依赖服务的服务发现策略的要求。由于生成的目标组件的配置文件包括:依赖服务的配置信息,因此目标组件能够利用目标组件的配置文件实现调用访问依赖服务的功能。
可选地,在本申请一具体实施例中,配置中心调用配置计算接口协议,利用配置声明定义生成目标组件的配置文件中的内容,如果配置计算接口计算成功,则会返回目标组件的配置文件中的内容,如果计算失败,则会记录缺失的内容,以及需要重新计算的目标组件的配置文件。可选地,当目标组件属于目标私有云中其他的多个目标组件的强依赖组件,即其他许多目标组件都需要依赖于该目标组件时,若该目标组件的配置文件的内容返回失败,则需要再度利用组件的配置方法,对该目标组件进行配置。
S103、在得到目标私有云的组件的配置文件时,将目标私有云的所有组件的配置文件进行打包,得到目标私有云的配置包。
得到目标私有云的组件的配置文件时,将得到的目标私有云的所有组件的配置文件打包,具体可以是进行压缩打包处理,得到目标私有云的配置包。通过目标私有云通过目标私有云的配置包,即可对自身进行配置。
可选地,在本申请一具体实施例中,得到组件的配置文件之后,会计算之前所输出的组件的配置文件的内容与当前输出的内容之间的差异,以便目标私有云能根据计算出的差异判断出组件的配置是否发生变更,进而决定是否要重启组件。可选地,计算出的组件的配置文件的差异以及生成目标私有云的配置包的过程中的状态信息可以进行记录,并将记录内容展示到交付中心上,以便目标私有云通过交付中心可查看生成目标私有云的配置包的过程中的详情。生成目标私有云的配置包的过程中所记录的状态信息可以包括有哪些私有云的组件的配置文件生成成功,哪些私有云的组件的配置文件生成失败,配置包生成过程中的任务进度(例如当前生成到了哪个组件的配置文件,还剩哪些组件的配置文件未生成),当前生成的组件的配置文件相较于上一次生成的该组件的配置文件之间的差异,生成目标私有云的配置包的下载链接等等。
S104、将目标私有云的配置包存储到对象存储,并生成私有云的配置包的下载链接。
将目标私有云的配置包存储到对象存储中,并生成配置包的下载链接,目标私有云通过下载链接,下载目标私有云的配置包,将目标私有云的配置包部署到目标私有云中,由于组件的配置声明定义中的服务级别用于说明目标组件的提供服务所需部署的位置范围,因此,在生成组件在网络层面的服务的配置信息时,组件的提供服务的服务级别指定了组件在网络层面的服务的配置信息的作用范围,如此,组件的配置文件支持组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署。
举例说明,参阅图2,执行图1示出的私有云组件的配置方法的过程可以是,通过配置中心页面建立目标私有云的配置包的计算请求,发起目标私有云的配置包的计算任务,配置中心后台在接收到计算请求之后,具体可以是生成每一个目标私有云的组件的配置文件的任务,然后将生成的每一个目标私有云的组件的配置文件的任务排列入队,创建出配置包的任务消息队列(Message Queue,MQ)。同时配置中心后台还创建配置包的出包记录,通过配置中心页面不断轮询配置中心后台的任务进度,记录下当前的配置包生成进程,并将记录下的内容展示在交付中心。配置中心后台按照任务消息队列分别计算每一个目标私有云的组件的配置文件,对每一个目标私有云的组件进行配置。具体的,配置中心可以将如图3所示的目标私有云的组件的配置声明定义输入至配置计算接口中,传入接口的数据中还携带有目标私有云的云唯一编码(Identity Document,ID),组件的地域ID、可用区ID以及集群ID。配置计算接口进行配置计算之后,返回如图4所示的组件的配置文件的内容。组件的配置文件的内容可以包括有组件资源配置、组件调度配置、组件实际配置文件里所需的信息、组件私有变量、组件所需的基础环境信息、组件提供出来的服务列表(即提供服务的服务信息)、组件依赖的服务信息(即组件依赖的服务信息,包括组件的依赖服务的配置信息),以及动态依赖(即组件通过各种服务发现策略最终实际获取到的服务的元数据)。配置中心后台计算过程中,会不断更新配置包的出包记录状态至交付中心。配置中心后台在得到目标私有云的组件的配置文件时,将目标私有云的所有组件的配置文件进行打包,得到目标私有云的配置包,将配置包上传至对象存储,并生成配置包的下载链接。
可选地,在本申请一具体实施例中,配置中心生成配置包的下载链接之后,目标私有云会将配置包下载到目标私有云本地,然后启动目标私有云的组件,使用配置模板渲染配置包中各个组件的配置文件,得到各个组件的最终配置文件。
使用配置模板渲染配置包中各个组件的配置文件后可以将各个组件的配置文件改为配置模板的格式,得到组件真正运行时使用的最终配置文件。
本申请实施例提出的私有云组件的配置方法,应用于配置中心,该方法通过接收目标私有云的配置包的计算请求,其中计算请求用于请求得到目标私有云的组件的配置文件所组成的配置包。然后通过组件的配置方法,在接收到私有云的组件的配置声明定义之后,生成组件在网络层面的服务的配置信息,并利用依赖服务的标识,在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息,生成包括有依赖服务的配置信息的组件的配置文件,在得到目标私有云的组件的配置文件时,将目标私有云的所有组件的配置文件进行打包,得到目标私有云的配置包,将目标私有云的配置包存储到对象存储,并生成私有云的配置包的下载链接。由于组件的配置声明定义中的服务级别用于说明组件的提供服务所需部署的位置范围,因此,在生成组件在网络层面的服务的配置信息时,组件的提供服务的服务级别指定了组件在网络层面的服务的配置信息的作用范围,如此,生成的配置包可以使得组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署。
基于上述本申请实施例提出的私有云组件的配置方法,以下通过几个实施例对组件的配置方法进行说明。
具体的,参阅图5,本申请实施例公开了一种组件的配置方法,应用于配置中心,该方法具体包括以下步骤:
S501、接收目标组件的配置声明定义,其中目标组件的配置声明定义包括:目标组件的基础信息和提供服务的服务信息,提供服务的服务信息包括:提供服务的服务名和服务级别,服务级别用于说明提供服务所需部署的位置范围。
目标组件的配置声明定义用于说明目标组件的配置需求。服务级别用于说明提供服务所需部署的位置范围。目标组件可以是图1示出的实施例中的目标私有云的组件,也可以是其他平台上的组件。步骤S501中可以接收多个目标组件的配置声明定义,也可以是仅接收单个目标组件的配置声明定义。
目标组件的基础信息可以包括目标组件的标号、目标组件的类型、目标组件的特性版本、目标组件的描述信息等目标组件的基础属性信息。
目标组件的提供服务的服务信息为用于描述目标组件可提供的服务的信息。目标组件的提供服务可以有一个,也可以有多个。提供服务的服务信息包括:提供服务的服务名和服务级别。
服务级别能够说明提供服务所需部署的位置范围。服务级别可以包括:全局级、地域级、可用区级或者集群级。全局级的提供服务部署在主地域主可用区内,主地域主可用区可以任意指定,即全局级的提供服务可以部署在指定的任意的位置内。地域级的提供服务需部署在每一个地域内。可用区级的提供服务需部署在目标组件所在地域的每一个可用区内。集群级的提供服务需部署在目标组件所在可用区的每一个集群内。服务级别不但指定了提供服务所需部署的位置范围,还指定了提供服务的作用范围。全局级的提供服务作用范围为全局,即任何一个地域内的组件均可访问该目标组件的提供服务。地域级的提供服务作用范围为地域,即目标组件所在地域内的组件才可访问该目标组件的提供服务,可用区级的提供服务作用范围为可用区,即目标组件所在可用区内组件可访问该目标组件的提供服务,集群级的提供服务作用范围则为集群,即目标组件所在集群内的组件可访问该目标组件的提供服务。
举例说明,参阅图6,某一个目标组件的配置声明定义中的提供服务的服务信息定义了一个名为“tcloud-cvm-vstation”的提供服务,该提供服务的级别是地域(region)级,该提供服务的协议是超文本传输协议(Hypertext Transfer Protocol,HTTP),后端端口为80,该提供服务的后端端口是80,该提供服务的访问地址(Uniform Resource Locator,URL)的路径是“/vstation/cgi”。
可选地,在本申请一具体实施例中,目标组件的配置声明定义还包括:目标组件的依赖服务的标识。目标组件的依赖服务的标识用于说明目标组件所依赖的是哪个服务。目标组件的依赖服务可以有一个也可以有多个,目标组件的依赖服务的标识可以是目标组件的服务名,还可以是依赖服务的服务级别等。通过依赖服务的标识,可以查找到依赖服务的配置信息。依赖服务的配置信息用于目标组件访问该依赖服务。
举例说明,参阅图7,某目标组件的配置声明定义中关于目标组件的依赖服务部分,声明目标组件依赖“tcloud-vpc-oss”这个服务,并个该服务取别名为“tcloud.vpc.oss”,该别名适用于目标组件所在的平台,当依赖服务的服务名改变之后,目标组件本地所使用的配置模板可不作出修改。
可选地,目标组件的配置声明定义还可以包括,指定依赖服务的依赖等级。依赖服务的依赖等级可以分为强依赖和弱依赖。强依赖为依赖服务不存在时,目标组件不允许启动。弱依赖为即使依赖服务不存在,目标组件也可启动。
可选地,目标组件的配置声明定义还可以包括:目标组件的资源需求、目标组件的依赖基础信息、以及目标组件的私有变量。
目标组件的资源需求用于说明目标组件的在处理器和内存方面的需求。举例说明,参阅图8,某目标组件的配置声明定义中关于目标组件的资源需求部分,说明了目标组件的内存极限为75000,处理器需求为500,内存需求为500,内存极限为6000。
目标组件的依赖基础信息用于说明目标组件所需要的基础信息。举例说明,参阅图9,某个目标组件的配置声明定义中说明了目标组件的依赖基础信息为:目标组件依赖全局(global)基础信息以及每一个地域(all region)的基础信息。
目标组件的私有变量用于声明目标组件自己所使用的,不需要被其他组件感知的一些功能特性开关。举例说明,参阅图10,目标组件的配置声明定义中声明了组件所使用的是计费“bmp”,计费变量仅自己可见,不被其他组件感知。
S502、生成目标组件在网络层面的服务的配置信息,其中配置信息包括:目标组件在网络层面的服务的访问地址,目标组件在网络层面的服务的服务名为提供服务的服务名,配置信息的作用范围由提供服务的服务级别所指定。
通过目标组件在网络层面的服务的访问地址可以访问到目标组件在网络层面的服务。配置信息的作用范围指的是目标组件在网络层面的服务的作用范围,该作用范围由服务级别指定。例如如果服务级别是地域级,那么作用范围就是目标组件所在的地域。配置中心根据提供服务的服务级别,生成目标组件在网络层面的服务的配置信息。例如,提供服务为地域级,那么访问地址中会有地域名和主地域名的占位符。占位符的值会根据实际环境的基础信息自动渲染。由于配置信息是利用服务级别和服务名生成的,因此不会出现不同位置、但同一个服务名的服务撞域名的情况。现有技术中,由于Nacos开源架构并没有根据服务级别生成目标组件在网络层面的服务的配置信息,导致同一个服务名的服务若部署在不同位置时,会出现撞域名的情况。而本申请中,通过服务级别和服务名所生成的配置信息中的访问地址,不存在撞域名的缺陷。
可选地,配置信息还可以包括目标组件在网络层面的服务的访问接口,目标组件在网络层面的服务的网际协议版本。
可选地,在本申请一具体实施例中,提供服务的服务信息还包括:提供服务的服务类型,执行步骤S502的一种实施方式,包括:
生成目标组件在目标网络层面的服务的配置信息,目标网络层面利用目标组件的提供服务的服务类型确定。目标网络层面为目标组件的提供服务需暴露的网络层面。目标网络层面可以有多个,即可生成目标组件在多个目标网络层面的服务的配置信息。提供服务的服务类型为容器化服务或者非容器化服务。通过提供服务的服务类型,可以确定出提供服务所需暴露的目标网络层面有哪些。
具体的,在本申请一具体实施例中,生成目标组件在目标网络层面的服务的配置信息,目标网络层面利用目标组件的提供服务的服务类型确定,包括:
若目标组件的提供服务的服务类型为容器化的服务,则生成目标组件在容器网络层面的overlay服务的配置信息和在基础网络层面的underlay服务的配置信息。若目标组件的提供服务的服务类型为非容器化的服务,则生成目标组件在基础网络层面的underlay服务的配置信息。
目标组件的提供服务的服务类型为容器化的服务时,该提供服务需要暴露在容器网络层面和基础网络层面,因此,需要生成目标组件在容器网络层面的overlay服务的配置信息和在基础网络层面的underlay服务的配置信息。利用目标组件在容器网络层面的overlay服务的配置信息,可以访问目标组件在容器网络层面的提供服务,利用目标组件在基础网络层面的underlay服务的配置信息,可以访问目标组件在基础网络层面的提供服务。若目标组件的提供服务的服务类型为非容器化的服务,则提供服务只需暴露在基础网络层面,因此只需生成目标组件在基础网络层面的underlay服务的配置信息。
目标组件在目标网络层面的服务的配置信息生成后,相当于完成了目标组件在目标网络层面的服务的注册。若有其他组件需要依赖目标组件在目标网络层面的服务时,即可将目标组件在目标网络层面的服务的配置信息提供给其他组件,使得其他组件能够访问该服务。
现有技术中,Nacos开源架构所生成的目标组件在网络层面的服务的配置信息仅为基础网络层面的underlay服务的配置信息,并不支持其他网络层面的服务的配置信息,使得组件不能在多个网络层面被访问,不适用于私有云这类同时具备多个网络层面的复杂场景。
而本申请实施例中,通过配置声明定义中的提供服务的服务类型,确定出了多个目标网络层面,为目标组件的提供服务注册了多个目标网络层面的服务,得到了目标组件在多个网络层面的服务的配置信息,进而可支持目标组件在多个目标网络层面能被访问,可适用于私有云这类同时具备多个网络层面的复杂场景。
可选地,在本申请一具体实施例中,目标组件的配置声明定义还包括:指定目标网络层面还包括专有网络(Virtual Private Cloud,VPC)。即目标组件的提供服务还需暴露在VPC网络层面。
此时,若目标组件的提供服务的服务类型为容器化的服务,则生成目标组件在容器网络层面的overlay服务的配置信息、在基础网络层面的underlay服务的配置信息、以及在专有网络VPC网络层面的overlay服务的配置信息。若目标组件的提供服务的服务类型为非容器化的服务,则生成目标组件在基础网络层面的underlay服务的配置信息、和在专有网络VPC网络层面的overlay服务的配置信息。
可选地,在生成目标网络层面的服务的配置信息之后,将位于多个目标网络层面、享有相同的服务名的多个服务,通过网络规则连接。VPC网络层面的overlay服务,经过预设的第一网络规则,到达基础网络层面的underlay服务,基础网络层面的underlay服务,经过预设的第二网络规则到达容器网络层面的overlay服务。通过网络规则连接之后,处于不同网络层面的组件之间可相互访问调用。
举例说明,参阅图11,由于目标组件的提供服务为容器类服务,配置中心为服务名为“tcloud-cvm-vstation”的目标组件的提供服务,生成了目标组件在容器网络层面的overlay服务。目标组件在容器网络层面的overlay服务的配置信息具体包括:目标组件在容器网络层面的overlay服务的访问地址URL,访问端口为80,使用的是网际协议版本4(InternetProtocol version 4,IPv4)。又参阅图12,还为该目标组件的服务名为“tcloud-cvm-vstation”的提供服务,生成了基础网络层面的underlay服务,目标组件在基础网络层面的underlay服务的配置信息具体包括:目标组件在基础网络层面的underlay服务的访问地址URL,访问端口为80,使用的是网际协议版本4(Internet Protocol version 4,IPv4)。又参阅图13,还为该目标组件的服务名为“tcloud-cvm-vstation”的提供服务,生成了VPC网络层面的overlay服务,目标组件在VPC网络层面的overlay服务的配置信息具体包括:目标组件在VPC网络层面的overlay服务的访问地址URL,访问端口为80,使用的是网际协议版本4(InternetProtocol version 4,IPv4)。
本申请提出的组件的配置方法中,在接收到目标组件的配置声明定义,由于目标组件的配置声明定义中的服务级别用于说明目标组件的提供服务所需部署的位置范围,因此,在生成目标组件在网络层面的服务的配置信息时,目标组件的提供服务的服务级别指定了目标组件在网络层面的服务的配置信息的作用范围,如此,目标组件则可以在目标组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署。
参阅图14,本申请实施例提出了另一种组件的配置方法,应用于配置中心,具体包括以下步骤:
S1401、接收目标组件的配置声明定义。
其中,步骤S1401的执行过程和原理与图5示出的步骤S501相同,可参见,此处不再赘述。
S1402、生成目标组件在网络层面的服务的配置信息。
其中,步骤S1402的执行过程和原理与图5示出的步骤S502相同,可参见,此处不再赘述。
S1403、利用依赖服务的标识,在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息,依赖服务的配置信息的查找方式满足依赖服务的服务发现策略的要求。
具体的,由于配置中心针对接收到的每一个目标组件的配置声明定义,均会执行步骤S1402,进而会得到每一个目标组件在网络层面的服务的配置信息,并对每一个目标组件在网络层面的服务的配置信息机器对应的服务标识对应存储。因此,当某一个目标组件的配置声明定义中声明了目标组件的依赖服务的标识之后,就可以利用依赖服务的标识,从配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息。其中,依赖服务的配置信息,包括:依赖服务在网络层面的访问地址。
需要说明的是依赖服务的配置信息的生成方式与本申请实施例中目标组件在网络层面的服务的配置信息的生成方式是相同的,同样是根据提供该依赖服务的组件的配置声明定义,生成该依赖服务的配置信息,此处不再赘述。
依赖服务的配置信息的查找方式满足依赖服务的服务发现策略的要求。依赖服务的服务发现策略可以依据配置声明定义中有关依赖服务的信息来确定。
可选地,当配置声明定义中仅包括依赖服务的标识,则依赖服务的服务发现策略为就近访问策略。就近访问策略要求查找的是与目标组件的部署位置最为接近,且目标组件可落入依赖服务的配置信息的作用范围内的依赖服务的配置信息。
可选地,依赖服务的服务发现策略为就近访问策略,利用依赖服务的标识,在配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息的一种实施方式,包括:
在配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为依赖服务的标识、且与目标组件所部署位置相同的服务的配置信息。
具体的,在配置中心存储的组件在网络层面的服务的配置信息中,查找是否有标识为依赖服务的标识、且与目标组件所部署的集群位置相同的服务的配置信息,如果有的话,则认为查找到的依赖服务的配置信息是满足依赖服务的服务发现策略的配置信息。而如果没有查找到的话,则利用依赖服务的标识,查找目标组件在依赖服务的配置信息的作用范围内的依赖服务的配置信息。其中,依赖服务的标识,可以为依赖服务的服务名。
利用依赖服务的标识,可以确定出依赖服务的服务级别。提供依赖服务的组件的配置声明定义有存储在配置中心本地,因此配置中心具有依赖服务的服务信息。进而通过依赖服务的标识,能够确定出依赖服务的服务级别。而服务级别又指定了依赖服务的配置信息的作用范围,例如,如果依赖服务是全局级的,那么依赖服务的配置信息作用范围为全局,依赖服务是地域级的,那么依赖服务的配置信息作用范围则是地域,依赖服务是可用区级的,那么依赖服务的配置信息的作用范围则是可用区,依赖服务是集群级的,那么依赖服务的配置信息的作用范围则是集群。因此利用依赖服务的标识,查找目标组件在依赖服务的配置信息的作用范围内的依赖服务的配置信息的过程为,通过依赖服务的标识,确定出依赖服务的服务级别之后,则查找是否存在依赖服务的配置信息的作用范围内存在目标组件的,如果可查找到,则认为查找到的依赖服务的配置信息是满足依赖服务的服务发现策略的配置信息。举例说明,如果依赖服务是地域级的,则查找是否存在依赖服务的配置信息的作用范围为目标组件所在的地域的配置信息,如果查找到了,则将该依赖服务的配置信息确定为满足服务发现策略的配置信息。
可选地,当目标组件的配置声明定义还包括:访问依赖服务所在网络层面的指定信息时,依赖服务的服务发现策略为指定网络层面的策略。
指定网络层面的策略要求查找的依赖服务的配置信息需为配置声明定义中访问依赖服务所在网络层面的指定信息所指明的网络层面的服务的配置信息。例如,访问依赖服务所在网络层面的指定信息为访问依赖服务所在基础网络层面的配置信息,那么查找依赖服务的配置信息时,则需要查找标识为依赖服务的标识、且为基础网络层面的依赖服务的配置信息。
具体的,依赖服务的服务发现策略为指定网络层面的策略,利用依赖服务的标识,在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息的一种实施方式,包括:
在配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为依赖服务的标识、且访问依赖服务所在网络层面的指定信息所指明的网络层面的服务的配置信息。
若配置声明定义中包括有访问依赖服务所在网络层面的指定信息,那么即可明确出查找依赖服务的配置信息时,需要满足该依赖服务的配置信息需在访问依赖服务所在网络层面的指定信息所指明的网络层面上。由上述对依赖服务的配置信息的描述可知,依赖服务的配置信息可能包括有容器网络层面的overlay服务的配置信息、在基础网络层面的underlay服务的配置信息、以及在专有网络VPC网络层面的overlay服务的配置信息。在配置声明定义指明网络层面的情况下,满足指定网络层面的策略的配置信息,则只有访问依赖服务所在网络层面的指定信息所指明的网络层面的服务的配置信息。
举例说明,如果配置声明定义中访问依赖服务所在网络层面的指定信息所指明的网络层面为基础网络层面,那么在配置中心存储的组件在网络层面的服务的配置信息中,则查找到标识为依赖服务的标识、且为基础网络层面的服务的配置信息。
个别应用场景中,目标组件访问依赖服务后所得到的服务信息并不是自己所使用的,而是下发给其他组件使用的。而如果其他组件不能够访问容器网络层面的服务信息时,此时就需要目标组件在配置声明定义中写入访问依赖服务所在基础网络层面的指定信息,进而配置中心即可依靠指定网络层面的策略查找到满足指定网络层面的策略的依赖服务的配置信息,目标组件通过该配置信息访问到依赖服务后,下发至其他组件时能够被其他组件使用。
可选地,当目标组件的配置声明定义还包括:访问依赖服务的指定区域时,依赖服务的服务发现策略为列表访问策略。
当配置声明定义还包括访问依赖服务的指定区域时,则代表着指定区域内的服务均为依赖服务。使用列表访问策略时,查找出的是指定区域内的所有服务的配置信息。可选地,配置声明定义除了包括访问依赖服务的指定区域外,还包括依赖服务的服务级别,此时使用列表访问策略,查找出的是指定区域内服务级别为依赖服务的服务级别的服务的配置信息。
具体的,依赖服务的服务发现策略为列表访问策略,利用依赖服务的标识,在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息,包括:
在配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为依赖服务的标识、且属于访问依赖服务的指定区域内的服务的配置信息。
举例说明,若配置声明定义中要求访问所有地域的某地域级服务,则在配置中心存储的组件在网络层面的服务的配置信息中,查找出所有地域的某个地域级的服务的配置信息。除此之外,在配置声明定义中指定区域的方式还有很多,例如可以指定为目标组件所在地域的所有可用区的某可用区级服务、目标组件所在地域所在可用区的所有物理集群的某集群级服务、所有地域所有可用区的某可用区级服务、目标组件所在地域所有可用区所有物理集群的某集群级服务、或者所有地域所有可用区所有物理集群的某集群级服务。
配置中心查找到的标识为依赖服务的标识、且属于访问依赖服务的指定区域内的服务的配置信息可能会有多个,因此可以将查找到的所有依赖服务的配置信息以列表形式展现。
由于现有技术中,Nacos开源架构生成的目标组件的配置文件只能支持目标组件访问基础网络层面的服务,无法使用本申请实施例中的指定网络层面的策略,而且现有的Nacos开源架构只支持单地域单可用区,也不能使用本申请实施例中的列表访问策略以及适用于多地域多可用区的就近访问策略。
本申请实施例中配置中心对目标组件进行的配置,可支持多个网络层面的服务访问,以及多地域多可用区的架构,进而可提供的服务发现策略也更为丰富,可依据目标组件的需求,提供就近访问策略、指定网络层面的策略和列表访问策略,满足多地域多可用区、多网络层面的访问需求。
S1404、生成目标组件的配置文件,其中目标组件的配置文件包括:依赖服务的配置信息。
由于目标组件的配置文件包括有依赖服务的配置信息,因此目标组件的配置文件可以使得目标组件具有访问调用依赖服务的功能。本申请实施例中,依赖服务的配置信息的作用范围是由依赖服务的服务级别所指定的,因此提供依赖服务的组件可以在作用范围内进行部署,不局限于同一个地域同一个可用区内部署,实现多地域多可用区部署,支持多地域多可用区之间的互相访问调用。
可选地,目标组件的配置文件中除了包括有依赖服务的配置信息,还可以包括有目标组件在网络层面的服务的配置信息,以及配置声明定义中写入的一些信息。
本申请提出的组件的配置方法中,在接收到目标组件的配置声明定义,由于目标组件的配置声明定义中的服务级别用于说明目标组件的提供服务所需部署的位置范围,因此,在生成目标组件在网络层面的服务的配置信息时,目标组件的提供服务的服务级别指定了目标组件在网络层面的服务的配置信息的作用范围,如此,目标组件则可以在目标组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署。
需要说明的是,本申请所提供的组件、私有云组件的配置方法,也可以适用于区块链系统。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等功能模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
参阅图15,基于上述本申请实施例提出的组件的配置方法,本申请实施例对应公开了一种组件的配置装置,应用于配置中心,该组件的配置装置包括:接收单元1501和第一生成单元1502。
接收单元1501,用于接收目标组件的配置声明定义。其中,目标组件的配置声明定义用于说明目标组件的配置需求,目标组件的配置声明定义包括:目标组件的基础信息和提供服务的服务信息,提供服务的服务信息包括:提供服务的服务名和服务级别。服务级别用于说明提供服务所需部署的位置范围。
第一生成单元1502,用于生成目标组件在网络层面的服务的配置信息。其中,配置信息包括:目标组件在网络层面的服务的访问地址,目标组件在网络层面的服务的服务名为提供服务的服务名,配置信息的作用范围由提供服务的服务级别所指定。
可选地,目标组件的配置声明定义还包括:目标组件的依赖服务的标识。其中:组件的配置装置,还包括:查找单元和第二生成单元。
查找单元,用于利用依赖服务的标识,在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息,依赖服务的配置信息的查找方式满足依赖服务的服务发现策略的要求。
可选地,依赖服务的服务发现策略为就近访问策略,所述查找单元,包括:
第一查找子单元,用于在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且与所述目标组件所部署位置相同的服务的配置信息;
可选地,依赖服务的服务发现策略为指定网络层面的策略,查找单元,包括:
第二查找子单元,用于在配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为依赖服务的标识、且访问所述依赖服务所在网络层面的指定信息所指明的网络层面的服务的配置信息。
可选地,依赖服务的服务发现策略为列表访问策略,查找单元,包括:
第三查找子单元,用于在配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为依赖服务的标识、且属于访问依赖服务的指定区域内的服务的配置信息。
第二生成单元,用于生成目标组件的配置文件。其中,目标组件的配置文件包括:依赖服务的配置信息。
可选地,提供服务的服务信息还包括:提供服务的服务类型。其中:第一生成单元,包括:
第一生成子单元,用于生成目标组件在目标网络层面的服务的配置信息,目标网络层面利用目标组件的提供服务的服务类型确定。
可选地,第一生成子单元,包括:第二生成子单元和第三生成子单元。
第二生成子单元,用于若目标组件的提供服务的服务类型为容器化的服务,则生成目标组件在容器网络层面的overlay服务的配置信息、在基础网络层面的underlay服务的配置信息、以及在专有网络VPC网络层面的overlay服务的配置信息。
第三生成子单元,用于若目标组件的提供服务的服务类型为非容器化的服务,则生成目标组件在基础网络层面的underlay服务的配置信息、和在专有网络VPC网络层面的overlay服务的配置信息。
可选地,依赖服务的服务发现策略包括:就近访问策略、指定网络层面的策略和列表访问策略。其中,依赖服务的服务发现策略为指定网络层面的策略,目标组件的配置声明定义还包括:访问依赖服务所在网络层面的指定信息,依赖服务的服务发现策略为列表访问策略,目标组件的配置声明定义还包括:访问依赖服务的指定区域。
上述本申请实施例公开的组件的配置装置中的具体的原理和执行过程,与上述本申请实施例公开的组件的配置方法相同,可参见上述本申请实施例公开的组件的配置方法中相应的部分,这里不再进行赘述。
本申请提出的组件的配置装置中,在接收单元1501接收到目标组件的配置声明定义,由于目标组件的配置声明定义中的服务级别用于说明目标组件的提供服务所需部署的位置范围,因此,第一生成单元1502在生成目标组件在网络层面的服务的配置信息时,目标组件的提供服务的服务级别指定了目标组件在网络层面的服务的配置信息的作用范围,如此,目标组件则可以在目标组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署。
参阅图16,基于上述本申请实施例提出的私有云组件的配置方法,本申请实施例对应公开了一种配置中心,包括:交互模块1601和配置包计算模块1602。
交互模块1601,用于接收目标私有云的配置包的计算请求。其中,计算请求用于请求得到目标私有云的组件的配置文件所组成的配置包。
配置包计算模块1602,用于利用上述本申请实施例提出的任意一种组件的配置方法,对目标私有云的组件进行配置,在得到目标私有云的组件的配置文件时,将目标私有云的所有组件得到配置文件进行打包,得到目标私有云的配置包,将目标私有云的配置包存储到对象存储,并生成私有云的配置包的下载链接。
本申请实施例提出的配置中心,通过交互模块1601接收目标私有云的配置包的计算请求,其中计算请求用于请求得到目标私有云的组件的配置文件所组成的配置包。然后配置包计算模块1602通过上述本申请实施例提出的任意一种组件的配置方法,在接收到私有云的组件的配置声明定义之后,生成组件在网络层面的服务的配置信息,并利用依赖服务的标识,在配置中心存储的组件在网络层面的服务的配置信息中查找到依赖服务的配置信息,生成包括有依赖服务的配置信息的组件的配置文件,在得到目标私有云的组件的配置文件时,将目标私有云的所有组件的配置文件进行打包,得到目标私有云的配置包,将目标私有云的配置包存储到对象存储,并生成私有云的配置包的下载链接。由于组件的配置声明定义中的服务级别用于说明组件的提供服务所需部署的位置范围,因此,在生成组件在网络层面的服务的配置信息时,组件的提供服务的服务级别指定了组件在网络层面的服务的配置信息的作用范围,如此,配置包计算模块1602生成的配置包可以使得组件在网络层面的服务的配置信息的作用范围进行部署,不局限于同一个地域同一个可用区里部署,可以多地域多可用区部署。
本申请实施例还提出的一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现以上各实施例提出的任意一种组件的配置方法,或者以上各实施例提出的任意一种私有云组件的配置方法。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种组件的配置方法,其特征在于,应用于配置中心,所述组件的配置方法包括:
接收目标组件的配置声明定义;其中,所述目标组件的配置声明定义用于说明所述目标组件的配置需求;所述目标组件的配置声明定义包括:所述目标组件的基础信息和提供服务的服务信息;所述提供服务的服务信息包括:所述提供服务的服务名和服务级别;所述服务级别用于说明所述提供服务所需部署的位置范围;
生成所述目标组件在网络层面的服务的配置信息;其中,所述配置信息包括:所述目标组件在网络层面的服务的访问地址,所述目标组件在网络层面的服务的服务名为所述提供服务的服务名;所述配置信息的作用范围由所述提供服务的服务级别所指定。
2.根据权利要求1所述的方法,其特征在于,所述目标组件的配置声明定义还包括:所述目标组件的依赖服务的标识;其中:所述接收目标组件的配置声明定义之后,还包括:
利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,所述依赖服务的配置信息的查找方式满足所述依赖服务的服务发现策略的要求;
生成所述目标组件的配置文件;其中,所述目标组件的配置文件包括:所述依赖服务的配置信息。
3.根据权利要求1所述的方法,其特征在于,所述提供服务的服务信息还包括:所述提供服务的服务类型;其中:生成所述目标组件在网络层面的服务的配置信息,包括:
生成所述目标组件在目标网络层面的服务的配置信息;所述目标网络层面利用所述目标组件的提供服务的服务类型确定。
4.根据权利要求2所述的方法,其特征在于,所述依赖服务的服务发现策略包括:就近访问策略、指定网络层面的策略和列表访问策略;其中,所述依赖服务的服务发现策略为所述指定网络层面的策略,所述目标组件的配置声明定义还包括:访问所述依赖服务所在网络层面的指定信息;所述依赖服务的服务发现策略为所述列表访问策略,所述目标组件的配置声明定义还包括:访问所述依赖服务的指定区域。
5.根据权利要求4所述的方法,其特征在于,所述依赖服务的服务发现策略为就近访问策略,所述利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,包括:
在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且与所述目标组件所部署位置相同的服务的配置信息;
所述依赖服务的服务发现策略为指定网络层面的策略,所述利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,包括:
在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且所述访问所述依赖服务所在网络层面的指定信息所指明的网络层面的服务的配置信息;
所述依赖服务的服务发现策略为列表访问策略,所述利用所述依赖服务的标识,在所述配置中心存储的组件在网络层面的服务的配置信息中查找到所述依赖服务的配置信息,包括:
在所述配置中心存储的组件在网络层面的服务的配置信息中,查找到标识为所述依赖服务的标识、且属于所述访问所述依赖服务的指定区域内的服务的配置信息。
6.根据权利要求3所述的方法,其特征在于,所述生成所述目标组件在目标网络层面的服务的配置信息;所述目标网络层面利用所述目标组件的提供服务的服务类型确定,包括:
若所述目标组件的提供服务的服务类型为容器化的服务,则生成所述目标组件在容器网络层面的overlay服务的配置信息、在基础网络层面的underlay服务的配置信息、以及在专有网络VPC网络层面的overlay服务的配置信息;
若所述目标组件的提供服务的服务类型为非容器化的服务,则生成所述目标组件在基础网络层面的underlay服务的配置信息、和在专有网络VPC网络层面的overlay服务的配置信息。
7.一种私有云组件的配置方法,其特征在于,应用于配置中心,所述私有云组件的配置方法包括:
接收目标私有云的配置包的计算请求;其中,所述计算请求用于请求得到所述目标私有云的组件的配置文件所组成的配置包;
利用权利要求1至6中任意一项所述的组件的配置方法,对所述目标私有云的组件进行配置;
在得到所述目标私有云的组件的配置文件时,将所述目标私有云的所有组件的配置文件进行打包,得到所述目标私有云的配置包;
将所述目标私有云的配置包存储到对象存储,并生成所述私有云的配置包的下载链接。
8.一种组件的配置装置,其特征在于,应用于配置中心,所述组件的配置装置包括:
接收单元,用于接收目标组件的配置声明定义;其中,所述目标组件的配置声明定义用于说明所述目标组件的配置需求;所述目标组件的配置声明定义包括:所述目标组件的基础信息和提供服务的服务信息;所述提供服务的服务信息包括:所述提供服务的服务名和服务级别;所述服务级别用于说明所述提供服务所需部署的位置范围;
第一生成单元,用于生成所述目标组件在网络层面的服务的配置信息;其中,所述配置信息包括:所述目标组件在网络层面的服务的访问地址,所述目标组件在网络层面的服务的服务名为所述提供服务的服务名;所述配置信息的作用范围由所述提供服务的服务级别所指定。
9.一种配置中心,其特征在于,包括:
交互模块,用于接收目标私有云的配置包的计算请求;其中,所述计算请求用于请求得到所述目标私有云的组件的配置文件所组成的配置包;
配置包计算模块,用于利用权利要求1至6中任意一项所述的组件的配置方法,对所述目标私有云的组件进行配置;在得到所述目标私有云的组件的配置文件时,将所述目标私有云的所有组件得到配置文件进行打包,得到所述目标私有云的配置包,将所述目标私有云的配置包存储到对象存储,并生成所述私有云的配置包的下载链接。
10.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序被执行时,用于实现如权利要求1至6任意一项所述的组件的配置方法,或者如权利要求7所述的私有云组件的配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110175599.2A CN114915547A (zh) | 2021-02-07 | 2021-02-07 | 组件、私有云组件的配置方法、相关装置以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110175599.2A CN114915547A (zh) | 2021-02-07 | 2021-02-07 | 组件、私有云组件的配置方法、相关装置以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114915547A true CN114915547A (zh) | 2022-08-16 |
Family
ID=82760899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110175599.2A Pending CN114915547A (zh) | 2021-02-07 | 2021-02-07 | 组件、私有云组件的配置方法、相关装置以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114915547A (zh) |
-
2021
- 2021-02-07 CN CN202110175599.2A patent/CN114915547A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109194506B (zh) | 区块链网络部署方法、平台及计算机存储介质 | |
US11170316B2 (en) | System and method for determining fuzzy cause and effect relationships in an intelligent workload management system | |
US20230333906A1 (en) | Discovering and publishing api information | |
Edmonds et al. | Toward an open cloud standard | |
US9866547B2 (en) | Controlling a discovery component, within a virtual environment, that sends authenticated data to a discovery engine outside the virtual environment | |
JP2011129117A (ja) | サービスとしてのクラウドフェデレーション | |
CN110933187A (zh) | 基于区块链共识加密机制的物联网数据传输系统 | |
Munteanu et al. | Multi-cloud resource management: cloud service interfacing | |
CN113535691B (zh) | 一种用户服务注册方法及装置 | |
US11195216B2 (en) | Federated marketplace portal | |
Walraven et al. | PaaSHopper: Policy-driven middleware for multi-PaaS environments | |
CN113542435B (zh) | 一种用户服务使用方法及装置 | |
CN113535335B (zh) | 基于区块链的虚拟资源分配方法及装置和电子设备 | |
CN114866416A (zh) | 一种多集群统一管理系统及部署方法 | |
CN115349117A (zh) | 用于多租户无服务器环境的多级高速缓存网格系统 | |
CN116566656A (zh) | 资源访问方法、装置、设备及计算机存储介质 | |
WO2023040450A1 (zh) | 区块链服务网络的组建 | |
CN114338124B (zh) | 云密码计算服务的管理方法、系统、电子设备及存储介质 | |
CN114915547A (zh) | 组件、私有云组件的配置方法、相关装置以及存储介质 | |
CN115766123A (zh) | 数据跨域授权方法及装置和电子设备 | |
US20220075663A1 (en) | System for providing a service | |
CN115686731A (zh) | 离线任务的集群控制方法、装置和设备及存储介质 | |
US20230037986A1 (en) | Autoencryption system for data in a container | |
Blasi et al. | A Minicloud Specification Enabling the Federation of Heterogeneous Edge Resources for Latency Sensitive Applications' Requirements | |
CN117407141A (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 |