配置资源的方法及其网络设备与流程

文档序号:11233902阅读:469来源:国知局
配置资源的方法及其网络设备与流程

本发明涉及通信领域,更具体地,涉及一种云计算领域资源配置的方法及其网络设备。



背景技术:

随着技术发展,云计算的应用越来越普遍,大量的应用需要部署到云计算服务提供的虚拟资源上,以达到节省设备成本,高效运维的目的。

对于拓扑结构复杂的应用,例如电信业务应用等,往往由多个功能模块组成,每个功能模块负责各自专长的领域。应用各个模块的信息安全要求往往不一致,因此在实际部署时,用户会要求将各个模块部署在不同的网络安全域中,安全域之间配置防火墙,以便对跨域的信息流量进行控制。

当这类结构复杂的应用,部署在云计算环境上时,同样需要进行安全域的划分和跨域访问权限的配置,以达到信息安全要求。

基础设施即服务(英文:infrustructureasaservice,简写:iaas)是提供虚拟资源的云计算服务形式。作为一种服务,iaas为租户提供虚拟资源服务能力,租户可以从iaas中获取虚拟资源,其中,虚拟资源是指采用虚拟化技术,将物理资源划分成多个可被租户使用的独立的部分,这些部分具备原物理资源所有的对用户有效的特性,这些划分出来的资源成为“虚拟资源”。

为确保各个租户彼此不受干扰的使用虚拟资源,iaas以租户为单位,进行资源隔离。在租户隔离下,租户a只能使用iaas的接口操作属于a自己的虚拟资源,而无法操作其他租户的虚拟资源。

iaas同时可以为租户提供网络资源,并通过网络资源的配置实现网络访问控制,其中,网络资源是虚拟交换机、虚拟网络或者安全组等由iaas产生并管理的、用于网络组成和控制的虚拟资源。例如,openstack云计算管理平台提供了安全组(securitygroup),安全组可配置虚拟机(英文:virtualmachine,简写:vm)流入和流出的流量控制策略,在同一个安全组中的虚拟机可以彼此通过网络进行访问,而跨安全组的网络访问受安全组的流量控 制策略约束。因此,租户可通过创建不同的安全组,实现安全域的划分。

由于iaas提供的虚拟资源隔离机制是在租户之间的,虽然处于同一租户下不同安全组内的vm之间,能够进行网络资源的流量控制,但是处于同一租户下某一安全组内的vm依然可以通过管理网络调用iaas的接口,操作同一租户下其他安全组的虚拟资源,因此,存在iaas虚拟资源调用的安全隐患。

在云计算场景下,应用期望安全域之间不仅仅能够进行网络资源的流量控制,还需要进行虚拟资源的隔离。



技术实现要素:

本发明实施例提供一种云环境下配置资源的方法及网络设备,能够实现跨安全域的虚拟资源隔离。

第一方面,提供一种云环境下配置资源的方法,包括:确定目标应用的m个安全域,以及所述m个安全域与所述目标应用的n个模块之间存在的第一映射关系,其中,m≤n,n为整数,m为大于1的整数;向基础设施即服务iaas层设备发送第一请求消息,所述第一请求消息用于请求所述iaas层设备创建所述m个安全域中每个安全域对应的一个iaas租户,得到m个iaas租户;接收所述iaas层设备发送的第一响应消息,所述第一响应消息中携带所述m个安全域与所述m个iaas租户之间存在的第二映射关系;根据所述第一映射关系和所述第二映射关系,确定所述n个模块与所述m个iaas租户之间存在的第三映射关系;请求所述iaas层设备根据所述第三映射关系,使用所述n个模块中第i个模块对应的iaas租户,为所述第i个模块分配虚拟机资源,其中,1≤i≤n。

应理解,第一请求消息请求iaas层设备创建m个iaas租户的过程,也可以说是通过调用iaas层设备的接口创建m个iaas租户的过程。

还应理解,使用n个模块中第i个模块对应的iaas租户,为第i个模块分配虚拟机资源是指,在部署系统调用iaas接口申请虚拟机资源时,需要传递iaas租户的身份认证数据,因此利用第i个模块对应的iaas租户的身份认证数据创建的vm资源即使用第i个模块对应的iaas租户,为第i个模块分配虚拟机资源。

本发明实施例通过将应用划分于至少两个安全域上,在该至少两个安全 域中的每个安全域上创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟机资源,由此,上述应用划分在在不同安全域上的不同模块之间能够实现虚拟资源的隔离。

结合第一方面,在第一方面的第一种可能的实现方式中,所述请求所述iaas层设备根据所述第三映射关系,使用所述n个模块中第i个模块对应的iaas租户,为所述第i个模块分配虚拟机资源,包括:确定所述m个安全域对应的m个安全组,所述m个安全域与所述m个安全组之间存在一一对应的第四映射关系;根据所述第一映射关系和所述第四映射关系,确定所述第i个模块所属的安全组;向所述iaas层设备发送第二请求消息,所述第二请求消息用于请求所述iaas层设备将所述第i个模块所属的安全组配置为所述第i个模块的虚拟机资源的允许访问安全组。

结合第一方面及其上述实现方式,在第一方面的第二种可能的实现方式中,所述确定所述m个安全域对应的m个安全组,包括:向所述iaas层设备发送第三请求消息,所述第三请求消息用于请求所述iaas层设备创建所述m个安全域中每个安全域对应一个安全组,得到所述m个安全组;接收所述iaas层设备发送的第二响应消息,所述第二响应消息中携带所述m个安全域与所述m个安全组之间存在第三映射关系。

结合第一方面及其上述实现方式,在第一方面的第三种可能的实现方式中,所述方法还包括:根据所述m个安全域与所述m个iaas租户之间存在的第二映射关系,以及所述m个安全域与所述m个安全组存在的第四映射关系,确定所述m个iaas租户与所述m个安全组之间存在的第五映射关系;向所述iaas层设备发送第四请求消息,所述第四请求消息用于请求所述iaas层设备根据所述第五映射关系,配置所述m个安全组中的第j个安全组为所述m个租户的第j个iaas租户使用,其中,1≤j≤m。

应理解,配置所述第j个安全组为第j个iaas租户使用是指,为第j个租户开通第j个安全组的使用权限。

结合第一方面及其上述实现方式,在第一方面的第四种可能的实现方式中,所述确定目标应用的m个安全域,以及所述m个安全域与所述目标应用的n个模块之间存在的第一映射关系,包括:从所述目标应用的应用设计模板中,获取所述m个安全域中每个安全域的标识信息;从所述目标应用的应用设计模板中,获取所述n个模块中每个模块的标识信息,以及获取所 述n个模块中每个模块对应的安全域的标识信息;根据所述m个安全域中每个安全域的标识信息和所述n个模块中每个模块对应的安全域的标识信息,确定所述m个安全域与n个模块之间存在的所述第一映射关系。

第二方面,提供一种云环境下配置虚拟资源的方法,包括:接收部署设备发送的第一请求消息,所述第一请求消息中携带目标应用的m个安全域中每个安全域的标识信息,其中,m为大于1的整数;根据所述第一请求消息,创建所述m个安全域中每个安全与对应的一个iaas租户,得到m个iaas租户以及所述m个iaas租户与所述m个安全域之间存在的第一映射关系;向所述部署设备返回第一响应消息,所述第一响应消息中携带所述第一映射关系。

本发明实施例通过将应用划分于至少两个安全域上,在该至少两个安全域中的每个安全域创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟机资源,由此,创建的应用在不同安全域之间能够实现的虚拟资源的隔离,也就实现了不同安全域上的模块之间的虚拟资源的隔离。

结合第二方面,在第二方面的第一种可能的实现方式中,上述方法还包括:接收所述部署设备发送的第二请求消息,并根据所述第二请求消息使用所述目标应用包括的n个模块中的第i个模块对应的iaas租户,为所述第i个模块分配虚拟机资源,其中,所述第二请求消息中携带所述n个模块与所述m个iaas租户之间存在的的第二映射关系,1≤i≤n,m≤n,n为整数。

结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述在为所述第i个模块分配虚拟机资源之前,所述方法还包括:接收所述部署设备发送的第三请求消息,并根据所述第三请求消息创建所述m个安全域中每个安全域对应的一个安全组,得到m个安全组以及所述m个安全组与所述m个安全域之间存在第三映射关系;向所述部署设备发送第二响应消息,所述第二响应消息中携带所述m个安全域与所述m个安全组之间存在第三映射关系。

结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述为所述第i个模块分配虚拟机资源,包括:接收所述部署设备发送的第四请求消息,并根据所述第四请求消息将所述第i个 模块所属的安全组配置为所述第i个模块的虚拟机资源的允许访问安全组,其中,所述第四请求消息中携带所述m个安全组与所述n个模块之间存在的第四映射关系。

结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述方法还包括:接收所述部署设备发送第五请求消息,并根据所述第五请求消息配置所述m个安全组中的第j个安全组为所述m个租户的第j个iaas租户使用,其中,所述第四请求消息中包括所述m个安全组与所述m个iaas租户之间存在的第五映射关系,1≤j≤m。

本发明实施例通过将应用划分于至少两个安全域上,在该至少两个安全域中的每个安全域创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟机资源,进一步地,通过为每个安全域对应的iaas租户创建相应的安全组,由此,创建的应用不仅能够在不同安全域之间能够实现的虚拟资源的隔离,也能够实现不同安全组之间的网络流量控制。

第三方面,提供了一种网络设备,包括:确定单元、创建单元和接收单元,所述网络设备用于执行上述第一方面或第一方面的任一可能的实现方式中的方法。

第四方面,提供了一种网络设备,包括:接收单元、创建单元和发送单元,所述网络设备用于执行上述第二方面或第二方面的任一可能的实现方式中的方法。

第五方面,提供了一种装置,包括:处理器、接收器、发送器和存储器,所述处理器和所述存储器通过总线系统相连,所述存储器用于存储指令,所述处理器用于执行该存储器存储的指令,以控制所述接收器接收信号、所述发射器发送信号,使得所述装置执行上述第一方面或第一方面的任一可能的实现方式中的方法。

第六方面,提供了一种装置,包括:处理器、存储器、接收器和发送器,所述处理器、所述存储器和所述接收器通过总线系统相连,所述存储器用于存储指令,所述处理器用于执行该存储器存储的指令,以控制所述接收器接收信号、所述发射器发送信号,,使得所述装置执行上述第二方面或第二方面的任一可能的实现方式中的方法。

第七方面,提供了一种计算机可读介质,用于存储计算机程序,该计算 机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。

第八方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第二方面或第二方面的任意可能的实现方式中的方法的指令。

附图说明

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

图1是本发明实施例的系统架构的示意性框图。

图2是现有应用部署的一个实施例的示意性框图。

图3是本发明一个实施例的配置资源的方法示意性框图。

图4是本发明应用部署的一个实施例的示意性框图。

图5是本发明一个实施例的应用设计模板的数据结构示意图。

图6是本发明实施例的资源配置的方法的交互流程图。

图7是本发明一个实施例的资源配置的示意性框图。

图8是本发明一个实施例的网络设备的示意性框图。

图9是本发明另一个实施例的网络设备的示意性框图。

图10是本发明一个实施例的网络设备的示意性装置图。

图11是本发明另一个实施例的网络设备的示意性装置图。

具体实施方式

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

图1是本发明实施例的系统架构的示意性框图。

如图1所述,该系统架构包括部署系统110和基础设施即服务系统120,其中部署系统110为用户部署应用提供交互界面,并读取应用设计文件中的 设计数据,调用基础设施即服务120系统(例如,openstack架构)中的接口完成应用所需的资源的创建和配置,包括使用iaas的安全组资源,完成业务安全域的划分。

其中,部署系统110需要通过获取应用设计文件中的设计数据,该应用设计文件需要借助设计工具,为用户进行应用设计提供交互界面,通过该应用设计,用户可进行应用安全域的设计;并将该设计输入到应用设计文件中保存。

iaas层设备的应用部署是由部署系统根据应用设计,调度驱动iaas层设备及周边模块一系列的接口完成资源的申请配置、应用软件的部署等操作。因此实现本发明,需要应用设计、应用部署调度等多个环节相互配合。

应理解,云计算(英文:cloudcomputing)是一种从服务提供商获取计算能力来使用的计算方式,提供计算能力所需的计算、存储、网络资源是虚拟的;虚拟机为云计算服务提供的计算节点;安全域(英文:securityzone)是指同一系统内有相同的安全保护需求,相互信任,并具有相同的安全访问控制和边界控制策略的子网或网络,且相同的网络安全域共享一样的安全策略,广义可理解为具有相同业务要求和安全要求的it系统要素的集合,在不同的安全域之间需要设置防火墙以进行安全保护;防火墙(英文:firewall)是一项协助确保信息安全的装置,会依照特定的规则,允许或者限制传输的资料通过;租户(英文tenant)是指在云计算环境中,通过云计算服务接口使用云计算提供的各类资源的用户;应用(英文:application)是指是指使用云计算提供的网络、存储、计算等资源,建立的可对外提供一定能力的软件系统;应用由一系列运行了软件实例的计算节点组成,各个节点彼此进行网络通信;安全组为openstack云计算管理平台中,用于对一个安全域下进行网络流量控制区域管理的虚拟资源,可配置流入或流出流量的控制策略,安全组可以归属于某个租户,通常情况下,安全域和安全组是一一对应的。

图2是应用部署的一个实施例的示意性框图。

如图2所示,应用a包括两个模块,分别为模块一和模块二,其中,模块一位于安全域a,对应于安全组a,模块二位于安全域b,对应于安全组b,其中模块一和模块二的功能都是由多个虚拟机vm实现,模块一中的vm和模块二中的vm通过配置可访问的安全组标识,实现了模块一和模块二之间跨安全组的网络流量控制。

然而,该应用a归属于租户a,由于安全域a和安全域b都是由租户a创建的,因此该应用中在iaas层的虚拟资源同属于一个租户a,因此,跨安全组的虚拟资源是无法隔离的。

图3是本发明一个实施例的配置资源的方法示意性框图,该方法的执行主体可以为部署系统,如图3所示,该方法300包括:

步骤310,部署系统确定目标应用的m个安全域,以及该m个安全域与该目标应用的n个模块之间存在的第一映射关系,其中,m≤n,n为整数,m为大于1的整数。

具体地,目标应用划分在m个安全域中,而目标应用包括的n个模块与m个安全域存在第一映射关系,也就是说,一个或多个模块位于一个安全域当中,获取目标应用的方式可以通过部署系统的本地存储中获取,也可以通过用户部署目标应用的方式获取,本发明不限于此。

作为本发明一个实施例,确定目标应用的m个安全域,以及m个安全域与所述目标应用的n个模块之间存在的第一映射关系,包括:从目标应用的应用设计模板中,获取m个安全域中每个安全域的标识信息;从目标应用的应用设计模板中,获取n个模块中每个模块的标识信息,以及获取n个模块中每个模块对应的安全域的标识信息;根据m个安全域中每个安全域的标识信息和n个模块中每个模块对应的安全域的标识信息,确定m个安全域与n个模块之间存在的所述第一映射关系。

具体地,用户向部署系统输入目标应用的应用设计,部署系统通过该目标应用的应用设计,获取第一映射关系。该目标应用的应用设计中包括:该目标应用的应用标识、n个模块的列表以及m个安全域的列表,其中,该n个模块中第i个模块的模块设计还可以包括下列中的至少一种:第i个模块的模块标识、模块归属的安全域的标识以及该属于该模块的至少一个vm的vm规格,该m个安全域中第j个安全域的安全域标识。

进一步地,vm规格的vm规格设计中还包括该vm中的网卡列表,该网卡列表中每个网卡规格包括该网卡的标识以及该网卡可通信的安全域标识。

可选地,作为本发明一个实施例,使用n个模块中第i个模块对应的iaas租户,为所述第i个模块分配虚拟机资源,包括:对vm的各个网卡,调用iaas的接口创建一个端口(port)对象;并记录vm网卡与端口的映射关系; 针对各个网卡,获取设计中其指定的可通信的安全域列表。依次读取安全域对应的iaas安全组,调用iaas的接口,将对应的安全组更新到端口的可通信列表中。

应理解,还需要通过执行其他软件安装、配置操作等,完成目标应用的部署,在此不再赘述。

应理解,在步骤310之前,部署系统可以通过目标应用的数据结构,判断是否在目标应用中具有多个安全域,如果具有多个安全域的划分,那么将进行上述流程。

步骤320,部署系统向iaas层设备发送租户创建请求,所述租户创建请求包含m个安全域中每个安全域的标识信息,以便于iaas层设备根据所述m个安全域中每个安全域的标识信息创建所述m个安全域中每个安全域对应的一个iaas租户,得到m个iaas租户。

具体地,在步骤320中,部署系统向iaas层设备发送租户创建请求,该请求用于请求iaas层设备利用管理员用户,为m个安全域中的每个安全域创建对应的一个租户。

步骤330,iaas层设备接收部署设备发送的租户创建请求,所述租户创建请求中携带目标应用的m个安全域中每个安全域的标识信息,其中,m为大于1的整数;根据所述租户创建请求,创建所述m个安全域中每个安全域对应的一个iaas租户,得到m个iaas租户以及所述m个iaas租户与所述m个安全域之间存在的第二映射关系;向所述部署设备返回租户创建响应,所述租户创建响应中携带所述第二映射关系。

步骤340,部署系统接收iaas层设备发送的租户创建响应,该租户创建响应包含上述第二映射关系。

具体地,接收iaas层设备发送的租户创建响应,该租户创建响应中携带上述m个安全域与上述m个iaas租户之间存在的第二映射关系,也就是说该租户创建响应中携带m个安全域和m个iaas租户的标识信息,部署系统存储该m个安全域与m个iaas租户的标识以及确定它们之间的第一映射关系。

步骤350,根据第一映射关系和第二映射关系,部署系统确定上述n个模块与上述m个iaas租户之间存在的第三映射关系。

应理解,部署系统可以在本地存储第一映射关系、第二映射关系或第三 映射关系,以便于根据上述映射关系,为上述n个模块分配虚拟资源。

步骤360,部署系统向iaas层设备发送资源分配请求,以便于请求iaas层设备根据资源分配请求,使用n个模块中第i个模块对应的iaas租户,为第i个模块分配虚拟机资源,其中,1≤i≤n,资源分配请求包含第三映射关系。

步骤370,iaas层设备接收部署设备发送的资源分配请求,其中,资源分配请求中携带n个模块与m个iaas租户之间存在的的第三映射关系,1≤i≤n,m≤n,n为整数;根据第三映射关系,使用n个模块中的第i个模块对应的iaas租户,为第i个模块分配虚拟资源。

具体地,由于部署系统已经获得n个模块与m个iaas租户之间的对应关关系,即通过步骤350确定的第三映射关系后,使用n个模块中第i个模块对应的iaas租户,为第i个模块分配虚拟机资源。在部署系统调用iaas接口申请虚拟机资源时,需要传递租户的身份认证数据,因此利用第i个模块对应的iaas租户的身份认证数据创建的vm资源即使用第i个模块对应的iaas租户,为第i个模块分配虚拟机资源。

可选地,作为本发明一个实施例,上述资源分配请求还包括n个模块中每个模块的资源规格,以便于iaas层设备根据上述第三映射关系和n个模块中每个模块的资源规格,为n个模块分配虚拟资源。

具体地,iaas层设备可以根据n个模块中第i个模块的资源规格,为第i个模块分配虚拟资源。

应理解,第i个模块资源规格包括该第i个模块对应的网卡列表,具体包括每个网卡的网卡标识,以及每个网卡可通信的安全域列表。

下面继续介绍安全域中存在安全组的情况下的方案。

可选地,作为本发明一个实施例,确定m个安全域对应的m个安全组,包括:向iaas层设备发送安全组创建请求,安全组创建请求用于请求iaas层设备创建m个安全域中每个安全域对应一个安全组,得到m个安全组;接收iaas层设备发送的安全组响应消息,安全组响应消息中携带m个安全域与m个安全组之间存在第四映射关系。

具体地,部署系统向iaas层设备发送安全组创建请求,调用iaas接口,为每个安全域创建一个iaas安全组;更进一步地,部署系统接收iaas层设备发送的m个安全组的标识,并记录m个安全域与m个安全组的映射关系。

进一步地,当第i个模块的虚拟资源的资源规格包括与第i个模块通信的模块所属的安全域列表,具体的实现方式就是将安全域列表中每个安全域对应的安全组配置为第i个模块的允许访问安全组。

按照上述方法,为第i个模块分配的虚拟资源之后,第i个模块对允许访问安全组列表中的安全组具有访问权限,当该第i个模块某个安全组具有访问权限后,该第i个模块所属的安全组可以该第i个模块对应的租户创建的vm的网卡产生的网络流量进行管理。

因此,本法实施例通过将应用划分于至少两个安全域上,在该至少两个安全域中的每个安全域创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟机资源,由此,创建的应用在不同安全域之间能够实现的虚拟资源的隔离。

进一步地,由于在至少两个安全域中的每个安全域上创建安全组,并且配置每个安全组可以为其所属的安全域对应的租户使用,因此,能够实现跨安全域的网络流量控制。

因此,通过上述的资源部署方案,实现了跨安全组的网络流量控制以及虚拟资源的隔离,目标应用划分在不同安全域上的不同模块之间既能够进行网络流量的控制,也能够实现了虚拟资源的隔离。

本发明实施例通过将应用划分于至少两个安全域上,在该至少两个安全域中的每个安全域上创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟资源,由此,上述应用划分在在不同安全域上的不同模块之间能够实现虚拟资源的隔离。

图4是本发明应用部署的一个实施例的示意性框图。

如图4所示,应用a划分在安全域a和安全域b中,在安全域a中创建租户a,在安全域b中创建租户b;并且,应用a包括两个模块,分别为模块一和模块二,应用a的模块一和模块二分别归属于安全域a和安全域b,因此,也就是说模块一和模块二分别归属于租户a和租户b,配置租户a可以访问安全组a和安全组b,配置租户b可以访问安全组a和安全组b,因此可以通过安全a和安全组b实现安全域a和安全域b之间的网络流量控制,同时由于租户a和租户b之间的虚拟资源隔离的,因此,可以实现跨安全域(或者安全组)的虚拟资源隔离。

由于模块一位于安全组a,模块二位于安全组b,其中模块一和模块二 的功能都是由多个vm实现,安全组通过配置模块一中的vm和模块二中的vm,能够实现模块一和模块二之间跨安全域(或者安全组)的网络流量控制。

因此,图4所示的应用部署的实施例既能够实现跨安全组的网络流量控制,也能够实现跨安全组的虚拟资源的隔离。

本发明实施例通过将应用划分于至少两个安全域上,在该至少两个安全域中的每个安全域上创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟机资源,由此,上述应用划分在在不同安全域上的不同模块之间能够实现虚拟资源的隔离。

图5是本发明一个实施例的应用设计模板的数据结构示意图。图3所示实施例中的获取的上述映射关系可以通过图5所示的应用设计模板获得。

如图5所示,应用设计模板510,包括应用标识、模块列表以及安全域列表,其中,模块列表包括至少两个模块,安全域列表包括至少两个安全域,模块的数量大于或等于安全域的数量。

应用设计模板510的下一层包括模块设计模板520,该模块设计模板520中包括模块的标识、该模块归属的安全域(例如,安全域的标识)、vm规格。

应理解,应用设计模板510中包括的每个模块都对应于一个模块设计,图5中应用设计目标510与模块设计模板520的*号表示应用设计模板510对应的模块设计的个数,例如,应用设计模板510中包括2个模块,那么该*号就表示2个。

应用设计目标510的下一层还包括安全域模板530,该安全域目标530中包括安全域的标识,应理解,应用设计模板510中包括的每个安全域都对应于一个安全域设计,图5中应用设计目标510与安全域模板530之间的*号表示每个应用设计对应的安全域设计的个数,例如,应用设计模板510中包括2个安全域,那么该*号就表示2个。

模块设计模板520的下一层包括vm规格设计模板540,该vm规格设计模板540包括网卡列表,该网卡列表中包括一个或多个vm网卡规格设计,应理解,一个模块设计对应于一个vm规格设计。

vm规格设计模板540的下一层包括vm网卡规格设计模板550,该vm网卡规格设计模板550包括网卡标识、网卡可通信的安全域列表。

应理解,vm规格设计模板540包括的网卡列表中每个网卡对应于一个vm网卡规格,图5中vm规格设计模板540与vm网卡规格设计模板550之间的*表示每个vm规格设计对应的vm网卡规格设计数目,例如,一个vm规格中的网卡列表包括3个网卡,那么该*就表示3个,每个网卡规格设计中包括该网卡的标识以及该网卡可通信的安全域的列表,具体的该安全域列表中包括可通信的安全域的标识。

应理解,上述数字仅仅是示例性的,本发明不限于此。

下面将结合图6具体说明资源配置的方法的具体流程。

图6是本发明实施例的资源配置的方法的交互流程图。如图6所示,该方法包括:

步骤601,用户向部署系统输入应用设计模板。

具体地,应用设计模板用于描述应用的资源拓扑结构,如图6所示的应用设计模板,该应用设计中需要包含应用的唯一标识;应用中所有模块的设计的列表,以及应用规划的全部安全域;各个安全域需要描述唯一标识;模块设计中需要描述模板的唯一标识、vm规格,并指定此模块归属的安全域标识;模块的vm规格中,需要描述vm网卡的列表;各个vm网卡需要指定可通信的一个或者多个安全域标识。

步骤602,部署系统保存应用设计模板。

步骤603,用户使用应用设计模板部署目标应用。应理解,该目标应用为用户请求创建的具体应用。

步骤601至步骤603的具体步骤与图3所示实施例的步骤310对应,在此不再赘述。

步骤604,部署系统解析目标应用的应用设计,判断是否需要进行安全域的划分。

具体地,如果该目标应用的应用设计中包括至少两个安全域,那么在部署该目标应用划分在该两个安全域中。

如果确定需要进行安全域的划分,那么将进行进行安全域的划分和配置操作,否则,按照现有应用部署流程进行实现。

当需要进行安全域划分时,需要继续执行以下步骤:

步骤605,部署系统调用iaas层设备预置的iaas管理员账户,为设计中各个安全域创建iaas租户,一个安全域对应一个iaas租户,并保存多个 iaas租户与多个安全域的映射关系,其中,多个指至少两个。

应理解,步骤605与图3所示实施例的步骤320和步骤330对应,在此不再赘述。

步骤606,iaas层设备向部署系统返回上述多个租户的标识,以及该多个租户与多个安全域的映射关系。

步骤607,部署系统记录该多个租户与多个安全域的映射关系。

应理解,步骤606、步骤607与图3所示实施例的步骤340对应。

步骤608,部署系统调用iaas接口,使用iaas管理员帐户,为多个安全域中的每个安全域创建一个iaas安全组,并记录多个安全域与多个iaas安全组的映射关系。

步骤609,iaas层设备向部署系统返回多个安全域与多个安全组的映射关系。

步骤610,部署系统记录多个安全域中每个安全域分别对应的安全组。

步骤611,部署系统读取每个安全域对应的iaas安全组和iaas租户数据,并调用iaas接口,使用管理员用户配置安全域对应的iaas安全组可被同一个安全域对应的iaas租户使用。

步骤612,查询目标应用设计中多个模块中每个模块对应的安全域对应的租户,创建每个模块对应的vm。

具体地,首先读取每个模块归属的安全域对应的iaas租户;然后,使用此iaas租户,调用iaas接口创建指定vm规格的vm。

步骤613,iaas层设备向部署系统返回每个模块对应的vm的标识,部署系统保存每个模块对应的vm标识。

步骤614,部署系统请求iaas层设备为每个模块中的每个vm创建网络端口。

具体地,对vm的各个网卡,调用iaas的接口创建一个端口(port)对象。

步骤615,iaas层设备向部署系统返回每个vm端口的标识。

步骤616,部署系统记录每个vm网卡与其端口的映射关系,即记录vm对应的端口标识。

步骤617,查询vm可通信的安全域对应的安全组id。

步骤618,将安全组id配置到对应的vm的允许访问列表中。

具体地,针对各个网卡,获取目标应用设计中其指定的可通信的安全域列表。依次读取安全域对应的iaas安全组,调用iaas的接口,将对应的安全组更新到端口的可通信列表中。

应理解,部署系统还需要执行其他软件安装、配置操作,完成应用的部署。

因此,此时创建出的应用的各个模块的vm,就同时满足资源隔离和安全域划分的要求,各个安全域中的vm使用不同的iaas租户创建出来,则不同安全域之间的vm因iaas的租户隔离机制,彼此资源隔离;各个模块的vm上的各个网卡,根据安全域的可通信数据进行了安全组的配置,使得网卡之间的通讯收到安全组流量控制策略的作用,起到划分安全域控制流量的目的。

图7是本发明一个实施例的资源配置的示意性框图。

图7所示的实施例是采用上述资源配置方法的具体实施例,如图7所示,该目标应用为网页web应用700,该应用700包括以下模块:前台web模块710、业务后台模块720以及数据库模块730,其中,前台web模块710用于处理公网用户的web请求;业务后台模块720用于实现业务核心的逻辑;数据库模块730用于负责用户和业务数据的存储。

具体地,前台web模块710是由多个节点组成的集群,图7中列出两个虚拟机节点,分别为虚拟机前台web1和虚拟机前台web2。由于前台web模块710与公网入口网络设备通信,需要处理公网请求,因此安全等级较低,需要划分在低等级的安全域中,此外,前台web模块710需要与业务后台模块720通讯,来处理用户请求。

具体地,业务后台模块720,是应用实现业务逻辑的核心模块。它需要接收、处理前台web模块710的请求,并需要与数据库模块730通讯,来存储业务处理过程中产生的用户数据和业务数据。由于模块中的逻辑是业务的核心,需要进行安全保护,因此需要将此模块划分到中等级的安全域中。

具体地,数据库模块730,用于负责用户数据和业务数据的存储。它仅与业务后台模块720通讯,其中的数据往往涉及用户敏感数据和业务竞争力相关的数据,因此需要可靠的保护。这个模块需要划分到高等级的安全域中。

因此,web应用中需要的三个安全域的网络流量控制配置如表1:

表1

本发明实施例通过将应用划分于至少两个安全域上,在该至少两个安全域中的每个安全域上创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟机资源,由此,上述应用划分在在不同安全域上的不同模块之间能够实现虚拟资源的隔离。

上文结合图1至图7详细说明用于本发明实施例的资源配置的方法及具体流程,下面结合图8至图11详细说明用于本发明实施例的资源配置的网络设备。

图8是本发明一个实施例的网络设备的示意性框图。如图8所示,该网络设备包括:

确定单元910,确定单元910用于确定目标应用的m个安全域,以及m个安全域与目标应用的n个模块之间存在的第一映射关系,其中,m≤n,n为整数,m为大于1的整数。

创建单元920,创建单元920用于用于向基础设施即服务iaas层设备发送租户创建请求,租户创建请求包含m个安全域中每个安全域的标识信息,以便于iaas层设备根据m个安全域中每个安全域的标识信息,创建m个安全域中每个安全域对应的一个iaas租户,得到m个iaas租户。

接收单元930,接收单元930用于接收iaas层设备发送的租户创建响应,租户创建响应中携带m个安全域与m个iaas租户之间存在的第二映射关系。

创建单元920还用于,根据第一映射关系和第二映射关系,确定n个模块与m个iaas租户之间存在的第三映射关系。

发送单元910还用于,向iaas层设备发送资源分配请求,以便于请求iaas层设备根据所述资源分配请求,使用n个模块中第i个模块对应的iaas租户,为第i个模块分配虚拟机资源,其中,1≤i≤n,资源分配请求包含第三映射关系。

可选地,作为本发明一个实施例,资源分配请求还包括保护所述n个模块中第i个模块的资源规格。

可选地,作为本发明一个实施例,上述确定单元810具体用于:从目标应用的应用设计模板中,获取m个安全域中每个安全域的标识信息;从目标应用的应用设计模板中,获取n个模块中每个模块的标识信息,以及获取n个模块中每个模块对应的安全域的标识信息;根据m个安全域中每个安全域的标识信息和n个模块中每个模块对应的安全域的标识信息,确定m个安全域与n个模块之间存在的第一映射关系。

根据本发明实施例的网络设备可对应于本发明实施例资源配置的方法,并且,该装置中的各个单元/模块和上述其他操作和/或功能分别为了实现图1至图7中部署系统所示方法的相应流程,为了简洁,在此不再赘述。

本发明实施例通过将应用划分于至少两个安全域上,在该至少两个安全域中的每个安全域上创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟机资源,由此,上述应用划分在在不同安全域上的不同模块之间能够实现虚拟资源的隔离。

图9是本发明另一个实施例的网络设备的示意性框图。如图9所示,该网络设备900包括

接收单元910,接收单元910用于用于接收部署设备发送的租户创建请求,所述租户创建请求中携带目标应用的m个安全域中每个安全域的标识信息,其中,m为大于1的整数。

创建单元920,创建单元920用于根据所述租户创建请求,创建所述m个安全域中每个安全域对应的一个iaas租户,得到m个iaas租户以及所述m个iaas租户与所述m个安全域之间存在的第二映射关系。

发送单元930,发送单元930用于向所述部署设备返回租户创建响应,所述租户创建响应中携带所述第二映射关系。

接收单元910还用于接收所述部署设备发送的资源分配请求,其中,所述资源分配请求中携带所述n个模块与所述m个iaas租户之间存在的的第三映射关系,1≤i≤n,m≤n,n为整数。

资源分配单元940,资源分配单元940用于根据所述第三映射关系,使用所述n个模块中的第i个模块对应的iaas租户,为所述第i个模块分配虚拟资源。

可选地,作为本发明一个实施例,资源分配请求中携带n个模块中每个模块的资源规格,资源分配单元940用于:根据n个模块中第i个模块的资源规格,为第i个模块分配虚拟资源。

本发明实施例通过将应用划分于至少两个安全域上,在该至少两个安全域中的每个安全域上创建对应的一个iaas租户,并通过每个安全域对应的iaas租户为该安全域对应的模块分配所需的虚拟机资源,由此,上述应用划分在在不同安全域上的不同模块之间能够实现虚拟资源的隔离。

图10是本发明一个实施例的网络设备的示意性装置图。

如图10所示,本发明实施例还提供了一种网络设备1000,该网络设备1000包括处理器1001、存储器1002、总线系统1003和接收器1004。其中,处理器1001、存储器1002和接收器1004通过总线系统1003相连,该存储器1002用于存储指令,该处理器1001用于执行该存储器1002存储的指令,并控制该接收器1004接收信息。网络设备1000能够实现前述方法实施例中的相应流程,为避免重复,这里不再赘述。

应理解,在本发明实施例中,该处理器1001可以是中央处理单元(centralprocessingunit,简称为“cpu”),该处理器1001还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

该存储器1002可以包括只读存储器和随机存取存储器,并向处理器1001提供指令和数据。存储器1002的一部分还可以包括非易失性随机存取存储器。例如,存储器1102还可以存储设备类型的信息。

该总线系统1003除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统1003。

在实现过程中,上述方法的各步骤可以通过处理器1001中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1002,处理器1001读取存储器1002中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。

图11是本发明另一个实施例的网络设备的示意性装置图。

如图11所示,本发明实施例还提供了一种网络设备1100,该网络设备1100包括处理器1101、存储器1102、总线系统1103和接收器1104。其中,处理器1101、存储器1102和接收器1104通过总线系统1103相连,该存储器1102用于存储指令,该处理器1101用于执行该存储器1102存储的指令,并控制该接收器1104接收信息。网络设备1100能够实现前述方法实施例中的相应流程,为避免重复,这里不再赘述。

应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示 意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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