本技术涉及分布式系统,尤其涉及一种资源管理方法、资源分配方法、装置、设备及存储介质。
背景技术:
1、可信执行环境(tee-trusted execution environment)是处理器中的安全可信区域,可以保证放入其中的代码和数据的安全性、机密性和完整性。tee提供一个隔离的执行环境,代码和数据可以在这个可信区域内运行,运行过程中可以保证不被常规操作系统干扰的计算,这样就可以达到保证代码和数据的机密性和完整性。tee有很多种实现方式,比如intel的sgx,amd的sev,arm的trustzone(可信区)等。
2、目前,在分布式系统中,通常采用资源管理器来管理分布式系统中计算节点中的计算资源的分配与调度。但是,相关技术中通常将计算节点的执行环境划分为tee和开放执行环境(rich execution environment,ree)。但是,由于tee提供的是一个隔离的执行环境。因此,资源管理器无法对tee对应的计算资源进行管理。
3、因此,需要能够对tee对应的计算资源和ree对应的计算资源进行统一管理和调度的方案。
技术实现思路
1、本技术实施例提供了一种资源管理方法、资源分配方法、装置、设备及存储介质,通过运行ree中客户端应用程序和tee中的可信应用程序,从而通过客户端应用程序获取tee中计算资源的使用情况,实现对tee对应的计算资源和ree对应的计算资源进行统一管理和调度。
2、第一方面,本技术实施例提供了一种资源管理方法,应用于分布式系统中的资源管理节点,所述资源管理节点中存储有资源管理信息,所述资源管理信息用于指示所述分布式系统中所有的计算节点中的资源使用情况,所述方法包括:
3、确定资源分配信息,所述资源分配信息携带有任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量,所述任务管理节点为用于管理所述任务运行的计算节点;
4、根据所述任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量和资源管理信息,确定用于执行所述任务的至少一个计算节点和所述至少一个计算节点中的每个计算节点中每种执行环境中需要分配给所述任务的计算资源的数量;
5、向所述每个计算节点发送第一指令,所述第一指令用于指示所述任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的数量,以使所述计算节点在分配给所述任务的计算资源所在的执行环境包括tee的情况下,运行所述ree中tee的客户端应用程序和tee中的可信应用程序,以使所述tee的客户端应用程序向tee中的可信应用程序发送第二指令,所述第二指令包括分配给所述任务的计算资源的数量,tee中的可信应用程序根据分配给所述任务的计算资源的数量,向tee的客户端应用程序发送用于执行所述任务的计算资源的身份标识。
6、根据本技术实施例,通过在ree中部署tee的客户端应用程序,从而与tee中的可信应用程序通信。如此,资源管理节点能够通过ree与tee进行通信,从而完成资源的统一管理和调度。
7、在一种可能的实现方式中,所述方法还包括:
8、接收客户端发送的任务信息,所述任务信息包括需要执行的任务、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量;
9、向任务管理节点发送所述任务信息,以用于所述任务管理节点存储所述任务并为所述任务分配管理所述任务运行的容器。
10、在一种可能的实现方式中,所述方法还包括:
11、接收任务管理节点发送的注册请求,所述任务管理节点为用于管理所述任务运行的计算节点;
12、响应于所述注册请求,向所述任务管理节点发送身份标识,以用于所述任务管理节点将所述任务与所述任务的身份标识关联存储。
13、在一种可能的实现方式中,所述方法还包括:
14、确定用于执行所述任务的计算资源的身份标识;
15、将用于执行所述任务的计算资源的身份标识与所述任务的身份标识进行关联存储至资源管理信息中。
16、第二方面,本技术实施例提供了一种资源分配方法,应用于分布式系统中的计算节点,所述计算节点运行有开发执行环境ree和可信执行环境tee,ree中运行有tee的客户端应用程序,tee中运行有可信应用程序,所述客户端应用程序与可信应用程序通过接口通信,所述方法包括:
17、接收资源管理节点发送的第一指令,所述第一指令用于指示任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的数量;
18、在分配给所述任务的计算资源所在的执行环境包括tee的情况下,运行所述ree中tee的客户端应用程序和tee中的可信应用程序,以使所述tee的客户端应用程序向tee中的可信应用程序发送第二指令,所述第二指令包括分配给所述任务的计算资源的数量,tee中的可信应用程序根据分配给所述任务的计算资源的数量,向tee的客户端应用程序发送用于执行所述任务的计算资源的身份标识。
19、根据本技术实施例,通过在ree中部署tee的客户端应用程序,从而与tee中的可信应用程序通信。如此,资源管理节点能够通过ree与tee进行通信,从而完成资源的统一管理和调度。
20、在一种可能的实现方式中,所述第二指令还包括所述任务的身份标识,以用于所述tee中的可信应用程序将所述任务与用于执行所述任务的计算资源进行绑定。
21、在一种可能的实现方式中,所述方法还包括:
22、接收启动任务的第三指令,所述第三指令包括所述任务的身份标识,所述第三指令为在所述任务的计算资源分配完成的情况下生成的指令;
23、根据所述任务的身份标识,确定所述任务绑定的计算资源;
24、通过所述计算资源执行所述任务。
25、在一种可能的实现方式中,在所述计算节点为用于管理任务运行的任务管理节点的情况下,所述方法还包括:
26、确定启动任务的第三指令,所述第三指令包括所述任务的身份标识,所述第三指令为在所述任务的计算资源分配完成的情况下生成的指令;
27、根据所述任务的身份标识,确定所述任务绑定的计算资源;
28、通过所述计算资源执行所述任务。
29、在一种可能的实现方式中,所述方法还包括:
30、接收所述资源管理节点发送的任务信息,所述任务信息包括需要执行的任务、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量;
31、存储所述任务。
32、在一种可能的实现方式中,所述方法还包括:
33、向所述资源管理节点发送注册请求,以向所述资源管理节点请求所述任务的身份标识;
34、接收所述资源管理节点发送身份标识;
35、将所述任务与所述任务的身份标识关联存储。
36、在一种可能的实现方式中,所述方法还包括:
37、向所述资源管理节点发送的资源分配信息,所述资源分配信息携带有任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量。
38、在一种可能的实现方式中,所述方法还包括:
39、向所述资源管理节点发送用于执行所述任务的计算资源的身份标识,以使所述资源管理节点将用于执行所述任务的计算资源的身份标识与所述任务的身份标识进行关联存储至资源管理信息中。
40、第三方面,本技术实施例提供了一种资源管理装置,应用于分布式系统中的资源管理节点,所述资源管理节点中存储有资源管理信息,所述资源管理信息用于指示所述分布式系统中所有的计算节点中的资源使用情况,所述方法包括:
41、第一确定模块,用于确定资源分配信息,所述资源分配信息携带有任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量,所述任务管理节点为用于管理所述任务运行的计算节点;
42、第二确定模块,用于根据所述任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量和资源管理信息,确定用于执行所述任务的至少一个计算节点和所述至少一个计算节点中的每个计算节点中每种执行环境中需要分配给所述任务的计算资源的数量;
43、发送模块,用于向所述每个计算节点发送第一指令,所述第一指令用于指示所述任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的数量,以使所述计算节点在分配给所述任务的计算资源所在的执行环境包括tee的情况下,运行所述ree中tee的客户端应用程序和tee中的可信应用程序,以使所述tee的客户端应用程序向tee中的可信应用程序发送第二指令,所述第二指令包括分配给所述任务的计算资源的数量,tee中的可信应用程序根据分配给所述任务的计算资源的数量,向tee的客户端应用程序发送用于执行所述任务的计算资源的身份标识。
44、根据本技术实施例,通过在ree中部署tee的客户端应用程序,从而与tee中的可信应用程序通信。如此,资源管理节点能够通过ree与tee进行通信,从而完成资源的统一管理和调度。
45、在一种可能的实现方式中,所述装置还包括:
46、接收模块,用于接收客户端发送的任务信息,所述任务信息包括需要执行的任务、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量;
47、发送模块还用于向任务管理节点发送所述任务信息,以用于所述任务管理节点存储所述任务并为所述任务分配管理所述任务运行的容器。
48、在一种可能的实现方式中,所述装置还包括:
49、接收模块,用于接收任务管理节点发送的注册请求,所述任务管理节点为用于管理所述任务运行的计算节点;
50、发送模块还用于响应于所述注册请求,向所述任务管理节点发送身份标识,以用于所述任务管理节点将所述任务与所述任务的身份标识关联存储。
51、在一种可能的实现方式中,所述装置还包括:
52、第三确定模块,用于确定用于执行所述任务的计算资源的身份标识;
53、存储模块,用于将用于执行所述任务的计算资源的身份标识与所述任务的身份标识进行关联存储至资源管理信息中。
54、第四方面,本技术实施例提供了一种资源分配装置,应用于分布式系统中的计算节点,所述计算节点运行有开发执行环境ree和可信执行环境tee,ree中运行有tee的客户端应用程序,tee中运行有可信应用程序,所述客户端应用程序与可信应用程序通过接口通信,所述装置包括:
55、接收模块,用于接收资源管理节点发送的第一指令,所述第一指令用于指示任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的数量;
56、运行模块,用于在分配给所述任务的计算资源所在的执行环境包括tee的情况下,运行所述ree中tee的客户端应用程序和tee中的可信应用程序,以使所述tee的客户端应用程序向tee中的可信应用程序发送第二指令,所述第二指令包括分配给所述任务的计算资源的数量,tee中的可信应用程序根据分配给所述任务的计算资源的数量,向tee的客户端应用程序发送用于执行所述任务的计算资源的身份标识。
57、根据本技术实施例,通过在ree中部署tee的客户端应用程序,从而与tee中的可信应用程序通信。如此,资源管理节点能够通过ree与tee进行通信,从而完成资源的统一管理和调度。
58、在一种可能的实现方式中,所述第二指令还包括所述任务的身份标识,以用于所述tee中的可信应用程序将所述任务与用于执行所述任务的计算资源进行绑定。
59、在一种可能的实现方式中,接收模块还用于接收启动任务的第三指令,所述第三指令包括所述任务的身份标识,所述第三指令为在所述任务的计算资源分配完成的情况下生成的指令;
60、确定模块,用于根据所述任务的身份标识,确定所述任务绑定的计算资源;
61、执行模块,用于通过所述计算资源执行所述任务。
62、在一种可能的实现方式中,在所述计算节点为用于管理任务运行的任务管理节点的情况下,所述装置还包括:
63、确定模块,用于确定启动任务的第三指令,所述第三指令包括所述任务的身份标识,所述第三指令为在所述任务的计算资源分配完成的情况下生成的指令;
64、确定模块还用于根据所述任务的身份标识,确定所述任务绑定的计算资源;
65、执行模块用于通过所述计算资源执行所述任务。
66、在一种可能的实现方式中,所述装置还包括:
67、接收模块,用于接收所述资源管理节点发送的任务信息,所述任务信息包括需要执行的任务、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量;
68、存储模块用于存储所述任务。
69、在一种可能的实现方式中,所述装置还包括:
70、发送模块,用于向所述资源管理节点发送注册请求,以向所述资源管理节点请求所述任务的身份标识;
71、接收模块,用于接收所述资源管理节点发送身份标识;
72、存储模块,用于将所述任务与所述任务的身份标识关联存储。
73、在一种可能的实现方式中,所述装置还包括:
74、发送模块,用于向所述资源管理节点发送的资源分配信息,所述资源分配信息携带有任务的身份标识、分配给所述任务的计算资源所在的执行环境和每种执行环境中需要分配给所述任务的计算资源的总数量。
75、在一种可能的实现方式中,所述装置还包括:
76、发送模块,用于向所述资源管理节点发送用于执行所述任务的计算资源的身份标识,以使所述资源管理节点将用于执行所述任务的计算资源的身份标识与所述任务的身份标识进行关联存储至资源管理信息中。
77、第五方面,本技术实施例提供了一种资源管理系统,包括:
78、资源管理节点,用于执行第一方面中所述的方法;
79、计算节点,用于执行第二方面中所述的方法。
80、第六方面,本技术实施例提供了一种计算设备,包括:
81、至少一个存储器,用于存储程序;
82、至少一个处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行第一方面所述的方法,或用于执行第二方面所述的方法。
83、第七方面,本技术实施例提供了一种计算装置,其特征在于,装置运行计算机程序指令,以执行第一方面中所提供的方法,或者执行第二方面中所提供的方法。示例性的,该装置可以为芯片,或处理器。
84、在一个例子中,该装置可以包括处理器,该处理器可以与存储器耦合,读取存储器中的指令并根据该指令执行第一方面中所提供的方法,或者执行第二方面中所提供的方法。其中,该存储器可以集成在芯片或处理器中,也可以独立于芯片或处理器之外。
85、第八方面,本技术实施例提供了一种计算机存储介质,计算机存储介质中存储有指令,当指令在计算机上运行时,使得计算机执行第一方面中所提供的方法,或者执行第二方面中所提供的方法。
86、第九方面,本技术实施例提供了一种包含指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行第一方面中所提供的方法,或者执行第二方面中所提供的方法。
1.一种资源管理方法,其特征在于,应用于分布式系统中的资源管理节点,所述资源管理节点中存储有资源管理信息,所述资源管理信息用于指示所述分布式系统中所有的计算节点中的资源使用情况,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
5.一种资源分配方法,其特征在于,应用于分布式系统中的计算节点,所述计算节点运行有开发执行环境ree和可信执行环境tee,ree中运行有tee的客户端应用程序,tee中运行有可信应用程序,所述客户端应用程序与可信应用程序通过接口通信,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,所述第二指令还包括所述任务的身份标识,以用于所述tee中的可信应用程序将所述任务与用于执行所述任务的计算资源进行绑定。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
8.根据权利要求5所述的方法,其特征在于,在所述计算节点为用于管理任务运行的任务管理节点的情况下,所述方法还包括:
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
10.根据权利要求8所述的方法,其特征在于,所述方法还包括:
11.根据权利要求8所述的方法,其特征在于,所述方法还包括:
12.根据权利要求5-11任一项所述的方法,其特征在于,所述方法还包括:
13.一种资源管理装置,其特征在于,应用于分布式系统中的资源管理节点,所述资源管理节点中存储有资源管理信息,所述资源管理信息用于指示所述分布式系统中所有的计算节点中的资源使用情况,所述方法包括:
14.一种资源分配装置,其特征在于,应用于分布式系统中的计算节点,所述计算节点运行有开发执行环境ree和可信执行环境tee,ree中运行有tee的客户端应用程序,tee中运行有可信应用程序,所述客户端应用程序与可信应用程序通过接口通信,所述方法包括:
15.一种资源管理系统,其特征在于,包括:
16.一种计算设备,其特征在于,包括:
17.一种计算机存储介质,所述计算机存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1-4任一所述的方法,或执行如权利要求5-12任一项所述的方法。
18.一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1-4任一所述的方法,或执行如权利要求5-12任一项所述的方法。
