服务调度方法及装置、服务器、计算机可读存储介质转让专利
申请号 : CN202110985172.9
文献号 : CN113434283B
文献日 : 2021-11-26
发明人 : 刘舟 , 杨帆 , 谢林廷 , 蓝汝淇 , 王俊锐 , 梁洪
申请人 : 广州三七互娱科技有限公司
摘要 :
权利要求 :
1.一种服务调度方法,其特征在于,包括:根据待调度的应用服务拆分的各任务,生成一一对应的部署节点;
根据各任务之间的依赖信息,生成服务调度拓扑图;所述服务调度拓扑图用于描述各部署节点间的依赖关系;
响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调度操作;所述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度;
当检测到所述依赖信息更新时,获取更新后的依赖信息形成的目标拓扑图,所述目标拓扑图用于描述各部署节点间更新后的依赖关系;
将所述目标拓扑图与服务调度拓扑图进行比对,根据比对结果更新服务调度拓扑图;
将更新后的所述服务调度拓扑图中被更新的部署节点发送至目标云商,以从目标云商中,获取对应的调度资源对被更新的部署节点进行初始化后,在目标云商中根据更新后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度。
2.根据权利要求1所述的服务调度方法,其特征在于,响应针对至少一个目标云商的服务调度请求,将所述服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调度操作,包括:响应针对各目标云商的服务调度请求,将所述服务调度拓扑图发送至目标云商,以在各所述目标云商中根据所述服务调度拓扑图获取对应的调度资源集并行进行服务调度操作,所述各目标云商为不同云商。
3.根据权利要求2所述的服务调度方法,其特征在于,将所述服务调度拓扑图发送至目标云商,以在各目标云商中根据服务调度拓扑图获取对应的调度资源集并行进行服务调度操作,包括:
将所述服务调度拓扑图共享至各目标云商,以在各目标云商中根据服务调度拓扑图获取对应的调度资源集并行进行服务调度操作。
4.根据权利要求1所述的服务调度方法,其特征在于,所述依赖关系包括前置依赖,所述前置依赖用于表示某一部署节点的调度依赖于其余部署节点;
根据所述服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度,包括:
根据所述服务调度拓扑图检测各部署节点间是否存在前置依赖,并将不存在前置依赖的初始化后的各部署节点进行并行调度。
5.根据权利要求4所述的服务调度方法,其特征在于,还包括:将存在前置依赖的初始化后的各部署节点,根据所述前置依赖对应的调度顺序进行调度。
6.根据权利要求1‑5任一项所述的服务调度方法,其特征在于,所述调度资源集通过统一的应用程序编程接口从目标云商中获取。
7.一种服务调度装置,其特征在于,包括:节点生成模块,用于根据待调度的应用服务拆分的各任务,生成一一对应的部署节点;
拓扑图生成模块,用于根据各任务之间的依赖信息,生成服务调度拓扑图;所述服务调度拓扑图用于描述各部署节点间的依赖关系;
服务调度模块,用于响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调度操作;所述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度;
服务调度模块还用于:当检测到依赖信息更新时,获取更新后的依赖信息形成的目标拓扑图,目标拓扑图用于描述各部署节点间更新后的依赖关系;将目标拓扑图与服务调度拓扑图进行比对,根据比对结果更新服务调度拓扑图;将更新后的服务调度拓扑图中被更新的部署节点发送至目标云商,以从目标云商中,获取对应的调度资源对被更新的部署节点进行初始化后,在目标云商中根据更新后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度。
8.一种服务器,包括:存储器、处理器及记录在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的服务调度方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1‑6任一项所述的服务调度方法。
说明书 :
服务调度方法及装置、服务器、计算机可读存储介质
技术领域
背景技术
通常是在应用服务进程启动之前,服务器针对不同的云商部署各自的部署节点集群形成服
务调度拓扑图,然后从云商中获取与部署节点集群中各部署节点对应的调度资源与服务调
度拓扑图绑定,形成待调度服务拓扑结构,以在启动应用服务时,根据服务器存储的指定云
商的服务调度拓扑图和调度资源形成的待调度服务拓扑结构,将待调度服务拓扑结构发送
至云商进行部署节点集群的服务调度。
扑图和对应的调度资源,以及需针对不同的云商预先存储对应的待调度服务拓扑结构,并
将待调度服务拓扑结构与对应的云商进行绑定,才可进行服务调度,导致服务器需预先存
储大量不同的待调度服务拓扑结构,存储压力大,服务调度的灵活性差,操作步骤复杂,同
时容易造成配置上的混乱和错误,给配置人员带来不便。
发明内容
调度服务拓扑结构,减少服务器的存储压力,提高服务调度的便捷性。
调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获取与服务调度拓扑
图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据服
务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调
度。
度操作,包括:
度操作,所述各目标云商为不同云商。
后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服
务调度。
务调度操作;所述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获
取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在
目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署
节点进行服务调度。
例所述的服务调度方法。
的服务调度方法。
时,只需要将服务调度拓扑图发送至目标云商,以从目标云商中获取调度资源对调度拓扑
图中的部署节点初始化后,通过初始化后的各部署节点进行服务调度,无需针对不同的云
商在调度服务进程启动前重复地设置对应的调度资源和服务调度拓扑图,同时服务器无需
针对不同的目标云商存储大量的待调度服务拓扑结构,只需针对调度服务存储一个服务调
度拓扑图,减少服务器的存储压力,提高服务调度的便捷性。
附图说明
具体实施方式
每个技术特征和整体技术方案,但其不能理解为对本发明保护范围的限制。
个目标云商130,其中目标云商可以由云服务器或云服务器集群组成。终端110用于向服务
器120发送待调度的应用服务和由应用服务拆分成的各任务之间的依赖信息,服务器120用
于根据各任务生成对应的各部署节点后,根据各任务之间的依赖信息,生成用于描述各部
署节点之间的依赖关系的服务调度拓扑图。在服务器120接收到终端110发送的针对至少一
个目标云商130的服务调度请求时,将所述服务调度拓扑图发送至目标云商,以在目标云商
130中获取与各部署节点一一对应的各调度资源对服务调度拓扑图中的各部署节点进行初
始化后,在目标云商130中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始
化后的各所述部署节点进行服务调度。
扑图中的部署节点初始化后,通过初始化后的各部署节点进行服务调度,从而避免了不同
云商调度资源的差异在调度服务进程启动前,需要针对不同云商绑定对应的待调度服务拓
扑结构进行服务调度,无需针对不同的云商在调度服务进程启动前重复地设置对应的调度
资源和服务调度拓扑图,同时服务器无需针对不同的目标云商存储大量的待调度服务拓扑
结构,只需针对调度服务存储一个服务调度拓扑图,减少服务器的存储压力,提高服务调度
的便捷性。
资源和网络资源这三种资源的调度任务,因此可根据这三种资源的调度任务,形成部署节
点A、部署节点B和部署节点C。每个部署节点代表一种需要被调度的资源,如部署节点A代表
在进行服务调度时需要进行配置资源的调度。
行,将各部署节点根据各任务之间的依赖信息,生成描述各部署节点间的依赖关系的服务
调度拓扑图。如图3所示,该服务服务调度拓扑图指示部署节点A为部署节点B和部署节点C
的前置依赖,部署节点B为部署节点C的前置依赖。使在进行服务调度时,部署节点A、部署节
点B和部署节点C按箭头所示的顺序进行调度,即当部署节点A完成调度后,再执行部署节点
B的服务调度,然后再执行部署节点C的服务调度。
述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获取与服务调度拓
扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据
服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调
度。
器将服务调度拓扑图发送至对应的目标云商,以在目标云商中获取与各部署节点对应一一
的各调度资源记录到各部署节点中,对各部署节点进行初始化。如服务器当前所处的云环
境为华为云,服务器则将服务调度拓扑图发送至华为云,以在华为云中获取华为云的配置
资源写入图3中的部署节点A,对部署节点A进行初始化,获取华为云的存储资源写入图3中
的部署节点B,对部署节点B进行初始化,获取华为云的网络资源写入图3中的部署节点C,对
部署节点B进行初始化。在将各调度资源写入到各部署节点中,完成各部署节点的初始化
后,在华为云中根据服务调度拓扑图中记录的各部署节点间的依赖关系,将完成初始化后
的各部署节点形成基于华为云的服务调度任务在华为云的云环境下进行服务调度。
点初始化后,通过初始化后的各部署节点进行服务调度,从而避免了不同云商调度资源的
差异在调度服务进程启动前,需要针对不同云商绑定对应的待调度服务拓扑结构进行服务
调度,无需针对不同的云商在调度服务进程启动前重复地设置对应的调度资源和服务调度
拓扑图,同时服务器无需针对不同的目标云商存储大量的待调度服务拓扑结构,只需针对
调度服务存储一个服务调度拓扑图,减少服务器的存储压力,提高服务调度的便捷性。
服务调度请求,将服务调度拓扑图发送至目标云商,以在各目标云商中根据服务调度拓扑
图获取对应的各调度资源集并行进行服务调度操作,各目标云商为不同云商。
务调度,因此服务调度拓扑图可被多个目标云商共用。当接收到针对多个目标云商的服务
调度请求时,如阿里云和华为云的服务调度请求,将服务调度拓扑图发送至阿里云,以将阿
里云的各调度资源写入服务调度拓扑图中的各部署节点,对各部署节点进行初始化,在阿
里云中形成基于阿里云的服务调度任务后,再将服务调度拓扑图发送至华为云,以将华为
云的各调度资源写入服务调度拓扑图中的各部署节点,对各部署节点进行初始化,在华为
云中形成基于华为云的服务调度任务。最后将基于阿里云的服务调度任务和基于华为云的
服务调度任务进行并行调度,从而提高服务调度的效率。
至各目标云商,以在各目标云商中根据服务调度拓扑图获取对应的各调度资源集并行进行
服务调度操作。
图共享至华为云,以在阿里云中获取对应的调度资源写入第一拓扑蓝图中的部署节点形成
基于阿里云的服务调度任务,同时在华为云中获取对应的调度资源写入第二拓扑蓝图中的
部署节点形成基于华为云的服务调度任务后,将基于阿里云的服务调度任务和基于华为云
的服务调度任务进行并行调度。
署节点A被调度后,才可调度部署节点B。而由于并非每个部署节点均存在前置依赖,此时为
提高服务调度效率,根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后
的各部署节点进行服务调度,包括:根据服务调度拓扑图检测各部署节点间是否存在前置
依赖,并将不存在前置依赖的初始化后的各部署节点进行并行调度,将存在前置依赖的初
始化后的各部署节点,根据前置依赖对应的调度顺序进行调度。
无需依赖于其余部署节点的调度,此时则将目标云商的各调度资源分别写入部署节点A、部
署节点B和部署节点C进行部署节点的初始化形成服务调度任务后,在服务调度时对初始化
后的部署节点A和初始化后的部署节点B进行并行调度。而部署节点A和部署节点B是部署节
点C的前置依赖,则在服务调度时需在检测到初始化后的部署节点A和初始化后的部署节点
B完成服务调度后,再进行初始化后的部署节点C的服务调度。
任务,此时可根据应用服务的任务生成各新的部署节点,并基于各新的部署节点的依赖关
系形成新的服务调度拓扑图后,将新的服务调度拓扑图替换旧的服务调度拓扑图进行服务
调度。但由于需要将服务调度拓扑图进行替换,因此此时利用旧的服务调度拓扑图运行的
调度任务需中止,同时需重新写入各部署节点对应的调度资源,操作较为繁琐,因此在一实
施例中,如图5所示,为另一个实施例中服务调度方法的流程示意图。在本实施例中,除图2
所示步骤外,还包括:
于新的部署节点与其余旧的部署节点A、部署节点B和部署节点C形成新的服务调度拓扑图
作为目标拓扑图。
各部署节点的依赖关系,其中目标拓扑图与服务调度拓扑图记录的部署节点A、部署节点B
和部署节点C之间的依赖关系相同,此时则将部署节点D和部署节点D与其余部署节点的依
赖关系,加入服务调度拓扑图中,以更新服务调度拓扑图。
后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服
务调度。
此时只需将部署节点D发送至目标云商,从目标云商中获取与部署节点D对应的调度资源写
入部署节点D中,对部署节点D进行初始化,无需重新对已经初始化后的部署节点A、部署节
点B和部署节点C中的调度资源进行修改,在部署节点D中根据对应的调度资源进行初始化
后,即可根据更新后的服务调度拓扑图记录的依赖关系,将初始化后的部署节点A、初始化
后的部署节点B、初始化后的部署节点C和初始化后的部署节点D直接形成服务调度任务在
目标云商中进行调度,提高服务调度效率。
服务调度操作;所述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中
获取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,
在目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部
署节点进行服务调度。
标云商为不同云商。
根据比对结果更新服务调度拓扑图;将更新后的服务调度拓扑图中被更新的部署节点发送
至目标云商,以从目标云商中,获取对应的调度资源对被更新的部署节点进行初始化后,在
目标云商中根据更新后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后
的各部署节点进行服务调度。
例所述的服务调度方法。
装置的各个程序模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的
本发明各个实施例的服务调度方法中的步骤。
步骤。此处服务调度方法的步骤可以是上述各个实施例的服务调度方法中的步骤。
骤。此处服务调度方法的步骤可以是上述各个实施例的服务调度方法中的步骤。
中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的记录介质可为磁
碟、光盘、ROM((Read‑Only Memory,只读记录记忆体)或RAM(Random Access Memory,随机
记录记忆体)等。
本发明的保护范围。