《工作空间部署方法、装置、设备及存储介质.pdf》由会员分享,可在线阅读,更多相关《工作空间部署方法、装置、设备及存储介质.pdf(17页珍藏版)》请在专利查询网上搜索。
1、(19)国家知识产权局(12)发明专利申请(10)申请公布号 (43)申请公布日 (21)申请号 202310466264.5(22)申请日 2023.04.26(71)申请人 中国建设银行股份有限公司地址 100033 北京市西城区金融大街25号 申请人 建信金融科技有限责任公司(72)发明人 马瑞魏正迪岳永强(74)专利代理机构 北京同立钧成知识产权代理有限公司 11205专利代理师 杨泽刘芳(51)Int.Cl.H04L 67/30(2022.01)H04L 67/104(2022.01)G06F 9/455(2018.01)(54)发明名称工作空间部署方法、装置、设备及存储介质(57)。
2、摘要本申请涉及云计算技术领域,提供了一种工作空间部署方法、装置、设备及存储介质,该方法根据工作空间部署自定义资源定义,确定工作空间部署的配置清单;向容器编排引擎的应用程序编程接口服务提交配置清单,应用配置清单至容器编排引擎集群;通过工作空间操作根据自定义资源定义的描述,创建容器编排引擎资源。基于K8s提供的自定义资源和自定义控制器的方式,实现了自定义的Operator,让用户方便的创建Workspace,完成了工作空间的快速部署,提高了工作空间部署的效率。权利要求书2页 说明书11页 附图3页CN 116506489 A2023.07.28CN 116506489 A1.一种工作空间部署方法,。
3、其特征在于,包括:根据工作空间部署自定义资源定义,确定工作空间部署的配置清单;向容器编排引擎的应用程序编程接口服务提交所述配置清单,应用所述配置清单至容器编排引擎集群;通过工作空间操作根据所述自定义资源定义的描述,创建容器编排引擎资源。2.根据权利要求1所述的方法,其特征在于,在所述通过工作空间操作根据所述自定义资源定义的描述,创建容器编排引擎资源之后,还包括:通过服务治理组件网关访问工作空间。3.根据权利要求2所述的方法,其特征在于,所述服务治理组件为可配置的开源服务网格层。4.根据权利要求2或3所述的方法,其特征在于,在所述通过服务治理组件网关访问工作空间之后,还包括:若确定用户未认证,则。
4、重定向到认证服务器进行登录认证。5.根据权利要求4所述的方法,其特征在于,所述认证服务器为开源的进行身份认证和访问控制的软件。6.根据权利要求4所述的方法,其特征在于,在所述若确定用户未认证,则重定向到认证服务器进行登录认证之后,还包括:通过授权服务器完成用户的授权验证。7.根据权利要求1至3任一项所述的方法,其特征在于,在所述根据工作空间部署自定义资源定义,确定工作空间部署的配置清单之前,包括:定义工作空间部署自定义资源定义;定义工作空间部署控制器,其中,所述工作空间部署控制器用于根据所述工作空间部署自定义资源定义的定义调谐容器编排引擎资源。8.一种工作空间部署装置,其特征在于,包括:配置清。
5、单确定模块,用于根据工作空间部署自定义资源定义,确定工作空间部署的配置清单;集群应用模块,用于向容器编排引擎的应用程序编程接口服务提交所述配置清单,应用所述配置清单至容器编排引擎集群;创建模块,用于通过工作空间操作根据所述自定义资源定义的描述,创建容器编排引擎资源。9.一种工作空间部署设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一项所述的工作空间部署方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质。
6、中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7中任一项所述的工作空间部署方法。权利要求书1/2 页2CN 116506489 A211.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7任一项所述的方法。权利要求书2/2 页3CN 116506489 A3工作空间部署方法、装置、设备及存储介质技术领域0001本发明涉及云计算技术领域,尤其涉及一种工作空间部署方法、装置、设备及存储介质。背景技术0002云计算(Cloud Computing)是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程。
7、序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。通过这项技术,可以在很短的时间内(几秒钟)完成对数以万计的数据的处理,从而达到强大的网络服务。Kubernetes,也被称为K8s或Kube,是一个基于云计算的开源的容器编排引擎,用来对容器化应用进行自动化部署、扩缩和管理。0003现有技术中,用户可以通过创建部署(Deployment)和Serivce(服务)用于部署Workspace(工作空间),对Workspace的路由进行规划,然后根据网关技术选型创建路由规则,需要选取认证授权方案,根据认证授权方案手动配置认证授权策略。0004然而,现有技术无法实现路由、认。
8、证授权的快速创建,工作空间部署效率低。发明内容0005本申请提供一种工作空间部署方法、装置、设备及存储介质,从而解决现有技术无法实现路由、认证授权的快速创建,工作空间部署效率低的技术问题。0006第一方面,本申请提供了一种工作空间部署方法,包括:0007根据工作空间部署自定义资源定义,确定工作空间部署的配置清单;0008向容器编排引擎的应用程序编程接口服务提交所述配置清单,应用所述配置清单至容器编排引擎集群;0009通过工作空间操作根据所述自定义资源定义的描述,创建容器编排引擎资源。0010这里,本申请以自定义资源定义(Custom Resource Definition,CRD)的方式组织W。
9、orkspace,并自动创建相关的k8s资源,工作空间部署自定义资源定义(Workspace Deployment CRD)允许用户轻松地将Workspace部署到K8s集群,基于K8s提供的自定义资源和自定义控制器的方式,实现了自定义的操作(Operator),让用户方便的创建Workspace,完成了工作空间的快速部署,提高了工作空间部署的效率。0011可选地,在所述通过工作空间操作根据所述自定义资源定义的描述,创建容器编排引擎资源之后,还包括:0012通过服务治理组件网关访问工作空间。0013可选地,所述服务治理组件为可配置的开源服务网格层。0014其中,服务治理组件可以为可配置的开源服。
10、务网格层(Istio),Istio是一个开源服务网格,它透明地分层到现有的分布式应用程序上,Istio的强大功能提供了一种统一且更有效的方式来保护、连接和监控服务,Istio是实现负载均衡、服务到服务身份验证和监控的途径,几乎不需要更改服务代码,通过Istio网关访问工作空间,实现了路由的快速创说明书1/11 页4CN 116506489 A4建及配置,提高了云原生路由效率。0015可选地,在所述通过服务治理组件网关访问工作空间之后,还包括:0016若确定用户未认证,则重定向到认证服务器进行登录认证。0017可选地,所述认证服务器为开源的进行身份认证和访问控制的软件。0018这里,本申请通过通。
11、过开源的进行身份认证和访问控制的软件(Keycloak)在确定用户未认证后,重定向到Keycloak进行登录认证,实现了认证授权配置的自动创建,Keycloak提供开源身份和访问管理,能够实现未认证用户的快速、高效认证,进一步地提高了云原生访问及认证效率。0019可选地,在所述若确定用户未认证,则重定向到认证服务器进行登录认证之后,还包括:0020通过授权服务器完成用户的授权验证。0021其中,本申请实现了Workspace工作空间的快速部署和认证授权。0022可选地,在所述根据工作空间部署自定义资源定义,确定工作空间部署的配置清单之前,包括:0023定义工作空间部署自定义资源定义;0024定。
12、义工作空间部署控制器,其中,所述工作空间部署控制器用于根据所述工作空间部署自定义资源定义的定义调谐容器编排引擎资源。0025第二方面,本申请提供了一种工作空间部署装置,包括:0026配置清单确定模块,用于根据工作空间部署自定义资源定义,确定工作空间部署的配置清单;0027集群应用模块,用于向容器编排引擎的应用程序编程接口服务提交所述配置清单,应用所述配置清单至容器编排引擎集群;0028创建模块,用于通过工作空间操作根据所述自定义资源定义的描述,创建容器编排引擎资源。0029可选地,在所述创建模块通过工作空间操作根据所述自定义资源定义的描述,创建容器编排引擎资源之后,上述装置还包括:0030路由。
13、模块,用于通过服务治理组件网关访问工作空间。0031可选地,所述服务治理组件为可配置的开源服务网格层。0032可选地,在所述路由模块通过服务治理组件网关访问工作空间之后,上述装置还包括:0033登录认证模块,用于若确定用户未认证,则重定向到认证服务器进行登录认证。0034可选地,所述认证服务器为开源的进行身份认证和访问控制的软件。0035可选地,在所述登录认证模块若确定用户未认证,则重定向到认证服务器进行登录认证之后,上述装置还包括:0036授权验证模块,用于通过授权服务器完成用户的授权验证。0037可选地,在所述配置清单确定模块根据工作空间部署自定义资源定义,确定工作空间部署的配置清单之前,。
14、上述装置还包括定义模块,用于:0038定义工作空间部署自定义资源定义;0039定义工作空间部署控制器,其中,所述工作空间部署控制器用于根据所述工作空说明书2/11 页5CN 116506489 A5间部署自定义资源定义的定义调谐容器编排引擎资源。0040第三方面,本申请提供一种工作空间部署设备,包括:至少一个处理器和存储器;0041所述存储器存储计算机执行指令;0042所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的工作空间部署方法。0043第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算。
15、机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的工作空间部署方法。0044第五方面,本发明提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上第一方面以及第一方面各种可能的设计所述的工作空间部署方法。0045本申请提供的工作空间部署方法、装置、设备及存储介质,其中该方法以CRD的方式组织Workspace,并自动创建相关的k8s资源,Workspace Deployment CRD允许用户轻松地将Workspace部署到K8s集群,基于K8s提供的自定义资源和自定义控制器的方式,实现了自定义的Operator,让用户方便的。
16、创建Workspace,完成了工作空间的快速部署,提高了工作空间部署的效率。附图说明0046为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。0047图1为本申请实施例提供的一种工作空间部署系统架构示意图;0048图2为本申请实施例提供的一种工作空间部署方法的流程示意图;0049图3为本申请实施例提供的另一种工作空间部署方法的流程示意图;0050图4为本申请实施例提供的一种工作空间部署装置。
17、的结构示意图;0051图5为本申请实施例提供的一种工作空间部署设备的结构示意图。0052通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。具体实施方式0053这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。0054本申请的说。
18、明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”及“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在说明书3/11 页6CN 116506489 A6这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。0055首先,对本申请实施例中的名词进。
19、行解释:0056云原生(Cloud Native):是基于分布部署和统一运管的分布式云,以容器、微服务、过程、方法与系统的统称(Development Operations,DevOps)等技术为基础建立的一套云技术产品体系。0057容器编排引擎:K8s即Kubernetes,是一个用于自动化部署、扩展和管理容器化应用程序的开源系统。0058资源(Resource):Resource是Kubernetes应用程序编程接口(Application Programming Interface,API)中的端点,用于存储某种API对象的集合。例如,内置的pods资源包含Pod对象的集合。Pod是Ku。
20、bernetes的最小工作单元(提供应用的单元),每个Pod包含一个或多个容器。0059自定义资源(Custom resources,CR):是Kubernetes API的扩展,在默认Kubernetes安装中不一定可用。它代表特定Kubernetes安装的自定义。但是,现在许多核心Kubernetes功能都是使用自定义资源构建的,这使得Kubernetes更加模块化。0060CRD:CRD API资源允许用户定义自定义资源。定义的CRD对象会创建一个具有用户指定名称的新自定义资源。0061Kubernetes API:处理自定义资源的存储。CRD对象的名称必须是有效的域名系统(Domain。
21、 Name System,DNS)子域名。0062自定义控制:用户可以实现自己的控制器,可以使用自定义控制器将特定应用程序的领域知识编码到Kubernetes API的扩展中。0063Operator:Operator模式结合了自定义资源和自定义控制器。0064Istio:Istio是一个开源服务网格,它透明地分层到现有的分布式应用程序上。Istio的强大功能提供了一种统一且更有效的方式来保护、连接和监控服务。Istio是实现负载均衡、服务到服务身份验证和监控的途径,几乎不需要更改服务代码。0065KeyCloak:提供开源身份和访问管理。0066开放策略代理(Open Policy Agen。
22、t,OPA):是一个开源的通用策略引擎,它统一了堆栈中的策略执行。OPA提供了一种高级声明性语言,可将策略指定为代码和简单的API,以从软件中卸载策略决策制定。可以使用OPA在微服务、Kubernetes、CI/CD管道、API网关等中实施策略。0067技术栈:开发环境,如Python、Java等开发基础环境。0068编辑器:开发编辑器,如VSCode等。0069Workspace:工作空间,既技术栈和编辑器的集合。0070现有技术,基于K8s创建Deployment、Service,选择网关实现方案,对路由进行统一规划,声明路由规则,配置路由规则到网关,设计认证授权方案。需要创建Deploy。
23、ment、Service等多个k8s资源;需要设计路由规则,并手动对网关进行路由配置;需要设计认证授权方案,手动配置认证授权策略。现有技术无法实现路由、认证授权的快速创建,工作空间说明书4/11 页7CN 116506489 A7部署效率低。0071为了解决上述问题,本申请实施例提供一种工作空间部署方法、装置、设备及存储介质,其中该方法以CRD的方式组织Workspace,自动创建相关的k8s资源,Workspace Deployment CRD允许用户轻松地将Workspace部署到K8s集群,基于K8s提供的自定义资源和自定义控制器的方式,实现了自定义的Operator,让用户方便的创建W。
24、orkspace,完成了工作空间的快速部署。0072本申请实施例中,用户只需要创建一类资源,可自动生成所有关联资源,包括K8s资源、路由规则、认证授权策略。0073本申请的技术方案中,所涉及的用户数据等信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。0074可选的,图1为本申请实施例提供的一种工作空间部署系统架构示意图。在图1中,上述架构包括数据采集设备101、处理设备102和显示设备103中至少一种。0075可以理解的是,本申请实施例示意的结构并不构成对工作空间部署系统架构的具体限定。在本申请另一些可行的实施方式中,上述架构可以包括比图示更多。
25、或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置,具体可根据实际应用场景确定,在此不做限制。图1所示的部件可以以硬件,软件,或软件与硬件的组合实现。0076在具体实现过程中,数据采集设备101可以包括输入/输出接口,也可以包括通信接口,数据采集设备101可以通过输入/输出接口或者是通信接口与处理设备连接。0077处理设备102可以以CRD的方式组织Workspace,自动创建相关的k8s资源,Workspace Deployment CRD允许用户轻松地将Workspace部署到K8s集群,基于K8s提供的自定义资源和自定义控制器的方式,实现了自定义的Operator,让用。
26、户方便的创建Workspace,完成了工作空间的快速部署。0078显示设备103还可以是触摸显示屏或者终端设备的屏幕,用于在显示的上述内容的同时接收用户指令,以实现与用户的交互。0079应理解,上述处理设备可以通过处理器读取存储器中的指令并执行指令的方式实现,也可以通过芯片电路实现。0080另外,本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。0081下面结合具体的实施例对本申请的技术方案进行详细的。
27、说明:0082可选地,图2为本申请实施例提供的一种工作空间部署方法的流程示意图。本申请实施例的执行主体可以为图1中的处理设备102,具体执行主体可以根据实际应用场景确定。如图2所示,该方法包括如下步骤:0083S201:根据工作空间部署自定义资源定义,确定工作空间部署的配置清单。0084其中,Workspace Deployment CRD允许用户轻松地将Workspace部署到K8s集群。0085其中,CRD是Kubernetes API的扩展,允许对基本的Kubernetes对象进行自定义组合,使用CRD来定义Workspace,CRD通过YAML清单来描述。0086其中,可以将CRD视为。
28、围绕集群中创建的实际Deployment和Service的抽象。将清说明书5/11 页8CN 116506489 A8单应用到集群后,Workspace Operator会创建Workspace所需的所有Kubernetes对象。0087可选地,配置清单为另一种标记语言(YAML Aint Markup Language,YAML)格式。0088可选地,本申请实施例可以根据Workspace Deployment CRD的定义,准备WorkspaceDeployment的配置清单YAML。0089可选地,在根据工作空间部署自定义资源定义,确定工作空间部署的配置清单之前,包括:0090定义工作空。
29、间部署自定义资源定义;0091定义工作空间部署控制器(Workspace Deployment Controller)。0092其中,工作空间部署控制器用于根据工作空间部署自定义资源定义的定义调谐容器编排引擎资源。0093可选地,在步骤S201之前,可以基于用户的操作做以下准备:0094准备K8s集群。0095基于K8s集群部署Istio。0096基于K8s集群部署Keycloak。0097基于K8s集群部署OPA。0098定义CRD。0099开发Controller。0100生成部署包。0101安装插件。0102S202:向容器编排引擎的应用程序编程接口服务提交配置清单,应用配置清单至容器编。
30、排引擎集群。0103这里,向k8s apiserver提交配置清单,应用配置清单到k8s集群。0104S203:通过工作空间操作根据自定义资源定义的描述,创建容器编排引擎资源。0105这里,Workspace Operator根据Workspace Deployment的描述,创建相应的k8s资源。0106其中,工作空间操作(Workspace Operator)管控K8s集群中的Workspace Deployment。它读取应用于集群的WorkspaceDeployment CRD,并创建所有必需的组件,如Pods和Services等。0107Workspace Operator符合常见的。
31、KubernetesOperator工作模式,持续循环以下过程:0108observe,观察集群的当前状态。0109diff,与期望状态进行对比。0110act,如有必要,采取行动满足期望状态。0111Workspace Operator的作用:0112创建K8s资源,根据WorkspaceOperatorCRD创建Deployment,并且持续调谐Deployment的状态。0113添加初始化容器到Pods,用于Workspace的准备工作。0114管理滚动更新。0115处理副本的缩放。说明书6/11 页9CN 116506489 A90116配置路由。0117本申请实施例以CRD的方式组织。
32、Workspace,并自动创建相关的k8s资源,Workspace Deployment CRD允许用户轻松地将Workspace部署到K8s集群,基于K8s提供的自定义资源和自定义控制器的方式,实现了自定义的Operator,让用户方便的创建Workspace,完成了工作空间的快速部署,提高了工作空间部署的效率。0118可选地,本申请实施例还可以实现云原生的高效路由及认证授权,相应的,图3为本申请实施例提供的另一种工作空间部署方法的流程示意图,如图3所示,该方法包括:0119S301:根据工作空间部署自定义资源定义,确定工作空间部署的配置清单。0120S302:向容器编排引擎的应用程序编程接。
33、口服务提交配置清单,应用配置清单至容器编排引擎集群。0121S303:通过工作空间操作根据自定义资源定义的描述,创建容器编排引擎资源。0122其中,步骤S301S303的实现方式与步骤S201S203的实现方式类似,本申请实施例在此不做赘述。0123S304:通过服务治理组件网关访问工作空间。0124可选地,服务治理组件为可配置的开源服务网格层。0125通过Istio网关访问Workspace。0126其中,服务治理组件可以为可配置的开源服务网格层(Istio),Istio是一个开源服务网格,它透明地分层到现有的分布式应用程序上,Istio的强大功能提供了一种统一且更有效的方式来保护、连接和监。
34、控服务,Istio是实现负载均衡、服务到服务身份验证和监控的途径,几乎不需要更改服务代码,通过Istio网关访问工作空间,实现了路由的快速创建及配置,提高了云原生路由效率。0127S305:若确定用户未认证,则重定向到认证服务器进行登录认证。0128可选地,认证服务器为开源的进行身份认证和访问控制的软件。0129用户未认证,重定向到Keycloak进行登录认证。0130这里,本申请实施例通过通过开源的进行身份认证和访问控制的软件(Keycloak)在确定用户未认证后,重定向到Keycloak进行登录认证,实现了认证授权配置的自动创建,Keycloak提供开源身份和访问管理,能够实现未认证用户的。
35、快速、高效认证,进一步地提高了云原生访问及认证效率。0131S306:通过授权服务器完成用户的授权验证。0132可选地,通过OPA完成用户的授权验证。OPA可以方便的与Istio进行集成,通过授权策略CRD的方式定义授权逻辑。0133其中,本申请实施例实现了Workspace工作空间的快速部署和认证授权。0134本申请实施例通过自定义CRD和Controller的方式,结合Isito、KeyCloak、OPA完成Workspace的快速部署和认证授权。可以让用户方便的创建Workspace,并实现Workspace的认证和授权。以CRD的方式组织Workspace,并自动创建相关的k8s资源,。
36、Workspace的创建方式简单,易于对Workspace进行统一的管理。0135图4为本申请实施例提供的一种工作空间部署装置的结构示意图,如图4所示,本申请实施例的装置包括:配置清单确定模块401、集群应用模块402和创建模块403。这里的工作空间部署装置可以是上述处理装置、处理器本身,或者是实现处理器的功能的芯片或说明书7/11 页10CN 116506489 A10者集成电路。这里需要说明的是,配置清单确定模块401、集群应用模块402和创建模块403的划分只是一种逻辑功能的划分,物理上两者可以是集成的,也可以是独立的。0136其中,配置清单确定模块,用于根据工作空间部署自定义资源定义,。
37、确定工作空间部署的配置清单;0137集群应用模块,用于向容器编排引擎的应用程序编程接口服务提交配置清单,应用配置清单至容器编排引擎集群;0138创建模块,用于通过工作空间操作根据自定义资源定义的描述,创建容器编排引擎资源。0139可选地,在创建模块通过工作空间操作根据自定义资源定义的描述,创建容器编排引擎资源之后,上述装置还包括:0140路由模块,用于通过服务治理组件网关访问工作空间。0141可选地,服务治理组件为可配置的开源服务网格层。0142可选地,在路由模块通过服务治理组件网关访问工作空间之后,上述装置还包括:0143登录认证模块,用于若确定用户未认证,则重定向到认证服务器进行登录认证。。
38、0144可选地,认证服务器为开源的进行身份认证和访问控制的软件。0145可选地,在登录认证模块若确定用户未认证,则重定向到认证服务器进行登录认证之后,上述装置还包括:0146授权验证模块,用于通过授权服务器完成用户的授权验证。0147可选地,在配置清单确定模块根据工作空间部署自定义资源定义,确定工作空间部署的配置清单之前,上述装置还包括定义模块,用于:0148定义工作空间部署自定义资源定义;0149定义工作空间部署控制器,其中,工作空间部署控制器用于根据工作空间部署自定义资源定义的定义调谐容器编排引擎资源。0150参考图5,其示出了适于用来实现本公开实施例的工作空间部署设备500的结构示意图,。
39、该工作空间部署设备500可以为终端设备或服务器。其中,终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑(Portable Android Device,简称PAD)、便携式多媒体播放器(Portable Media Player,简称PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5示出的工作空间部署设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。0151如图5所示,工作空间部署设备500可以包括处理装置(例如中央处理。
40、器、图形处理器等)501,其可以根据存储在只读存储器(Read Only Memory,简称ROM)502中的程序或者从存储装置508加载到随机访问存储器(Random Access Memory,简称RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有工作空间部署设备500操作所需的各种程序和数据。处理装置501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。0152通常,以下装置可以连接至I/O接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶。
41、显示器(Liquid Crystal Display,简称LCD)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置说明书8/11 页11CN 116506489 A11508;以及通信装置509。通信装置509可以允许工作空间部署设备500与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的工作空间部署设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。0153特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的。
42、计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从ROM 502被安装。在该计算机程序被处理装置501执行时,执行本公开实施例的方法中限定的上述功能。0154需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬。
43、盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CDROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可。
44、读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。0155上述计算机可读介质可以是上述工作空间部署设备中所包含的;也可以是单独存在,而未装配入该工作空间部署设备中。0156上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该工作空间部署设备执行时,使得该工作空间部署设备执行上述实施例所示的方法。0157可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程。
45、序设计语言诸如Java、Smalltalk、C+,还包括常规的过程式程序设计语言诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(Local Area Network,简称LAN)或广域网(Wide Area Network,简称WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。0158附图中的流程图和框图,图示了按照本公开各。
46、种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用说明书9/11 页12CN 116506489 A12于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件。
47、的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。0159描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。0160本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。0161在本公开的上下文中,机器可读介质可以是有形的介质。
48、,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CDROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。0162本申请实施例的工作空间部署设备,可以用于执。
49、行本申请上述各方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。0163本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现上述任一项的工作空间部署方法。0164本申请实施例还提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时,用于实现上述任一项的工作空间部署方法。0165在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件。
50、可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。0166另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。0167本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或说明书10/11 页1。