一种基于API网关的私有云架构及其数据处理方法与流程

文档序号:14914804发布日期:2018-07-11 00:26阅读:364来源:国知局

本申请涉及云计算技术领域,特别是涉及一种基于API网关的私有云架构及其数据处理方法。



背景技术:

私有云(Private Clouds),也叫做内部云(internal cloud)或企业云(corporate cloud),是为一个客户单独使用而构建的,可以提供对数据安全性和服务质量最有效的控制。

在私有云系统中,通常需要管理多个相互隔离的底层虚拟化资源,由于私有云系统采用分布式部署,底层的核心代码分别在多个相互隔离的底层虚拟化资源中存在相同的备份。当Web容器下发rest请求时,该rest请求可能会被随机的分配至任意一个底层虚拟化资源,如果该底层虚拟化资源与rest请求不匹配,则不能完成相应的操作。例如,在私有云系统中存在相互隔离的底层虚拟化资源A和B,Web容器下发的rest请求需要在底层虚拟化资源A中创建一个虚拟机,如果系统将该rest请求分配给了底层虚拟化资源B,则无法完成该rest请求对应的操作。

针对上述问题,现有技术常用的方法为针对每一个底层虚拟化资源配置一套对应的私有云系统,但是该方法操作比较繁琐,无法实现通过统一的私有云界面管理多个相互隔离的底层虚拟化资源。



技术实现要素:

本申请实施例中提供了一种基于API网关的私有云架构及其数据处理方法,以解决现有技术中无法实现通过统一的私有云界面管理多个相互隔离的底层虚拟化资源的问题。

第一方面,本申请实施例提供了一种基于API网关的私有云架构,包括:Web容器、API网关和两个或两个以上相互隔离的底层虚拟化资源,所述API网关部署在所述Web容器和所述底层虚拟化资源之间;

所述API网关用于接收所述Web容器发送的rest请求,所述rest请求中包含底层资源标识;

所述API网关还用于根据所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源。

可选地,根据所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源,具体包括:

根据所述rest请求中携带的用户信息进行用户身份和权限校验;

若校验成功,则根据所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源。

可选地,根据所述rest请求中携带的用户信息进行用户身份和权限校验之后,还包括:

若校验失败,则返回相应的提示信息。

第二方面,本申请实施例提供了一种基于API网关的私有云架构的数据处理方法,应用于API网关,所述方法包括:

接收所述Web容器发送的rest请求,所述rest请求中包含底层资源标识;

根据所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源。

可选地,根据所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源,具体包括:

根据所述rest请求中携带的用户信息进行用户身份和权限校验;

若校验成功,则根据所述所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源。

可选地,根据所述rest请求中携带的用户信息进行用户身份和权限校验之后,还包括:

若校验失败,则返回相应的提示信息。

采用本申请实施例所提供的技术方案,可以实现通过统一的私有云界面管理多个相互隔离的底层虚拟化资源。也就是说,屏蔽了底层环境的差异特性,实现了管理底层相互隔离虚拟化环境的功能,对于用户来说不需要关注底层太多的细节,就可以完成底层虚拟化资源的虚拟机创建,网络管理,存储管理等功能。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种基于API网关的私有云架构的结构示意图;

图2为本申请实施例提供的一种基于API网关的私有云架构的数据处理方法的流程示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

在传统的私有云架构中,Web容器与底层虚拟化资源直接耦合,以两个相互隔离的底层虚拟化资源A和B为例,由于私有云系统采用分布式部署,因此底层的核心代码在底层虚拟化资源A和B中存在相同的备份。当Web容器下发rest请求时,该rest请求可能会被随机的分配至底层虚拟化资源A或B,导致部分rest请求无法得到相应的响应。例如,Web容器下发的rest请求需要在底层虚拟化资源A中创建一个虚拟机,如果系统将该rest请求分配给了底层虚拟化资源B,则无法完成该rest请求对应的操作。

针对上述缺陷,现有技术通常的做法为针对每一个底层虚拟化资源配置一套单独的私有云系统,即为底层虚拟化资源A和B分别配置一套单独的私有云系统。但是该配置方式繁琐复杂,无法通过统一的私有云界面对多个相互隔离的底层虚拟化资源的操作。

基于此,本申请实施例提供了一种基于API网关的私有云架构,如图1所示,该私有云架构在所述Web容器和所述底层虚拟化资源之间还部署有API网关。所述API网关用于接收到所述Web容器发送的rest请求,所述rest请求中包含底层资源标识,在接收到所述rest请求后,根据所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源。也就是说,API网关可以根据底层资源标识来判断将该rest请求发送到哪个底层的核心服务中去。

例如,Web容器下发的rest请求需要在底层虚拟化资源A中创建一个虚拟机,则在该rest请求中包含底层虚拟化资源A的标识信息,当API网关接收到该rest请求后,根据该rest请求中的标识信息,将该rest请求分配至底层虚拟化资源A。

采用本申请实施例所提供的技术方案,可以实现通过统一的私有云界面管理多个相互隔离的底层虚拟化资源。也就是说,屏蔽了底层环境的差异特性,实现了管理底层相互隔离虚拟化环境的功能,对于用户来说不需要关注底层太多的细节,就可以完成底层虚拟化资源的虚拟机创建,网络管理,存储管理等功能。

在一些应用环境中,还需要对rest请求中的用户信息进行用户身份和权限校验。本申请实施例将用户身份和权限校验功能集成到API网关中,具体为,所述rest请求中还包括用户信息,当API网关接收到rest请求后,首先根据rest请求中携带的用户信息进行用户身份和权限校验;若校验成功,则根据所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源,若校验失败,则返回相应的提示信息。

在本申请实施例中,当用户身份和权限校验策略需要变更时,仅需要在API网关中调整即可,而不需要针对每个环境分别进行调整,便于后期的维护和管理。

在上述实施例的基础上,本申请还提供了一种数据处理方法。图2为本申请实施例提供的一种基于API网关的私有云架构的数据处理方法的流程示意图,该方法应用于API网关,如图2所示,主要包括以下步骤。

步骤S201:接收所述Web容器发送的rest请求,所述rest请求中包含底层资源标识;

步骤S202:根据所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源。

在一种可选实施例中,所述步骤S202具体包括:

步骤S301:根据所述rest请求中携带的用户信息进行用户身份和权限校验;

步骤S302:若校验成功,则根据所述所述底层资源标识将所述rest请求分配至相应的底层虚拟化资源。

在一种可选实施例中,所述步骤S202具体还包括:

步骤S303:若校验失败,则返回相应的提示信息。

采用本申请实施例所提供的技术方案,可以实现通过统一的私有云界面管理多个相互隔离的底层虚拟化资源。也就是说,屏蔽了底层环境的差异特性,实现了管理底层相互隔离虚拟化环境的功能,对于用户来说不需要关注底层太多的细节,就可以完成底层虚拟化资源的虚拟机创建,网络管理,存储管理等功能。

具体实现中,本申请还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本申请提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。

本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。

本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。

以上所述的本申请实施方式并不构成对本申请保护范围的限定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1