本技术涉及虚拟化,尤其涉及一种基于云服务平台的资源调度方法及装置。
背景技术:
1、基础设施即服务(infrastructure as a service,iaas)是一种云计算服务模式。在该模式下,云服务提供商向用户提供诸如服务器、存储、网络等基础设施服务。用户能够根据需要租用这些资源,而无需购置和维护硬件设备,极大地节约了成本,同时大幅提高了灵活性。
2、在iaas环境中,高负载堆叠通常是指多个高资源需求的租户或者应用程序集中运行在同一物理资源(如服务器)上,导致资源争抢和性能下降,因此,如何改善资源调度提高资源利用率和降低资源开销成本,以在满足多租户资源需求同时减少多租户资源争抢。
技术实现思路
1、有鉴于此,本技术实施例提供了一种基于云服务平台的资源调度方法及装置,用于改善资源调度提高资源利用率和降低资源开销成本,以在满足多租户资源需求同时减少多租户资源争抢。
2、为了实现上述目的,本技术实施例提供技术方案如下:
3、第一方面,本技术实施例提供了基于云服务平台的资源调度方法,包括:
4、获取云服务平台上租户申请部署的待调度虚拟机的部署属性信息;
5、从所述云服务平台的虚拟机画像集中获取与所述待调度虚拟机的部署属性信息匹配的目标虚拟机画像;所述虚拟机画像集包括基于所述云服务平台上的虚拟机的历史运行数据分析生成的多个虚拟机画像;所述虚拟机画像用于描述虚拟机对应的部署属性信息和资源消耗信息,其中,所述资源消耗信息用于描述与所述虚拟机的部署属性信息相匹配的虚拟机的至少一种资源的预期消耗量;
6、根据所述目标虚拟机画像中的资源消耗信息对所述待调度虚拟机进行调度。
7、作为本技术实施例一种可选的实施方式,所述根据所述目标虚拟机画像中的资源消耗信息对所述待调度虚拟机进行调度,包括:
8、根据所述目标虚拟机画像中的资源消耗信息,获取所述待调度虚拟机的预期资源消耗量;
9、获取云服务平台的宿主机集群中各个宿主机的资源余量,所述资源余量包括所述宿主机上闲置的所述至少一种资源的量;
10、将所述待调度虚拟机调度至所述宿主机集群中所述资源余量大于或等于所述预期资源消耗量的目标宿主机上。
11、作为本技术实施例一种可选的实施方式,在将所述待调度虚拟机调度至所述宿主机集群中所述资源余量大于或等于所述预期资源消耗量的目标宿主机上之后,所述方法还包括:
12、根据所述预期资源消耗量对所述目标宿主机的资源余量进行更新。
13、作为本技术实施例一种可选的实施方式,所述至少一种资源,包括:虚拟处理器;所述方法还包括:
14、从所述历史运行数据中获取目标虚拟机的虚拟处理器的使用信息;所述目标虚拟机为与所述待调度虚拟机的部署属性信息匹配的虚拟机,所述使用信息包括用于描述虚拟处理器的利用率的至少一种指标;
15、根据所述目标虚拟机的虚拟处理器的使用信息,获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率;
16、根据所述与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率,生成所述目标虚拟机画像。
17、作为本技术实施例一种可选的实施方式,所述使用信息,包括:所述虚拟处理器的平均利用率、第一利用率以及第二利用率,所述第一利用率和所述第二利用率分别为所述目标虚拟机的虚拟处理器的利用率的第一百分位数和第二百分位数;所述第一百分位数小于所述第二百分位数;所述根据所述目标虚拟机的虚拟处理器的使用信息,获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率,包括:
18、计算所述第一利用率与所述平均利用率的差值,以获取第一负载振幅;
19、计算所述第二利用率与所述平均利用率的差值,以获取第二负载振幅;
20、根据所述第一负载振幅和所述第二负载振幅,基于所述平均利用率或者所述第一利用率或者所述第二利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率。
21、作为本技术实施例一种可选的实施方式,所述根据所述第一负载振幅和所述第二负载振幅,基于所述平均利用率或者所述第一利用率或者所述第二利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率,包括:
22、当所述第二负载振幅小于或等于预设阈值,则基于所述平均利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率;
23、当所述第二负载振幅大于所述预设阈值,且所述第一负载振幅小于或等于所述预设阈值,则基于所述第一利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率;
24、当所述第一负载振幅大于所述预设阈值,则基于所述第二利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率。
25、作为本技术实施例一种可选的实施方式,所述根据所述目标虚拟机画像中的资源消耗信息,获取所述待调度虚拟机的预期资源消耗量,包括:
26、根据所述目标虚拟机画像中的资源消耗信息获取所述待调度虚拟机的预期虚拟处理器利用率;
27、根据所述待调度虚拟机的虚拟处理器的数量和所述待调度虚拟机的预期虚拟处理器利用率,获取所述待调度虚拟机的预期虚拟处理器消耗量。
28、作为本技术实施例一种可选的实施方式,所述至少一种资源,包括:虚拟处理器;在获取所述云服务平台的宿主机集群中各个宿主机的资源余量之前,所述方法还包括:
29、获取所述宿主机集群中各个宿主机的虚拟处理器数量;
30、根据所述宿主机集群中各个宿主机的虚拟处理器数量以及预设虚拟处理器利用率,获取所述宿主机集群中各个宿主机的可用虚拟处理器总量;
31、根据所述宿主机集群中的各个宿主机的可用虚拟处理器总量获取所述宿主机集群中的各个宿主机的虚拟处理器余量的初始值。
32、作为本技术实施例一种可选的实施方式,所述从所述云服务平台的虚拟机画像集中获取与所述待调度虚拟机的部署属性信息匹配的目标虚拟机画像,包括:
33、根据所述待调度虚拟机的部署属性信息,获取所述待调度虚拟机的哈希值;
34、根据所述虚拟机画像集中各个虚拟机画像的部署属性信息,获取所述虚拟机画像集中各个虚拟机画像的哈希值;
35、将所述虚拟机画像集中与所述待调度虚拟机的哈希值相同的虚拟机画像确定为所述目标虚拟机画像。
36、作为本技术实施例一种可选的实施方式,所述方法还包括:在根据所述待调度虚拟机的部署属性信息,获取待调度虚拟机的哈希值之前,对所述待调度虚拟机的部署属性信息进行模糊化处理;
37、在根据所述虚拟机画像集中各个虚拟机画像的部署属性信息,获取所述虚拟机画像集中各个虚拟机画像的哈希值之前,对所述虚拟机画像集中各个虚拟机画像的部署属性信息进行模糊化处理。
38、第二方面,本技术实施例提供了一种基于云服务平台的资源调度装置,包括:
39、获取单元,用于获取云服务平台上租户申请部署的待调度虚拟机的部署属性信息;
40、匹配单元,用于从所述云服务平台的虚拟机画像集中获取与所述待调度虚拟机的部署属性信息匹配的目标虚拟机画像;所述虚拟机画像集包括基于所述云服务平台上的虚拟机的历史运行数据分析生成的多个虚拟机画像;所述虚拟机画像用于描述虚拟机对应的部署属性信息和资源消耗信息,其中,所述资源消耗信息用于描述与所述虚拟机的部署属性信息相匹配的虚拟机的至少一种资源的预期消耗量;
41、调度单元,用于根据所述目标虚拟机画像中的资源消耗信息对所述待调度虚拟机进行调度。
42、作为本技术实施例一种可选的实施方式,所述调度单元,具体用于根据所述目标虚拟机画像中的资源消耗信息,获取所述待调度虚拟机的预期资源消耗量;获取云服务平台的宿主机集群中各个宿主机的资源余量,所述资源余量包括所述宿主机上闲置的所述至少一种资源的量;将所述待调度虚拟机调度至所述宿主机集群中所述资源余量大于或等于所述预期资源消耗量的目标宿主机上。
43、作为本技术实施例一种可选的实施方式,所述调度单元,还用于在将所述待调度虚拟机调度至所述宿主机集群中所述资源余量大于或等于所述预期资源消耗量的目标宿主机上之后,根据所述预期资源消耗量对所述目标宿主机的资源余量进行更新。
44、作为本技术实施例一种可选的实施方式,所述至少一种资源,包括:虚拟处理器;所述匹配单元,还用于从所述历史运行数据中获取目标虚拟机的虚拟处理器的使用信息;根据所述目标虚拟机的虚拟处理器的使用信息,获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率;根据所述与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率,生成所述目标虚拟机画像;
45、其中,所述目标虚拟机为与所述待调度虚拟机的部署属性信息匹配的虚拟机,所述使用信息包括用于描述虚拟处理器的利用率的至少一种指标。
46、作为本技术实施例一种可选的实施方式,所述使用信息,包括:所述虚拟处理器的平均利用率、第一利用率以及第二利用率,所述第一利用率和所述第二利用率分别为所述目标虚拟机的虚拟处理器的利用率的第一百分位数和第二百分位数;所述第一百分位数小于所述第二百分位数;
47、所述匹配单元,具体用于计算所述第一利用率与所述平均利用率的差值,以获取第一负载振幅;计算所述第二利用率与所述平均利用率的差值,以获取第二负载振幅;根据所述第一负载振幅和所述第二负载振幅,基于所述平均利用率或者所述第一利用率或者所述第二利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率。
48、作为本技术实施例一种可选的实施方式,所述匹配单元,具体用于当所述第二负载振幅小于或等于预设阈值,则基于所述平均利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率;当所述第二负载振幅大于所述预设阈值,且所述第一负载振幅小于或等于所述预设阈值,则基于所述第一利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率;当所述第一负载振幅大于所述预设阈值,则基于所述第二利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率。
49、作为本技术实施例一种可选的实施方式,所述调度单元,具体用于根据所述目标虚拟机画像中的资源消耗信息获取所述待调度虚拟机的预期虚拟处理器利用率;根据所述待调度虚拟机的虚拟处理器的数量和所述待调度虚拟机的预期虚拟处理器利用率,获取所述待调度虚拟机的预期虚拟处理器消耗量。
50、作为本技术实施例一种可选的实施方式,所述至少一种资源,包括:虚拟处理器;所述调度单元,还用于在获取所述云服务平台的宿主机集群中各个宿主机的资源余量之前,获取所述宿主机集群中各个宿主机的虚拟处理器数量;根据所述宿主机集群中各个宿主机的虚拟处理器数量以及预设虚拟处理器利用率,获取所述宿主机集群中各个宿主机的可用虚拟处理器总量;根据所述宿主机集群中的各个宿主机的可用虚拟处理器总量获取所述宿主机集群中的各个宿主机的虚拟处理器余量的初始值。
51、作为本技术实施例一种可选的实施方式,所述匹配单元,具体用于根据所述待调度虚拟机的部署属性信息,获取所述待调度虚拟机的哈希值;根据所述虚拟机画像集中各个虚拟机画像的部署属性信息,获取所述虚拟机画像集中各个虚拟机画像的哈希值;将所述虚拟机画像集中与所述待调度虚拟机的哈希值相同的虚拟机画像确定为所述目标虚拟机画像。
52、作为本技术实施例一种可选的实施方式,所述匹配单元,还用于在根据所述待调度虚拟机的部署属性信息,获取待调度虚拟机的哈希值之前,对所述待调度虚拟机的部署属性信息进行模糊化处理,以及在根据所述虚拟机画像集中各个虚拟机画像的部署属性信息,获取所述虚拟机画像集中各个虚拟机画像的哈希值之前,对所述虚拟机画像集中各个虚拟机画像的部署属性信息进行模糊化处理。
53、第三方面,本技术实施例提供一种电子设备,包括:存储器和处理器,所述存储器用于存储计算机程序所述处理器用于在执行计算机程序时,使得所述电子设备实现上述任一实施方式所述的基于云服务平台的资源调度方法。
54、第四方面,本技术实施例提供一种计算机可读存储介质,当所述计算机程序被计算设备执行时,使得所述计算设备实现上述任一基于云服务平台的资源调度方法。
55、第五方面,本技术实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机实现上述任一基于云服务平台的资源调度方法。
56、本技术实施例提供的基于云服务平台的资源调度方法首先获取云服务平台上租户申请部署的待调度虚拟机的部署属性信息,然后从云服务平台的虚拟机画像集中获取与所述待调度虚拟机的部署属性信息匹配的目标虚拟机画像,以及根据所述目标虚拟机画像中的资源消耗信息对所述待调度虚拟机进行调度。由于本技术实施例可以基于云服务平台上的虚拟机的历史运行数据分析生成的多个虚拟机画像,且虚拟机画像用于描述虚拟机对应的部署属性信息和资源消耗信息,资源消耗信息由用于描述与所述虚拟机的部署属性信息相匹配的虚拟机的至少一种资源的预期消耗量,因此本技术可以根据目标虚拟机画像中的资源消耗信息获取待调度虚拟机的预期资源消耗量,以及根据待调度虚拟机的预期资源消耗量对待调度虚拟机进行调度,因此本技术实施例可以避免将高资源需求的虚拟机调度到同一宿主机上,从而改善资源调度提高资源利用率和降低资源开销成本,以在满足多租户资源需求同时减少多租户资源争抢。
1.一种基于云服务平台的资源调度方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标虚拟机画像中的资源消耗信息对所述待调度虚拟机进行调度,包括:
3.根据权利要求2所述的方法,其特征在于,在将所述待调度虚拟机调度至所述宿主机集群中所述资源余量大于或等于所述预期资源消耗量的目标宿主机上之后,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述至少一种资源,包括:虚拟处理器;所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述使用信息,包括:所述虚拟处理器的平均利用率、第一利用率以及第二利用率,所述第一利用率和所述第二利用率分别为所述目标虚拟机的虚拟处理器的利用率的第一百分位数和第二百分位数;所述第一百分位数小于所述第二百分位数;所述根据所述目标虚拟机的虚拟处理器的使用信息,获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率,包括:
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一负载振幅和所述第二负载振幅,基于所述平均利用率或者所述第一利用率或者所述第二利用率获取与所述虚拟机的部署属性信息相匹配的虚拟机的虚拟处理器的预期利用率,包括:
7.根据权利要求2所述的方法,其特征在于,所述根据所述目标虚拟机画像中的资源消耗信息,获取所述待调度虚拟机的预期资源消耗量,包括:
8.根据权利要求3所述的方法,其特征在于,所述至少一种资源,包括:虚拟处理器;在获取所述云服务平台的宿主机集群中各个宿主机的资源余量之前,所述方法还包括:
9.根据权利要求1所述的方法,其特征在于,所述从所述云服务平台的虚拟机画像集中获取与所述待调度虚拟机的部署属性信息匹配的目标虚拟机画像,包括:
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:在根据所述待调度虚拟机的部署属性信息,获取待调度虚拟机的哈希值之前,对所述待调度虚拟机的部署属性信息进行模糊化处理;
11.一种基于云服务平台的资源调度装置,其特征在于,包括:
12.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序所述处理器用于在执行计算机程序时,使得所述电子设备实现权利要求1-10任一项所述的基于云服务平台的资源调度方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,当所述计算机程序被计算设备执行时,使得所述计算设备实现权利要求1-10任一项所述的基于云服务平台的资源调度方法。
14.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机实现权利要求1-10任一项所述的基于云服务平台的资源调度方法。