CN117319399B - 云管理平台中云平台创建方法、装置、系统、设备及介质 - Google Patents
云管理平台中云平台创建方法、装置、系统、设备及介质 Download PDFInfo
- Publication number
- CN117319399B CN117319399B CN202311619100.8A CN202311619100A CN117319399B CN 117319399 B CN117319399 B CN 117319399B CN 202311619100 A CN202311619100 A CN 202311619100A CN 117319399 B CN117319399 B CN 117319399B
- Authority
- CN
- China
- Prior art keywords
- platform
- cloud
- module
- target
- cloud platform
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 238000012795 verification Methods 0.000 claims abstract description 60
- 238000011144 upstream manufacturing Methods 0.000 claims abstract description 38
- 238000007726 management method Methods 0.000 claims description 202
- 238000013515 script Methods 0.000 claims description 16
- 238000004806 packaging method and process Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 10
- 230000006978 adaptation Effects 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 238000013475 authorization Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 4
- 238000013499 data model Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 238000011161 development Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 13
- 239000008186 active pharmaceutical agent Substances 0.000 description 12
- 239000002071 nanotube Substances 0.000 description 12
- 230000006870 function Effects 0.000 description 7
- 238000003032 molecular docking Methods 0.000 description 7
- 230000006854 communication Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 210000001503 joint Anatomy 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013138 pruning Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种云管理平台中云平台创建方法、装置、系统、设备及介质,涉及云平台管理领域,所述方法包括:确定目标云平台中的服务模块接收到路由转发请求;调用扩展插件模块,在确定目标云平台通过权限验证的情况下,根据目标出入参的服务类型确定服务类型对应的路由转发路径;根据路由转发路径,指示服务模块发送目标出入参至目标云平台的上游模块,以在云管理平台中创建所述目标云平台。本发明实现了目标云平台的服务类型对应路由转发路径的确定以及上游转发,实现在云管理平台中创建所述目标云平台的网络虚拟私有云资源,提升了云管理平台中不同云平台在进行VPC资源创建时的适配性、可扩展性以及可维护性。
Description
技术领域
本发明涉及云平台管理领域,尤其涉及一种云管理平台中云平台创建方法、装置、系统、设备及介质。
背景技术
相关技术中云平台下的多云纳管的对接实现方法以及传统云平台多云管理方案,大多是基于多插件化的代码开发,通过插件技术实现不同厂商云平台的扩展对接,方便第三方厂商灵活扩展管理插件,完成与云平台的对接。
在多云纳管场景中,通过应用程序编程接口(Application ProgrammingInterface,API)网关实现对不同云平台的API调用,对上为云管理平台提供北向接口,对下适配多种云平台。但相关技术中需要进行三方厂商插件的开发,同时不同的云平台提供的北向接口是不一样,且每种平台都有其独有的鉴权方式,需要针对不同鉴权进行底层业务代码的适配开发。而每对接一个厂商需要进行不同插件的适配开发工作,从而导致重复对接开发的问题,且对接开发后的可扩展性与可维护性较差。
发明内容
本发明提供一种云管理平台中云平台创建方法、装置、系统、设备及介质,用以解决在云管理平台的相关技术中,不同云平台插件开发的适配性、可扩展性以及可维护性较差的技术问题。
第一方面,本发明提供了一种云管理平台中云平台创建方法,所述云管理平台包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块;
所述云管理平台中云平台创建方法包括:
确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;
调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;
根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。
根据本发明提供的云管理平台中云平台创建方法,所述服务类型包括计算服务、网络服务以及存储服务;
在确定目标云平台中的服务模块接收到路由转发请求之前,所述方法还包括:
调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参;
指示所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参,在确定所述原始出入参完成参数校验的情况下,根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参;
指示封装所述云平台出入参,以获取目标出入参,并指示所述目标云平台中的平台路由模块发送所述目标出入参至所述目标云平台中的服务模块。
根据本发明提供的云管理平台中云平台创建方法,所述平台路由模块的装配类型包括计算云主机、虚拟私有云、对象存储以及负载均衡;
所述根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参,包括:
根据所述原始出入参的装配类型,从所述预设装配方式中确定出目标装配方式;
根据所述目标装配方式,转换所述原始出入参为云平台出入参。
根据本发明提供的云管理平台中云平台创建方法,在调用扩展插件模块之前,所述方法还包括:
根据初始化、参数重写、响应头、响应体以及日志的编码适配,基于LUA脚本语言生成插件脚本;
关联所述插件脚本至所述云管理平台的预设容器,以在所述云管理平台中部署所述扩展插件模块。
根据本发明提供的云管理平台中云平台创建方法,在指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块之后,所述方法还包括:
按照负载均衡的配置规则,从所有服务节点中确定出目标节点。
根据本发明提供的云管理平台中云平台创建方法,在从所有服务节点中确定出目标节点之后,所述方法还包括:
指示根据所述目标出入参,配置所述目标云平台的IP地址、端口信息以及目标节点的权重值。
根据本发明提供的云管理平台中云平台创建方法,在调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参之前,所述方法还包括:
接收来自用户的创建请求,所述创建请求包括用户账号信息、原始出入参的装配类型、平台类型以及URL地址;
调用预设全局路由拦截器过滤所述URL地址,在确定完成所述预设全局路由拦截器的校验后,调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证;
在确定鉴权认证通过的情况下,指示发送所述原始出入参的装配类型以及平台类型至所述动态路由模块;
根据所述原始出入参的平台类型,从预设平台库中确定出与所述平台类型对应的目标云平台,以调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参。
根据本发明提供的云管理平台中云平台创建方法,所述预设全局路由拦截器包括第一拦截模块以及第二拦截模块;
所述调用预设全局路由拦截器过滤所述URL地址,包括:
调用所述第一拦截模块对所述URL地址进行匹配验证,在确定不存在无效访问路径重定向或返回的情况下,调用所述第二拦截模块对所述云管理平台的权限接口以及令牌Token进行校验。
根据本发明提供的云管理平台中云平台创建方法,在调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证之后,所述方法包括:
在确定鉴权认证不通过的情况下,接收用户的输入指令,所述输入指令用于指示采用预设鉴权方式进行所述用户账号信息的鉴权认证;
从所述平台鉴权管理模块中调用预设白名单,所述预设白名单用于确定用户账号信息与所述预设白名单的匹配情况;
在确定所述用户账号信息存在于所述预设白名单中的情况下,生成调用指令;
响应于所述调用指令,调用预设鉴权方式对所述用户账号信息进行鉴权认证;
所述预设白名单中存储有允许采用预设鉴权方式进行鉴权认证的所有预设用户账号信息;
所述预设鉴权方式包括用户名密码验证、身份验证机制JWT以及开放平台认证方式Basic Auth。
根据本发明提供的云管理平台中云平台创建方法,在调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证之前,所述方法还包括:
创建并配置消费者信息,添加并配置身份验证及授权协议OpenID Connect的预设插件;
封装所述预设插件至所述身份识别与访问管理系统IAM。
第二方面,本发明还提供了一种云管理平台中云平台创建系统,包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块;
在确定目标云平台中的服务模块接收到路由转发请求的情况下调用所述扩展插件模块处理所述路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;
所述扩展插件模块用于在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;
根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。
根据本发明提供的云管理平台中云平台创建系统,所述应用程序编程接口网关还包括动态路由模块;
所述动态路由模块用于向所述目标云平台中的平台路由模块发送原始出入参;
指示所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参,在确定所述原始出入参完成参数校验的情况下,根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参;
指示封装所述云平台出入参,以获取目标出入参,并指示所述目标云平台中的平台路由模块发送所述目标出入参至所述目标云平台中的服务模块。
根据本发明提供的云管理平台中云平台创建系统,所述应用程序编程接口网关还包括平台鉴权管理模块;
所述平台鉴权管理模块用于实现不同云平台的权限设置以及接口管理;
还用于对用户账号信息进行鉴权认证。
根据本发明提供的云管理平台中云平台创建系统,所述应用程序编程接口网关还包括第三方云平台模块;
所述第三方云平台模块用于对第三方云平台进行接口管理以及URL动态路由的请求处理。
根据本发明提供的云管理平台中云平台创建系统,还包括所有云平台;
所述应用程序编程接口网关通过API接口连接所有云平台。
根据本发明提供的云管理平台中云平台创建系统,还包括云管理平台上层应用,所述云管理平台上层应用包括计算资源、存储资源以及网络资源;
所述应用程序编程接口网关连接所述云管理平台上层应用。
根据本发明提供的云管理平台中云平台创建系统,还包括多云虚拟化模块,所述多云虚拟化模块包括增删改查子模块、API组装模块以及数据模型模块;
所述应用程序编程接口网关通过所述多云虚拟化模块连接所述云管理平台上层应用。
根据本发明提供的云管理平台中云平台创建系统,还包括预设全局路由拦截器,所述预设全局路由拦截器包括第一拦截模块以及第二拦截模块;
所述第一拦截模块用于对URL地址进行匹配验证;
所述第二拦截模块用于对云管理平台的权限接口以及令牌Token进行校验;
所述预设全局路由拦截器连接所述应用程序编程接口网关。
第三方面,提供了一种云管理平台中云平台创建装置,所述云管理平台包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块,所述应用程序编程接口网关包括:
确定单元,所述确定单元用于确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;
调用单元,所述调用单元用于调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;
指示单元,所述指示单元用于根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。
第四方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述云管理平台中云平台创建方法。
第五方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述云管理平台中云平台创建方法。
本发明提供的云管理平台中云平台创建方法、装置、系统、设备及介质,确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。本发明通过在应用程序编程接口网关中扩展插件模块的调用,实现了目标云平台的服务类型对应路由转发路径的确定以及上游转发,进而实现在云管理平台中创建所述目标云平台的网络虚拟私有云(Virtual Private Cloud,VPC)资源,提升了云管理平台中不同云平台在进行VPC资源创建时的适配性、可扩展性以及可维护性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是相关技术中云管理平台基于插件化的纳管模型的结构示意图;
图2是本发明提供的云管理平台中云平台创建方法的流程示意图之一;
图3是本发明提供的云管理平台中云平台创建方法的流程示意图之二;
图4是本发明提供的云管理平台中云平台创建方法的流程示意图之三;
图5是本发明提供的云管理平台中云平台创建方法的流程示意图之四;
图6是本发明提供的云管理平台中云平台创建方法的流程示意图之五;
图7是本发明提供的云管理平台中云平台创建系统的架构示意图之一;
图8是本发明提供的云管理平台中云平台创建系统的架构示意图之二;
图9是本发明提供的云管理平台中云平台创建系统的架构示意图之三;
图10是本发明提供的云管理平台中云平台创建装置的结构示意图;
图11是本发明提供的电子设备的实体结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前随着信息化建设的快速发展,云架构在各个领域已进入全面落地应用阶段。各行业因为自身业务的需要,基于云计算技术建设自己的数据中心,而各个数据中心有采用相同技术体系的云计算平台,也有采用不同技术体系的云计算平台。在企业数字化转型的同时,云计算从早期的公有云、私有云,到多云、多企业数据中心所组成的混合云或多云,经历了从单一架构、单一计算场景向更复杂的架构和更多计算场景的演变。因此多云是云计算发展过程中的一个重要阶段,它将是IT基础设施服务的新常态。
两个相互独立的局域网之间通过路由器进行通信,中间的路由被称之为网关。落实在开发层面来说,就是客户端与微服务系统之间存在的网关;从业务层面来说,当客户端完成某个业务的时候,需要同时调用多个微服务;从系统层面来说,任何一个应用系统如果需要被其他系统调用,就需要暴露API,这些API代表着的功能点,它为外部的调用提供了一个统一的访问入口;从客户端类型层面来说,为了屏蔽不同客户端调用差异也可以加入应用程序编程接口网关。由于应用程序编程接口网关所处的位置是客户端与微服务交界的地方,因此从功能上它还包括:路由、负载均衡、限流、缓存、日志以及发布等。
图1是相关技术中云管理平台基于插件化的纳管模型的结构示意图,在每一个底层都开发一个适配插件,类似于JAVA架包,以嵌入至第三方平台应用的后端,第三方云管平台在上层会根据该架包对外提供的API接口做一定的适配,然后完成它和第三方平台的对接。如图1所示,相关技术的云管理平台包括云管理平台上层应用,适配器、各云平台的插件以及各云平台的接口,其中,所述云管理平台上层应用包括云主机、云存储以及私有网络,所述适配器包括计算适配器、存储适配器以及网络适配器,相关技术需要进行三方厂商插件的开发,同时不同的云平台提供的北向接口是不一样,需要针对每种平台不同鉴权方式进行底层业务代码的适配开发,而每对接一个厂商需要进行不同插件的适配开发工作,从而导致重复对接开发的问题,且对接开发后的可扩展性与可维护性较差。为了解决上述技术问题,图2是本发明提供的云管理平台中云平台创建方法的流程示意图之一,所述云管理平台包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块;
所述云管理平台中云平台创建方法包括:
步骤201、确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参。
在步骤201中,所述目标云平台为所有云平台中,当前需要创建网络VPC资源的云平台,所述目标云平台包括平台路由模块、服务模块以及上游模块,所述平台路由模块用于实现目标出入参的参数校验及其装配封装,所述服务模块可以包括计算服务、网络服务以及存储服务,所述上游模块用于配置三方云平台的底层服务的IP地址、端口信息和节点权重值,还用于按照配置规则进行负载均衡。
可选地,所述目标云平台中的服务模块接收到来自平台路由模块发送的路由转发请求,而所述路由转发请求包括目标云平台下的目标出入参,所述目标出入参包括目标云平台下的出参以及入参,入参指的是函数或方法中需要传递的参数,出参指的是函数或方法从运行结果返回的值,入参和出参是标准的计算机科学术语,它们被广泛应用于编写函数库、框架和其他代码库,在此不予赘述。
步骤202、调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径。
在步骤202中,本发明区别于相关技术中每对接一个云平台需要进行不同插件的适配开发工作,通过在云管理平台上层应用以及各个云平台之间构建应用程序编程接口网关设备,并在所述应用程序编程接口网关设备中设置扩展插件模块,以使得在确定目标云平台中的服务模块接收到路由转发请求的情况下,调用扩展插件模块。
可选地,相同一组的函数(Route)被路由分配到关联的服务应用上,所述扩展插件模块中内嵌有预设三方云平台的云计算模型Serverless插件,用于权限校验以及路由转发,该插件包括Serverless-Pre-Function阶段和Serverless-Post-Function阶段的过程处理。其中Serverless-Pre-Function阶段中,在最开始运行阶段进行目标云平台的密钥AccessKey权限的获取,所述密钥AccessKey具有该账户完全的权限,例如所述目标云平台为阿里云,则其认证可以包括请求标识符AccessKey ID和请求密钥AccessKey Secret,AccessKeySecret是阿里云提供给用户访问API和云产品的一种认证方式,AccessKeySecret是由AccessKeyID和AccessKeySecret组成的一对密钥,其中AccessKeyID用于标识访问者的身份,AccessKeySecret则用于计算数字签名,以确保通信过程中的消息完整性和验证请求的发送者,并在认证通过后的Serverless-Post-Function阶段,进行验证通过后的统一接口请求转发。
可选地,本发明在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径,若根据所述目标出入参的服务类型确定为计算服务类型,则确定计算服务类型对应的路由转发路径;若根据所述目标出入参的服务类型确定为网络服务类型,则确定网络服务类型对应的路由转发路径;若根据所述目标出入参的服务类型确定为存储服务类型,则确定存储服务类型对应的路由转发路径。
步骤203、根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。
在步骤203中,本发明最终将请求接口及所述目标出入参统一关联到所述目标云平台的上游模块,所述上游模块主要用于配置三方云平台的底层服务的IP地址、端口信息和目标节点权重值,如果三方云平台提供多个服务节点,则可以按照配置规则进行负载均衡。
可选地,本发明将所述目标云平台的上游模块的地址信息直接绑定到所述目标云平台中的服务模块上,即目标云平台的计算、网络和存储服务统一对应一个上游模块,如果后续新增其他三方云厂商对应的云平台,则可以继续扩展一个上游模块,另外除了上述基本的负载均衡外,所述目标云平台的上游模块还对上游设置主被动健康检查、请求接口URL的重试策略等业务逻辑。
本发明提供的云管理平台中云平台创建方法,确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。本发明通过在应用程序编程接口网关中扩展插件模块的调用,实现了目标云平台的服务类型对应路由转发路径的确定以及上游转发,进而实现在云管理平台中创建所述目标云平台的网络虚拟私有云资源,提升了云管理平台中不同云平台在进行VPC资源创建时的适配性、可扩展性以及可维护性。
可选地,在指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块之后,所述方法还包括:
按照负载均衡的配置规则,从所有服务节点中确定出目标节点。
可选地,所述负载均衡的配置可以有两种方式,例如,按照负载均衡的配置规则,本发明可以确定每一服务节点对应的当前负载数量,将当前负载数量最少的服务节点确定为目标节点;按照负载均衡的配置规则,还可以确定每一服务节点对应的当前响应速度,将当前响应速度最快的服务节点确定为目标节点。
可选地,在从所有服务节点中确定出目标节点之后,所述方法还包括:
指示根据所述目标出入参,配置所述目标云平台的IP地址、端口信息以及目标节点的权重值。
可选地,本发明指示上游模块,根据所述目标出入参,配置所述目标云平台的IP地址、端口信息以及目标节点的权重值,所述上游模块连接所述目标云平台的API接口,以在云管理平台中创建所述目标云平台。
本发明提供了一种基于微服务应用程序编程接口网关APISIX的多云纳管方法,其中,APISIX是一个高性能、可扩展的微服务应用程序编程接口网关,基于Nginx和Etcd来实现,和传统应用程序编程接口网关相比,APISIX作为微服务请求网关,提供负载平衡、日志记录以及身份验证等功能。而所述多云纳管是一种云计算使用模式,在一个云平台上能够管理多个云资源,用户可操作多个不同云平台的资源池。在云管理平台的多云纳管场景下,本发明打破传统纳管三方云平台的开发流程和方式,引入低代码的思想,将之前人工进行重复代码开发和对接模式转换为可编程式的低代码对接方式。同时在整个纳管流程中,对云平台搭配可扩展、自定义的脚本插件,保持了整个方法和装置的可维护与易用性,从而整体提高了云管理平台对接纳管的开发对接效率,为多云的统一纳管提供了新思路和方案。
图3是本发明提供的云管理平台中云平台创建方法的流程示意图之二,所述服务类型包括计算服务、网络服务以及存储服务;
在确定目标云平台中的服务模块接收到路由转发请求之前,所述方法还包括:
步骤301、调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参。
在步骤301中,所述应用程序编程接口网关包括动态路由模块,本发明在接收到用户请求后,发送原始出入参至动态路由模块,调用动态路由模块对所述原始出入参进行转发,向所述目标云平台中的平台路由模块发送原始出入参。
步骤302、指示所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参,在确定所述原始出入参完成参数校验的情况下,根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参。
在步骤302中,所述应用程序编程接口网关指示所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参,在获取到所述原始出入参后,首先需要对所述原始出入参进行参数校验,校验其完整性以及准确性,并在确定所述原始出入参完成参数校验的情况下,根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参。
可选地,本发明主要进行参数合理性校验及其格式化封装,如果确定所述原始出入参无法完成参数校验,则可以直接返回终止,如有特殊字符则统一进行转义处理,最终将符合目标云平台创建VPC的有效参数封装传递给上游的服务模块。
可选地,所述平台路由模块的装配类型包括计算云主机、虚拟私有云、对象存储以及负载均衡;
所述根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参,包括:
根据所述原始出入参的装配类型,从所述预设装配方式中确定出目标装配方式;
根据所述目标装配方式,转换所述原始出入参为云平台出入参。
可选地,若所述原始出入参的装配类型为计算云主机,则从所述预设装配方式中确定出所述计算云主机对应的目标装配方式,转换所述原始出入参为所述计算云主机对应的云平台出入参;若所述原始出入参的装配类型为虚拟私有云,则从所述预设装配方式中确定出所述虚拟私有云对应的目标装配方式,转换所述原始出入参为所述虚拟私有云对应的云平台出入参;若所述原始出入参的装配类型为对象存储,则从所述预设装配方式中确定出所述对象存储对应的目标装配方式,转换所述原始出入参为所述对象存储对应的云平台出入参;若所述原始出入参的装配类型为负载均衡,则从所述预设装配方式中确定出所述负载均衡对应的目标装配方式,转换所述原始出入参为所述负载均衡对应的云平台出入参。
步骤303、指示封装所述云平台出入参,以获取目标出入参,并指示所述目标云平台中的平台路由模块发送所述目标出入参至所述目标云平台中的服务模块。
在步骤303中,所述应用程序编程接口网关指示封装所述云平台出入参,以获取目标出入参,所述应用程序编程接口网关指示所述目标云平台中的平台路由模块发送所述目标出入参至所述目标云平台中的服务模块,以使得目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参。
图4是本发明提供的云管理平台中云平台创建方法的流程示意图之三,在调用扩展插件模块之前,所述方法还包括:
步骤401、根据初始化、参数重写、响应头、响应体以及日志的编码适配,基于LUA脚本语言生成插件脚本。
在步骤401中,原始插件的内部开发经过需要初始化、参数重写(Rewrite/Access)、响应头(Header_Filter)、响应体(Body_Filter)和日志(Log)等不同阶段的编码适配,云管理平台通过Lua脚本语言进行自定义可扩展插件的开发,基于LUA脚本语言生成插件脚本,插件脚本准备完毕后需要进行插件更新,LUA是一种轻量的脚本开发语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
步骤402、关联所述插件脚本至所述云管理平台的预设容器,以在所述云管理平台中部署所述扩展插件模块。
在步骤402中,所述扩展插件模块主要包括插件开发和插件更新,本发明基于APISIX进行插件的自定义开发,当前APISIX是以容器化形式进行部署,插件的更新关联到两个容器Docker,容器Docker是一个开源的应用容器引擎,包括镜像、容器、仓库。通过对应用组件的封装、分发、部署、运行等生命周期的管理。
可选地,本发明在网关的容器镜像中配置文件“config.yaml”的更新和LUA插件脚本的挂载,然后需要将镜像Dashboard中“schema.json”文件更新重载,“schema.json”内容是声明了所有插件的约束,需要将最新的插件信息同步到镜像Dashboard,才能在页面查看到最新的插件。
可选地,当前多云纳管下有两类插件,一是云管理平台的基于身份识别与访问管理系统IAM的权限认证的全局插件开发,二是对接任一第三方云平台的底层接口的权限统一认证插件的开发,本发明向下对接底层不同的生态平台,每种不同厂商的云平台提供一种可插拔的插件,内部主要负责对三方云平台的计算、存储和网络等相关资源的整合及其接口的权限验证。
图5是本发明提供的云管理平台中云平台创建方法的流程示意图之四,在调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参之前,所述方法还包括:
步骤501、接收来自用户的创建请求,所述创建请求包括用户账号信息、原始出入参的装配类型、平台类型以及URL地址。
在步骤501中,本发明以公有云平台创建网络VPC资源为例,当云管理平台客户端访问URL:“http://10.7.20.46:37410/vpc-aliyun/?Action=CreateVpc&CidrBlock=172.16.0.0/12&EnableIpv6=false&VpcName=gaotest”时,默认需要输入操作资源的具体类型Action、网络的Cidr、资源名称以及是否启用IPV6等基本信息,生成创建请求并发送至应用程序编程接口网关,所述应用程序编程接口网关接收来自用户的创建请求,获取用户账号信息、原始出入参的装配类型、平台类型以及URL地址。
步骤502、调用预设全局路由拦截器过滤所述URL地址,在确定完成所述预设全局路由拦截器的校验后,调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证。
在步骤502中,所述预设全局路由拦截器包括第一拦截模块以及第二拦截模块;
所述调用预设全局路由拦截器过滤所述URL地址,包括:
调用所述第一拦截模块对所述URL地址进行匹配验证,在确定不存在无效访问路径重定向或返回的情况下,调用所述第二拦截模块对所述云管理平台的权限接口以及令牌Token进行校验。
可选地,本发明调用预设全局路由拦截器对URL地址进行拦截校验,经过预设自定义的第一拦截模块以及第二拦截模块实现全局过滤,具体地,所述第一拦截模块进行URL地址匹配验证,无效访问路径重定向或返回,再根据所述第二拦截模块,进行云管理平台的接口权限、令牌Token校验,依托于自定义全局Consumer插件,完成统一用户认证对接IAM后进行路由分发。
可选地,本发明还可以包括其他拦截模块,这些可以根据后续可扩展的其他全局性访问进行需求配置。
可选地,在确定完成所述预设全局路由拦截器的校验后,所述应用程序编程接口网关调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证,所述平台鉴权管理模块负责云管理平台底层API接口的权限校验,主要进行接口角色权限验证和令牌Token的合法性、有效性进行验证。
可选地,目前APISIX网关支持IAM、用户名密码、Jwt用户认证等多种鉴权方式,本发明中所采用的云管理平台采用IAM进行认证,所述平台鉴权管理模块具备统一认证接入能力,本发明可以通过认证用户并完成资源授权的协议(OpenID Connect,OIDC)与管理平台的用户和认证系统进行交互,检验用户是否已登录云管理平台,如已完成登录则进行单点登录,否则重新认证后完成单点登录。
步骤503、在确定鉴权认证通过的情况下,指示发送所述原始出入参的装配类型以及平台类型至所述动态路由模块。
在步骤503中,本发明基于身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证,在确定鉴权认证通过的情况下,所述应用程序编程接口网关指示发送所述原始出入参的装配类型以及平台类型至所述动态路由模块。
步骤504、根据所述原始出入参的平台类型,从预设平台库中确定出与所述平台类型对应的目标云平台,以调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参。
在步骤504中,本发明能够实现不同云平台的多云纳管,故根据所述原始出入参的平台类型,可以确定出需要创建VPC资源的目标云平台,所述应用程序编程接口网关调用所述动态路由模块向所述目标云平台中的平台路由模块发送所述原始出入参,以使得所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参。
图6是本发明提供的云管理平台中云平台创建方法的流程示意图之五,在调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证之后,所述方法还包括:
步骤601、在确定鉴权认证不通过的情况下,接收用户的输入指令,所述输入指令用于指示采用预设鉴权方式进行所述用户账号信息的鉴权认证。
在步骤601中,本发明调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证,所述身份识别与访问管理系统IAM具有单点登录、强大的认证管理、基于策略的集中式授权和审计、动态授权、企业可管理性等功能,通常不采用其他方式进行验证,但在确定鉴权认证不通过的情况下,可以考虑采用其他方式进行验证,但这样的处理方式可能会存在安全风险,故为了保障用户的鉴权稳定性以及安全性,本发明在采用其他验证方式进行鉴权之前,额外增加了预设白名单的先验步骤,从而通过双重验证的方式,既保证了鉴权验证的可靠性,有保证了鉴权验证的多样性。
具体地,在确定鉴权认证不通过的情况下,接收用户的输入指令,所述输入指令用于指示采用预设鉴权方式进行所述用户账号信息的鉴权认证。
步骤602、从所述平台鉴权管理模块中调用预设白名单,所述预设白名单用于确定用户账号信息与所述预设白名单的匹配情况。
在步骤602中,所述预设白名单中存储有允许采用预设鉴权方式进行鉴权认证的所有预设用户账号信息,本发明从所述平台鉴权管理模块中调用预设白名单,用于实现所述用户账号信息的鉴权。
步骤603、在确定所述用户账号信息存在于所述预设白名单中的情况下,生成调用指令。
在步骤603中,在确定所述用户账号信息存在于所述预设白名单中的情况下,即认为所述用户账号信息虽然没有能够通过所述身份识别与访问管理系统IAM的鉴权认证,但同时也属于可被可以鉴权方式认证的用户,即在这样的实施例中,生成调用指令。
步骤604、响应于所述调用指令,调用预设鉴权方式对所述用户账号信息进行鉴权认证。
在步骤604中,本发明为了提供多样化的鉴权认证方式,可以使用包括但不限于用户名密码验证、身份验证机制JWT以及开放平台认证方式Basic Auth的预设鉴权方式。
可选地,在调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证之前,所述方法还包括:
创建并配置消费者信息,添加并配置身份验证及授权协议OpenID Connect的预设插件;
封装所述预设插件至所述身份识别与访问管理系统IAM。
可选地,所述扩展插件模块还包括所述预设插件,所述预设插件用于对所述用户账号信息进行鉴权认证,本发明在整个纳管流程中对云平台搭配可扩展、自定义的脚本插件,将不同插件的适配开发工作进行可视化低代码开发,保持了整个方法的可维护与易用性,从而大大提高了云管理平台对接纳管的开发对接效率,节省了开发成本。
图7是本发明提供的云管理平台中云平台创建系统的架构示意图之一,所述云管理平台中云平台创建系统,包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块;
在确定目标云平台中的服务模块接收到路由转发请求的情况下调用所述扩展插件模块处理所述路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;
所述扩展插件模块用于在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;
根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。
可选地,所述扩展插件模块具备相对独立性,非侵入式的保证了所有从云管理平台接入的云平台具备完整的安全性,提升了接口调用的安全性,提升了系统的安全级别,可以对接已有的权限认证方式,即使当前用身份识别与访问管理系统IAM进行鉴权认证,而在以后若用其他的鉴权认证,也可以直接替换掉在的身份识别与访问管理系统IAM,从而降低维护成本,不需要更换代码逻辑,只需要在插件这一层进行适配即可。
本发明通过可视化的自定义插件开发,简单易用、屏蔽繁琐细节,区别于其他云管平台中,每对接一个厂商需要进行不同插件的适配开发工作,本发明基于APISIX的可插拔式自定义插件,为多云的统一纳管提供了新思路。低代码为:无需编码或通过少量代码就可以快速生成应用程序的开发方式或开发工具,本发明借助于低代码的思想,能够扩展相应的鉴权插件、南向接入插件,动态配置路由策略,实现鉴权统一,北向接口标准化。提供动态路由、自定义插件加载能力,可通过界面动态配置路由策略,无需修改代码,支持插件的自定义开发、加载。该方法和装置具有良好的动态扩展能力。
本发明提供的云管理平台中云平台创建系统,确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。本发明通过在应用程序编程接口网关中扩展插件模块的调用,实现了目标云平台的服务类型对应路由转发路径的确定以及上游转发,进而实现在云管理平台中创建所述目标云平台的网络虚拟私有云资源,提升了云管理平台中不同云平台在进行VPC资源创建时的适配性、可扩展性以及可维护性。
图8是本发明提供的云管理平台中云平台创建系统的架构示意图之二,所述应用程序编程接口网关还包括动态路由模块;
所述动态路由模块用于向所述目标云平台中的平台路由模块发送原始出入参;
指示所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参,在确定所述原始出入参完成参数校验的情况下,根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参;
指示封装所述云平台出入参,以获取目标出入参,并指示所述目标云平台中的平台路由模块发送所述目标出入参至所述目标云平台中的服务模块。
可选地,所述动态路由模块连接所述目标云平台中平台路由模块,其可以被所述应用程序编程接口网关响应以及调用。
可选地,所述应用程序编程接口网关还包括平台鉴权管理模块;
所述平台鉴权管理模块用于实现不同云平台的权限设置以及接口管理;
还用于对用户账号信息进行鉴权认证。
可选地,所述应用程序编程接口网关还包括第三方云平台模块;
所述第三方云平台模块用于对第三方云平台进行接口管理以及URL动态路由的请求处理。
可选地,所述第三方云平台模块主要进行第三方云厂商进行接口管理和请求URL的动态路由功能,可选地,可以支持管理阿里云、腾讯云、深信服等不同的第三方云厂商的维护,主要负责对云平台发送的北向接口进行路由分发处理,同时对三方厂商已经发布的URL的变更保持北向接口的不变,屏蔽了不同厂商之间的接口、出入参及其返回值等的差异化;另外还支持对上游模块进行被动健康检查、URL接口重试等业务逻辑,增强三方云平台系统的可维护和健壮性。
可选地,所述云管理平台中云平台创建系统还包括所有云平台;
所述应用程序编程接口网关通过API接口连接所有云平台。
可选地,所述云管理平台中云平台创建系统还包括云管理平台上层应用,所述云管理平台上层应用包括计算资源、存储资源以及网络资源;
所述应用程序编程接口网关连接所述云管理平台上层应用。
可选地,所述云管理平台中云平台创建系统还包括多云虚拟化模块,所述多云虚拟化模块包括增删改查子模块、API组装模块以及数据模型模块;
所述应用程序编程接口网关通过所述多云虚拟化模块连接所述云管理平台上层应用。
所述云管理平台中云平台创建系统还包括预设全局路由拦截器,所述预设全局路由拦截器包括第一拦截模块以及第二拦截模块;
所述第一拦截模块用于对URL地址进行匹配验证;
所述第二拦截模块用于对云管理平台的权限接口以及令牌Token进行校验;
所述预设全局路由拦截器连接所述应用程序编程接口网关。
图9是本发明提供的云管理平台中云平台创建系统的架构示意图之三,在多云纳管的场景中,整个架构可以分为三个核心模块,分别是平台鉴权管理模块、扩展插件模块以及第三方云平台模块。
为了更好的描述本发明中的所述应用程序编程接口网关的具体工作原理,本发明实施例包括:
云管理平台访问第三方云平台资源,预设全局路由拦截器对上述地址进行拦截校验,经过内嵌APISIX的自定义插件(第一拦截模块以及第二拦截模块)依次全局顺序加载并过滤,第一拦截模块进行URL地址匹配验证,无效访问路径重定向或返回;第二拦截模块进行了云管理平台的接口权限、令牌Token校验,依托于自定义全局Consumer插件,完成统一用户认证对接IAM后进行路由分发。
路由分发后,如果权限校验通过,则继续路由到云主机计算、安全组、虚拟私有云、对象存储或负载均衡相应的平台路由模块。在进入平台路由模块的具体业务应用前,主要进行参数合理性校验及其格式化封装。
平台路由模块处理完毕后,相同一组Route被路由分配到关联的服务应用上,本发明预先自定义三方云平台的Serverless插件,完成权限校验以及路由转发,最终将请求接口及其数据统一关联到上游模块,上游模块可以对给定的多个服务节点按照配置规则进行负载均衡。
本发明借助于低代码的思想,能够扩展相应的鉴权插件、南向接入插件,动态配置路由策略,实现鉴权统一,北向接口标准化。提供动态路由、热插件加载能力,可通过界面动态配置路由策略,无需修改代码,支持插件的自定义开发、加载,具有良好的动态扩展能力。
图10是本发明提供的云管理平台中云平台创建装置的结构示意图,所述云管理平台中云平台创建装置,所述云管理平台包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块,所述应用程序编程接口网关包括:确定单元1010,所述确定单元1010用于确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参,所述确定单元1010的工作原理可以参考前述步骤201,在此不予赘述。
所述云管理平台中云平台创建装置还包括调用单元1020,所述调用单元1020用于调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径,所述调用单元1020的工作原理可以参考前述步骤202,在此不予赘述。
所述云管理平台中云平台创建装置还包括指示单元1030,所述指示单元1030用于根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台,所述指示单元1030的工作原理可以参考前述步骤203,在此不予赘述。
图11是本发明提供的电子设备的实体结构示意图。如图11所示,该电子设备可以包括:处理器(processor)1110、通信接口(Communications Interface)1120、存储器(memory)1130和通信总线1140,其中,处理器1110,通信接口1120,存储器1130通过通信总线1140完成相互间的通信。处理器1110可以调用存储器1130中的逻辑指令,以执行上述各方法所提供的云管理平台中云平台创建方法,该方法包括:确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。
此外,上述的存储器1130中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的云管理平台中云平台创建方法,该方法包括:确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的云管理平台中云平台创建方法,该方法包括:确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (19)
1.一种云管理平台中云平台创建方法,其特征在于,所述云管理平台包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块;
所述云管理平台中云平台创建方法包括:
确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;
调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;
根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台;
所述服务类型包括计算服务、网络服务以及存储服务;
在确定目标云平台中的服务模块接收到路由转发请求之前,所述方法还包括:
调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参;
指示所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参,在确定所述原始出入参完成参数校验的情况下,根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参;
指示封装所述云平台出入参,以获取目标出入参,并指示所述目标云平台中的平台路由模块发送所述目标出入参至所述目标云平台中的服务模块。
2.根据权利要求1所述的云管理平台中云平台创建方法,其特征在于,所述平台路由模块的装配类型包括计算云主机、虚拟私有云、对象存储以及负载均衡;
所述根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参,包括:
根据所述原始出入参的装配类型,从所述预设装配方式中确定出目标装配方式;
根据所述目标装配方式,转换所述原始出入参为云平台出入参。
3.根据权利要求1所述的云管理平台中云平台创建方法,其特征在于,在调用扩展插件模块之前,所述方法还包括:
根据初始化、参数重写、响应头、响应体以及日志的编码适配,基于LUA脚本语言生成插件脚本;
关联所述插件脚本至所述云管理平台的预设容器,以在所述云管理平台中部署所述扩展插件模块。
4.根据权利要求1所述的云管理平台中云平台创建方法,其特征在于,在指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块之后,所述方法还包括:
按照负载均衡的配置规则,从所有服务节点中确定出目标节点。
5.根据权利要求4所述的云管理平台中云平台创建方法,其特征在于,在从所有服务节点中确定出目标节点之后,所述方法还包括:
指示根据所述目标出入参,配置所述目标云平台的IP地址、端口信息以及目标节点的权重值。
6.根据权利要求1所述的云管理平台中云平台创建方法,其特征在于,在调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参之前,所述方法还包括:
接收来自用户的创建请求,所述创建请求包括用户账号信息、原始出入参的装配类型、平台类型以及URL地址;
调用预设全局路由拦截器过滤所述URL地址,在确定完成所述预设全局路由拦截器的校验后,调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证;
在确定鉴权认证通过的情况下,指示发送所述原始出入参的装配类型以及平台类型至所述动态路由模块;
根据所述原始出入参的平台类型,从预设平台库中确定出与所述平台类型对应的目标云平台,以调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参。
7.根据权利要求6所述的云管理平台中云平台创建方法,其特征在于,所述预设全局路由拦截器包括第一拦截模块以及第二拦截模块;
所述调用预设全局路由拦截器过滤所述URL地址,包括:
调用所述第一拦截模块对所述URL地址进行匹配验证,在确定不存在无效访问路径重定向或返回的情况下,调用所述第二拦截模块对所述云管理平台的权限接口以及令牌Token进行校验。
8.根据权利要求6所述的云管理平台中云平台创建方法,其特征在于,在调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证之后,所述方法还包括:
在确定鉴权认证不通过的情况下,接收用户的输入指令,所述输入指令用于指示采用预设鉴权方式进行所述用户账号信息的鉴权认证;
从所述平台鉴权管理模块中调用预设白名单,所述预设白名单用于确定用户账号信息与所述预设白名单的匹配情况;
在确定所述用户账号信息存在于所述预设白名单中的情况下,生成调用指令;
响应于所述调用指令,调用预设鉴权方式对所述用户账号信息进行鉴权认证;
所述预设白名单中存储有允许采用预设鉴权方式进行鉴权认证的所有预设用户账号信息;
所述预设鉴权方式包括用户名密码验证、身份验证机制JWT以及开放平台认证方式Basic Auth。
9.根据权利要求6所述的云管理平台中云平台创建方法,其特征在于,在调用平台鉴权管理模块的身份识别与访问管理系统IAM对所述用户账号信息进行鉴权认证之前,所述方法还包括:
创建并配置消费者信息,添加并配置身份验证及授权协议OpenID Connect的预设插件;
封装所述预设插件至所述身份识别与访问管理系统IAM。
10.一种云管理平台中云平台创建系统,其特征在于,包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块;
在确定目标云平台中的服务模块接收到路由转发请求的情况下调用所述扩展插件模块处理所述路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;
所述扩展插件模块用于在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;
根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台;所述应用程序编程接口网关还包括动态路由模块;
所述动态路由模块用于向所述目标云平台中的平台路由模块发送原始出入参;
指示所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参,在确定所述原始出入参完成参数校验的情况下,根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参;
指示封装所述云平台出入参,以获取目标出入参,并指示所述目标云平台中的平台路由模块发送所述目标出入参至所述目标云平台中的服务模块。
11.根据权利要求10所述的云管理平台中云平台创建系统,其特征在于,所述应用程序编程接口网关还包括平台鉴权管理模块;
所述平台鉴权管理模块用于实现不同云平台的权限设置以及接口管理;
还用于对用户账号信息进行鉴权认证。
12.根据权利要求10所述的云管理平台中云平台创建系统,其特征在于,所述应用程序编程接口网关还包括第三方云平台模块;
所述第三方云平台模块用于对第三方云平台进行接口管理以及URL动态路由的请求处理。
13.根据权利要求10所述的云管理平台中云平台创建系统,其特征在于,还包括所有云平台;
所述应用程序编程接口网关通过API接口连接所有云平台。
14.根据权利要求13所述的云管理平台中云平台创建系统,其特征在于,还包括云管理平台上层应用,所述云管理平台上层应用包括计算资源、存储资源以及网络资源;
所述应用程序编程接口网关连接所述云管理平台上层应用。
15.根据权利要求14所述的云管理平台中云平台创建系统,其特征在于,还包括多云虚拟化模块,所述多云虚拟化模块包括增删改查子模块、API组装模块以及数据模型模块;
所述应用程序编程接口网关通过所述多云虚拟化模块连接所述云管理平台上层应用。
16.根据权利要求10所述的云管理平台中云平台创建系统,其特征在于,还包括预设全局路由拦截器,所述预设全局路由拦截器包括第一拦截模块以及第二拦截模块;
所述第一拦截模块用于对URL地址进行匹配验证;
所述第二拦截模块用于对云管理平台的权限接口以及令牌Token进行校验;
所述预设全局路由拦截器连接所述应用程序编程接口网关。
17.一种云管理平台中云平台创建装置,其特征在于,所述云管理平台包括应用程序编程接口网关,所述应用程序编程接口网关包括扩展插件模块,所述应用程序编程接口网关包括:
确定单元,所述确定单元用于确定目标云平台中的服务模块接收到路由转发请求,所述路由转发请求包括目标云平台下的目标出入参;
调用单元,所述调用单元用于调用扩展插件模块,在确定所述目标云平台通过权限验证的情况下,根据所述目标出入参的服务类型确定所述服务类型对应的路由转发路径;
指示单元,所述指示单元用于根据所述路由转发路径,指示所述服务模块发送所述目标出入参至所述目标云平台的上游模块,以在云管理平台中创建所述目标云平台;
所述服务类型包括计算服务、网络服务以及存储服务;
在所述确定目标云平台中的服务模块接收到路由转发请求之前,所述调用单元还用于:
调用动态路由模块向所述目标云平台中的平台路由模块发送原始出入参;
指示所述目标云平台中平台路由模块接收来自所述动态路由模块的所述原始出入参,在确定所述原始出入参完成参数校验的情况下,根据所述目标云平台对应的预设装配方式,转换所述原始出入参为云平台出入参;
指示封装所述云平台出入参,以获取目标出入参,并指示所述目标云平台中的平台路由模块发送所述目标出入参至所述目标云平台中的服务模块。
18.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至9任一项所述云管理平台中云平台创建方法。
19.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述云管理平台中云平台创建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311619100.8A CN117319399B (zh) | 2023-11-30 | 2023-11-30 | 云管理平台中云平台创建方法、装置、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311619100.8A CN117319399B (zh) | 2023-11-30 | 2023-11-30 | 云管理平台中云平台创建方法、装置、系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117319399A CN117319399A (zh) | 2023-12-29 |
CN117319399B true CN117319399B (zh) | 2024-02-23 |
Family
ID=89285240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311619100.8A Active CN117319399B (zh) | 2023-11-30 | 2023-11-30 | 云管理平台中云平台创建方法、装置、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117319399B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445869A (zh) * | 2018-09-17 | 2019-03-08 | 山东中创软件商用中间件股份有限公司 | 一种跨云适配的微服务管理方法、装置和存储介质 |
KR20210116005A (ko) * | 2020-03-17 | 2021-09-27 | 주식회사 크로센트 | 클라우드 기반 플랫폼 구축 시스템 및 어플리케이션 서비스 제공 방법 |
CN115934305A (zh) * | 2021-08-31 | 2023-04-07 | 中国移动通信集团浙江有限公司 | 云平台的管理方法、服务器及计算机可读存储介质 |
CN116627595A (zh) * | 2023-06-29 | 2023-08-22 | 济南浪潮数据技术有限公司 | 一种虚拟机创建方法及相关组件 |
-
2023
- 2023-11-30 CN CN202311619100.8A patent/CN117319399B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445869A (zh) * | 2018-09-17 | 2019-03-08 | 山东中创软件商用中间件股份有限公司 | 一种跨云适配的微服务管理方法、装置和存储介质 |
KR20210116005A (ko) * | 2020-03-17 | 2021-09-27 | 주식회사 크로센트 | 클라우드 기반 플랫폼 구축 시스템 및 어플리케이션 서비스 제공 방법 |
CN115934305A (zh) * | 2021-08-31 | 2023-04-07 | 中国移动通信集团浙江有限公司 | 云平台的管理方法、服务器及计算机可读存储介质 |
CN116627595A (zh) * | 2023-06-29 | 2023-08-22 | 济南浪潮数据技术有限公司 | 一种虚拟机创建方法及相关组件 |
Also Published As
Publication number | Publication date |
---|---|
CN117319399A (zh) | 2023-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10356612B2 (en) | Method of authenticating a terminal by a gateway of an internal network protected by an access security entity providing secure access | |
CN111290865A (zh) | 一种服务调用方法、装置、电子设备和存储介质 | |
CN114208112A (zh) | 用于可扩展网络服务的连接池 | |
CN109510846A (zh) | Api调用系统、方法、装置、电子设备及存储介质 | |
WO2016173199A1 (zh) | 一种移动应用单点登录方法及装置 | |
WO2017016252A1 (zh) | 令牌生成并认证的方法及认证服务器 | |
CN110049048B (zh) | 一种政务公共服务的数据访问方法、设备及可读介质 | |
US11392675B2 (en) | Request authorization using recipe-based service coordination | |
CN110365701B (zh) | 客户终端设备的管理方法、装置、计算设备及存储介质 | |
CN109379336A (zh) | 一种统一认证方法、分布式系统和计算机可读存储介质 | |
CN109617753B (zh) | 一种网络平台管理方法、系统及电子设备和存储介质 | |
CN106844489A (zh) | 一种文件操作方法、装置以及系统 | |
CN109726531A (zh) | 一种基于区块链智能合约的营销终端安全管控方法 | |
CN109962892A (zh) | 一种登录应用的认证方法及客户端、服务器 | |
Rahman et al. | Blockchain-enabled SLA compliance for crowdsourced edge-based network function virtualization | |
CN117319399B (zh) | 云管理平台中云平台创建方法、装置、系统、设备及介质 | |
WO2023082833A1 (en) | Using device-bound credentials for enhanced security of authentication in native applications | |
CN112953892B (zh) | 第三方系统的访问认证方法和装置 | |
CN116018580B (zh) | 用于跨云壳层的实例持久化数据的技术 | |
US20220353109A1 (en) | Artificial intelligence integration of third-party software into large-scale digital platforms | |
Tu et al. | A blockchain-based user identity authentication method for 5G | |
Smith | DevOps for the Desperate: A Hands-On Survival Guide | |
Berdonces Bonelo | OpenID Connect Client Registration API for Federated Cloud Platforms | |
CN115348168B (zh) | 一种区块链网络的部署方法及装置 | |
CN115001701B (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 |