虚拟机调度方法、电子设备及存储介质与流程

文档序号:28421473发布日期:2022-01-11 22:17阅读:72来源:国知局
虚拟机调度方法、电子设备及存储介质与流程

1.本技术涉及云计算领域,尤其涉及一种虚拟机调度方法、电子设备及存储介质。


背景技术:

2.相关技术中,基于分布式系统中节点的共享资源的使用情况或资源性能进行分布式资源调度(drs,distributed resource scheduler),然而,在分布式系统中的节点发生故障的场景下,有可能导致该节点中的虚拟机的性能下降,甚至影响虚拟机的正常运行。


技术实现要素:

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.图1为本技术实施例提供的虚拟机调度系统的示意图;
35.图2为本技术实施例提供的虚拟机调度方法的实现流程示意图;
36.图3为本技术应用实施例提供的虚拟机调度方法的实现流程示意图;
37.图4为本技术实施例提供的电子设备的结构示意图;
38.图5为本技术实施例提供的电子设备的硬件组成结构示意图。
具体实施方式
39.drs是指对资源池资源负载的动态监控,合理触发均匀分配规则,最终实现资源池中的物理服务器之间重新分布虚拟机的目的。
40.相关技术中,主要采用以下两种方式进行drs:
41.1、基于分布式系统中的节点的共享资源进行drs,共享资源包括处理器、内存和存储资源;分布式系统是由一组通过网络进行通信、为了完成共同的任务而协调工作的节点组成的系统;
42.2、将虚拟机部署到分布式系统中的节点上,通过测试得出不同节点的资源的性能指标的指标值,得到性能数据矩阵,基于该性能数据矩阵重新部署虚拟机。
43.然而,资源的性能数据数动态变化的,在分布式系统中的节点发生故障的场景下,例如,发生网络故障等,共享资源会减少,资源的性能指标的指标值可能会降低,无论是方案1还是方案2均有可能导致该节点中的虚拟机的性能下降。
44.基于此,本技术提供了一种虚拟机调度方法,基于第一集群中每个可用节点使用的每个网口对应的第一信息,确定出每个可用节点的第一得分;基于每个可用节点的第一得分和共享资源的使用率,将第一虚拟机部署至满足设定条件的可用节点;第一得分表征可用节点的网口健康度,第一虚拟机包括所述第一集群的故障节点中的虚拟机和/或新的虚拟机。由此,可以根据可用节点的网口健康度和共享资源的使用率来部署第一虚拟机,提高了第一虚拟机的数据传输的可靠性和第一虚拟机的数据处理效率,从而可以提高第一虚拟机的性能。
45.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
46.图1为本技术实施例提供的虚拟机调度系统的示意图。如图1所示,虚拟机调度系统包括电子设备11和多个节点12。其中,多个节点12构成第一集群,每个节点12中可以部署虚拟机。电子设备11用于对虚拟机进行调度。
47.需要说明的是,本实施例中,电子设备11与第一集群中的所有节点是分离设置,相互独立的;第一集群可以配置为分布式系统。在一些实施例中,也可以将电子设备11和第一集群中的任一可用节点集成在一起,也就是说,将调度虚拟机的功能集成至第一集群中的任一可用节点。当第一集群中的节点包括主节点的情况下,可以将调度虚拟机的功能集成至第一集群中的主节点。
48.下面将通过实施例并结合附图详细说明电子设备11调度虚拟机的实现过程。
49.图2为本技术实施例提供的虚拟机调度方法的实现流程示意图,其中,流程的执行主体为终端或服务器等电子设备,该电子设备可以与第一集群中的每个节点进行通信。如图2示出的,虚拟机调度方法包括:
50.步骤201:基于第一集群中每个可用节点使用的每个网口对应的第一信息,确定出每个可用节点的第一得分;其中,所述第一得分表征可用节点的网口健康度。
51.这里,电子设备可以实时获取第一集群中每个可用节点使用的每个网口对应的第一信息,或者,按照设定时间间隔获取第一集群中每个可用节点使用的每个网口对应的第一信息。其中,第一信息为网口的相关信息。需要说明的是,每个节点中包括至少一张网卡,每张网卡设有至少一个网口。
52.电子设备按照设定策略,基于第一集群中每个可用节点使用的每个网口对应的第一信息,确定出每个可用节点的第一得分。设定策略表征计算第一得分的方法。
53.在一些实施例中,所述第一信息包括网口类型和至少一个设定指标的指标值。其中,网口类型包括以下至少一种:
54.第一网口类型,表征在超融合基础架构(hci,hyper converged infrastructure)平台上承载云计算平台管理相关流量的网口;
55.第二网口类型,表征在hci平台上承载客户业务东西向流量的网口;
56.第三网口类型,表征在hci平台上承载客户业务南北向流量的网口;
57.第四网口类型,表征在hci平台上承载虚拟机的数据存储流量的网口;
58.在实际应用中,第一网口类型称为管理口,第二网口类型称为虚拟扩展局域网(vxlan,virtual extensible local area network)网口,第三网口类型称为业务口,第四网口类型称为存储口。
59.需要说明的是,第一网口类型、第二网口类型、第三网口类型和第四网口类型是按照网口可实现的功能,或网口扮演的角色来划分的。
60.考虑到第一集群中的节点发生的故障通常为网络故障,网络故障通常跟网卡相关,在一些实施例中,所述设定指标包括以下至少之一:
61.丢包率;
62.时延;
63.错报率;
64.网卡的闪断次数;
65.网卡上光模块的光衰。
66.在实际应用中,第一信息中至少包括丢包率和时延这两个设定指标。
67.考虑到不同类型的网口的可靠性要求可能不同,因此,不同类型的网口对应的相同设定指标对应的设定告警阈值也可能不同,为了准确地确定出每个可用节点的第一得分,在一些实施例中,在第一信息包括网口类型和至少一个设定指标的指标值的基础上,所述基于第一集群中每个可用节点使用的每个网口的第一信息,确定出每个可用节点的第一得分时,所述方法包括:
68.基于第一节点使用的每个网口对应的第一信息和每个设定指标对应的至少一个设定告警阈值,确定出第一节点对应的每种网口类型的第二得分;其中,第一节点表征第一集群中的任一可用节点。
69.这里,电子设备从第一节点对应的第一信息中提取出网口类型和每个设定指标的指标值,以及从数据库中获取每个设定指标对应的所有设定告警阈值。其中,该数据库可以是本地数据库,也可以是非本地数据库。每个设定指标对应至少一个设定告警阈值。
70.在实际应用中,不同类型的网口对应相同的设定指标,不同类型的网口对应的设定指标的设定告警阈值不完全相同。示例性地,不同类型的网口对应的设定指标的设定告
警阈值如下所示:
71.网口类型丢包率告警阈值时延告警阈值第一网口类型10%50ms第二网口类型10%50ms第三网口类型10%50ms第四网口类型0.2%1.2ms
72.电子设备基于第一节点使用的每个网口的每个设定指标的指标值和每个设定指标对应的至少一个设定告警阈值,确定出每个网口的得分;基于第一节点使用的每个网口对应的网口类型,以及每个网口的得分,确定出第一节点对应的每种网口类型的第二得分。
73.需要说明的是,第一节点使用的所有网口可以属于同种网口类型;也可以属于不同的网口类型。不同网口类型对应的网口的数量可以为一个,也可以为至少两个。
74.在第一节点使用的所有网口对应的网口类型均不同的情况下,即,同种网口类型的网口只有一个,网口的得分即为对应网口类型的第二得分。
75.在第一节点使用的至少两个网口属于第一网口类型的情况下,基于第一网口类型对应的每个网口的得分,确定出第一总分;基于第一网口类型对应的每个网口的设定总分,确定出第二总分;将第一总分与第二总分之商,确定为第一网口类型的第二得分。其中,第一总分表征第一网口类型对应的所有网口的得分的总和,第二总分表征第一网口类型对应的所有网口的设定总分的总和。设定总分可以为10分,也可以为100分。
76.当第一节点使用的所有网口均属于第一网口类型时,第一网口类型的第二得分,即为第一节点的第一得分。第一网口类型泛指任一网口类型。
77.当第一节点使用的所有网口属于不同网口类型时,对每种网口类型的第二得分进行加权求和,得到第一节点的第一得分。
78.需要说明的是,由于不同节点对应的不同类型的网口的数量不同,为了采用相同的数值范围统一度量可用节点的网口健康度,从而准确地体现出不同可用节点的网口健康度的差异,本技术中,可用节点的第一得分以及每种网口类型对应的第二得分均,大于或等于0且小于或等于1,或者0到100%之间的任一百分比。
79.为了准确地确定出第一网口类型的第二得分,从而提高部署至可用节点的第一虚拟机的数据传输的可靠性,在一些实施例中,在第一节点使用的至少两个第一网口属于第一网口类型的情况下,所述确定出第一节点对应的每种网口类型的第二得分时,所述方法包括:
80.基于每个第一网口对应的每个设定指标的指标值和每个设定指标对应的至少一个设定告警阈值,确定出每个第一网口的得分;
81.基于每个第一网口对应的设定总分和所有第一网口的得分,确定出第一网口类型的第二得分。
82.这里,第一网口泛指第一节点使用的所有网口中的任意一个网口。
83.电子设备可以基于设定指标的指标值大于对应的设定告警阈值的数量,确定出对应的第一网口的得分,即,第一网口对应的设定指标的指标值每大于对应的一个设定告警阈值,在第一网口对应的设定总分的基础上分数减1,由此,确定出每个第一网口的得分。
84.电子设备也可以基于每个第一网口对应的每个设定指标的指标值和每个设定指
标对应的所有设定告警阈值,确定出每个设定指标对应的阈值范围,从而得到不同的告警等级对应的阈值范围;基于第一网口对应的设定总分,设置每个设定指标对应的阈值范围对应的设定分数;基于第一网口对应的每个设定指标的指标值和对应的所有阈值范围,确定出每个设定指标的指标值所处的第一阈值范围,基于确定出的每个第一阈值范围对应的第一设定分数,以及设定指标的总数,确定出第一网口对应的得分。其中,每个告警等级对应的设定分数均小于第一网口对应的设定总分,且告警等级越高对应的设定分数越小。
85.需要说明的是,当第一网口对应一个设定指标时,该设定指标所处的第一阈值范围对应的第一设定分数,即为第一网口的得分;当第一网口对应至少两个设定指标时,为防止最终确定出的第一网口的得分大于对应的设定总分,基于第一网口对应的每个设定指标对应的设定权重,对确定出每个第一阈值范围对应的第一设定分数进行加权求和,得到第一网口的得分。其中,第一网口对应的所有设定指标对应的设定权重的总和为1。设定指标对网口健康度的影响越大,对应的设定权重就越大。
86.在确定出每个第一网口的得分的情况下,基于每个第一网口对应的设定总分和所有第一网口的得分,确定出第一网口类型的第二得分。在实际应用中,将所有第一网口的得分的总和,除以所有第一网口对应的设定总分的总和,得到第一网口类型的第二得分。
87.例如,在第一网口类型包括两个第一网口,一个第一网口的得分为10,另一个第一网口的得分为8,每个第一网口的设定总分均为10分的情况下,第一网口类型的得分为:(10+8)/(10+10)=0.9,即,第一网口类型的网口健康度为90%。
88.为了准确地确定出第一网口类型的第二得分,从而进一步提高部署至可用节点的第一虚拟机的数据传输的可靠性,在一些实施例中,在所述第一信息包括至少两个设定指标的情况下,所述基于每个第一网口对应的每个设定指标的指标值和每个设定指标对应的至少一个设定告警阈值,确定出每个第一网口的得分,包括以下之一:
89.将第一网口对应的设定总分与第一数值的总和之间的差值,确定为第一网口的得分;其中,所述第一数值表征小于对应的指标值的设定告警阈值的总数;
90.基于阈值范围与设定分数之间的设定对应关系,确定出每个设定指标的指标值所处的阈值范围对应的第一设定分数;以及基于每个设定指标对应的第一设定分数确定出第一网口的得分;其中,所述阈值范围由设定指标对应的至少一个设定告警阈值得到。
91.这里,电子设备可以按照以下方式1或方式2确定出每个第一网口的得分:
92.方式1:电子设备基于第一网口对应的每个设定指标的指标值和每个设定指标对应的至少一个设定告警阈值,确定出小于对应的指标值的设定告警阈值的总数,得到对应的设定指标对应的第一数值,由此,确定出第一网口对应的每个设定指标对应的第一数值;确定出第一网口对应的第一数值的总和;基于第一网口对应的设定总分和第一网口对应的第一数量的总和,确定出第一网口的得分。其中,第一网口的得分等于第一网口对应的设定总分减去对应的第一数值的总和得到的值。
93.每个设定指标可以对应一个设定告警阈值,也可以对应至少两个告警阈值。例如,针对每个设定指标设置不同的告警等级,不同的告警等级对应不同的设定告警阈值。
94.示例性地,当每个设定指标对应一个设定告警阈值时,假设第一网口对应的设定总分为10,第一网口的丢包率为11%,时延为51ms,丢包率的设定告警阈值为10%,时延的设定告警阈值为50ms,此时,第一网口的得分为10-1-1=8。
95.示例性地,丢包率设置了10个告警等级,10个告警等级对应的设定告警阈值分别为:1%、2%、3%、4%、5%、6%、7%、8%、9%、10%。在第一网口的丢包率为5.1%,时延没有超高对应的设定告警阈值的情况下,第一网口的得分为:10-5=5。
96.方式2:电子设备基于第一网口对应的每个设定指标的指标值和每个设定指标对应的所有设定告警阈值,确定出每个设定指标对应的阈值范围,从而得到不同的告警等级对应的阈值范围;基于第一网口对应的设定总分,设置每个设定指标对应的阈值范围对应的设定分数;基于第一网口对应的每个设定指标的指标值和对应的所有阈值范围,确定出每个设定指标的指标值所处的第一阈值范围,基于第一网口对应的每个设定指标对应的设定权重,对确定出的每个第一阈值范围对应的第一设定分数进行加权求和,得到第一网口的得分。
97.其中,每个告警等级对应的设定分数均小于第一网口对应的设定总分,且告警等级越高对应的设定分数越小。第一网口对应的所有设定指标对应的设定权重的总和为1。设定指标对网口健康度的影响越大,对应的设定权重就越大。
98.示例性地,第一网口的设定总分为10分,第一网口对应丢包率和时延这两个设定指标;丢包率设置了10个告警等级,10个告警等级对应的设定告警阈值分别为:1%、2%、3%、4%、5%、6%、7%、8%、9%、10%,由此,得到10个告警范围和每个告警范围对应的设定分数如下:
99.第一告警范围,大于零且小于或等于1%,对应的设定分数为9;
100.第二告警范围,大于1%且小于或等于2%,对应的设定分数为8;
101.第三告警范围,大于2%且小于或等于3%,对应的设定分数为7;
102.第四告警范围,大于3且小于或等于4%,对应的设定分数为6;
103.第五告警范围,大于4%且小于或等于5%,对应的设定分数为5;
104.第六告警范围,大于5%且小于或等于6%,对应的设定分数为4;
105.第七告警范围,大于6%且小于或等于7%,对应的设定分数为7;
106.第八告警范围,大于7且小于或等于8%,对应的设定分数为3;
107.第九告警范围,大于8%且小于或等于9%,对应的设定分数为2;
108.第十告警范围,大于9%且小于或等于10%,对应的设定分数为1。
109.需要说明的是,当丢包率为零时,对应的设定分数为10。
110.为了保证确定出的第一网口的得分的可信度,电子设备采用上述方式1计算所有可用节点的每个第一网口的得分,或者采用上述方式2计算所有可用节点的每个第一网口的得分。
111.实际应用时,电子设备采用上述方式1计算所有可用节点的每个第一网口的得分。
112.考虑到第一集群中的同一个可用节点中可以使用不同的网口类型的网口,为了采用相同的数值范围统一度量可用节点的网口健康度,从而准确地体现出不同可用节点的网口健康度的差异,在一些实施例中,在第一信息包括网口类型和至少一个设定指标的指标值的基础上,在第一节点使用的网口对应至少两种网口类型的情况下,在所述确定出第一节点对应的每种网口类型的第二得分之后,所述方法还包括:
113.基于每种网口类型对应的设定权重,对第一节点对应的每种网口类型的第二得分进行加权求和,得到第一节点的第一得分。
114.这里,在第一节点使用的网口对应至少两种网口类型的情况下,在确定出第一节点对应的每种网口类型的第二得分之后,基于每种网口类型对应的设定权重,对第一节点对应的每种网口类型的第二得分进行加权求和,得到第一节点的第一得分。其中,不同网口类型对应的设定权重可以相同,也可以不同,所有网口类型分别对应的设定权重不完全相同。网口类型对应的设定权重表征对应的网口类型对虚拟机的性能的影响程度,网口类型对应的设定权重越大表征对应的网口类型对虚拟机的性能的影响越大。所有网口类型对应的设定权重的总和为1。
115.其中,第一网口类型对虚拟机的性能影响较小,第一网口类型对应的设定权重最小。
116.在实际应用中,在第一节点使用的网口对应的网口类型包括第一网口类型、第二网口类型、第三网口类型和第四网口类型的情况下,第一网口类型对应的设定权重为0.1,第二网口类型对应的设定权重为0.3,第三网口类型对应的设定权重为0.3,第四网口类型对应的设定权重为0.3。
117.步骤202:基于每个可用节点的第一得分和共享资源的使用率,将第一虚拟机部署至满足设定条件的可用节点;其中,所述第一虚拟机包括所述第一集群的故障节点中的虚拟机和/或新的虚拟机。
118.这里,电子设备获取第一集群中每个可用节点的共享资源的使用率,共享资源包括处理器、内存和存储资源。其中,处理器包括中央处理器(cpu,central processing unit)、数字信号处理器(dsp,digital signal processor)、微控制单元(mcu,microcontroller unit)或可编程门阵列(fpga,field-programmable gate array)等。在实际应用中,通过数据表存储每个可用节点的共享资源的使用率。
119.电子设备在得到每个可用节点的第一得分和共享资源的使用率的情况下,从所有可用节点中,确定出满足设定条件的可用节点;基于第一虚拟机的可靠性要求和性能要求,以及基于满足设定条件的每个可用节点的第一得分和共享资源的使用率,将第一虚拟机的部署至设定条件的可用节点。其中,设定条件表征在不影响虚拟机的性能,或者虚拟机能够正常运行的情况下,第一得分和共享资源的使用率需要满足的条件。
120.为了保证第一虚拟机的数据处理效率,在一些实施例中,所述基于每个可用节点的第一得分和共享资源的使用率,将第一虚拟机部署至满足设定条件的可用节点,包括:
121.基于每个可用节点的共享资源的使用率,确定出共享资源满足第一设定条件的第一可用节点;
122.基于第一可用节点的第一得分,从第一可用节点中确定出满足第二设定条件的第二可用节点;
123.将第一虚拟机部署至确定出的第二可用节点。
124.这里,第一设定条件表征共享资源的使用率大于或等于第一设定阈值。其中,当共享资源包括至少两种时,第一设定条件表征每种共享资源的使用率大于或等于对应的第一设定阈值。
125.电子设备基于每个可用节点的每种共享资源的使用率,确定出每种共享资源均大于或等于对应的第一设定阈值的第一可用节点;基于第一可用节点的第一得分,从第一可用节点中确定出满足第二设定条件的第二可用节点,将第一虚拟机部署至确定出的第二可
用节点。其中,第二设定条件表征第一得分大于或等于第二设定阈值。
126.在实际应用中,当第一虚拟机的数量为1个时,可以将第一虚拟机部署至第一得分最高的第二可用节点。当第一虚拟机的数量为至少两个时,按照第一得分从高到低的顺序,依次将第一虚拟机部署至对应的第二可用节点。
127.在实际应用中,电子设备可以通过表格记录每个可用节点对应的共享资源的使用率和每个可用节点的第一得分。例如,
128.可用节点的标识cpu内存存储第一得分可用节点a50%60%30%0.6(即60%)可用节点b30%60%50%0.8(即80%)
129.在保证第一虚拟机的数据处理效率的情况下,为了提高优先级高的第一虚拟机的数据传输的可靠性,在一些实施例中,所述将第一虚拟机部署至确定出的第二可用节点,包括:
130.按照虚拟机的优先级从高到低的顺序以及第一得分从高到低的顺序,将至少两个第一虚拟机部署至确定出的第二可用节点。
131.这里,第一虚拟机的优先级越高,部署该第一虚拟机的第二可用节点的第一得分越高。
132.本实施例中,按照虚拟机的优先级从高到低的顺序以及第一得分从高到低的顺序,将至少两个第一虚拟机部署至确定出的第二可用节点,可以保证优先级高的第一虚拟机具有较高的数据传输的可靠性,从而优先保证优先级高的第一虚拟机的性能。
133.在本技术实施例中,基于第一集群中每个可用节点使用的每个网口对应的第一信息,确定出每个可用节点的第一得分;基于每个可用节点的第一得分和共享资源的使用率,将第一虚拟机部署至满足设定条件的可用节点;第一得分表征可用节点的网口健康度,第一虚拟机包括所述第一集群的故障节点中的虚拟机和/或新的虚拟机。由此,可以根据可用节点的网口健康度和共享资源的使用率来部署第一虚拟机,提高了第一虚拟机的数据传输的可靠性和第一虚拟机的数据处理效率,从而可以提高第一虚拟机的性能。
134.图3为本技术应用实施例提供的虚拟机调度方法的实现流程示意图,其中,流程的执行主体为终端或服务器等电子设备。如图3示出的,虚拟机调度方法包括:
135.步骤301:基于第一集群中每个可用节点使用的每个网口对应的第一信息和每个设定指标对应的至少一个设定告警阈值,确定出每个可用节点对应的每种网口类型的第二得分;其中,所述第一信息包括网口类型和至少一个设定指标的指标值。
136.在第一节点使用的至少两个第一网口属于第一网口类型的情况下,在计算每个可用节点对应的每种网口类型的第二得分时,所述方法包括:
137.基于每个第一网口对应的每个设定指标的指标值和每个设定指标对应的至少一个设定告警阈值,确定出每个第一网口的得分;
138.基于每个第一网口对应的设定总分和所有第一网口的得分,确定出第一网口类型的第二得分。
139.其中,第一节点为第一集群中的任一可用节点。
140.电子设备基于设定指标的指标值大于对应的设定告警阈值的数量,确定出对应的第一网口的得分,即,第一网口对应的设定指标的指标值每大于对应的一个设定告警阈值,
在第一网口对应的设定总分的基础上分数减1,由此,确定出每个第一网口的得分。
141.将第一网口类型对应的所有第一网口的得分的总和,除以第一网口类型对应的所有第一网口对应的设定总分的总和,得到第一网口类型的第二得分。
142.步骤302:基于每个可用节点对应的每种网口类型对应的设定权重,对每个可用节点对应的每种网口类型的第二得分进行加权求和,得到每个可用节点的第一得分。
143.其中,步骤302的实现过程,请参照上文中基于每种网口类型对应的设定权重,对第一节点对应的每种网口类型的第二得分进行加权求和,得到第一节点的第一得分的实现过程。
144.步骤303:获取每个可用节点的共享资源的使用率,基于每个可用节点的共享资源的使用率,确定出共享资源满足第一设定条件的第一可用节点。
145.步骤304:基于第一可用节点的第一得分,从第一可用节点中确定出满足第二设定条件的第二可用节点。
146.步骤305:将第一虚拟机部署至确定出的第二可用节点。
147.为实现本技术实施例的虚拟机调度方法,本技术实施例还提供了一种电子设备,如图4所示,该电子设备包括:
148.计算单元41,用于基于第一集群中每个可用节点使用的每个网口对应的第一信息,确定出每个可用节点的第一得分;其中,所述第一得分表征可用节点的网口健康度;
149.部署单元42,用于基于每个可用节点的第一得分和共享资源的使用率,将第一虚拟机部署至满足设定条件的可用节点;其中,
150.所述第一虚拟机包括所述第一集群的故障节点中的虚拟机和/或新的虚拟机。
151.在一些实施例中,所述第一信息包括网口类型和至少一个设定指标的指标值;计算单元41具体用于:
152.基于第一节点使用的每个网口对应的第一信息和每个设定指标对应的至少一个设定告警阈值,确定出第一节点对应的每种网口类型的第二得分;其中,
153.第一节点表征第一集群中的任一可用节点。
154.在一些实施例中,在第一节点使用的网口对应至少两种网口类型的情况下,计算单元41在确定出第一节点对应的每种网口类型的第二得分之后,还用于:基于每种网口类型对应的设定权重,对第一节点对应的每种网口类型的第二得分进行加权求和,得到第一节点的第一得分。
155.在一些实施例中,在第一节点使用的至少两个第一网口属于第一网口类型的情况下,计算单元41具体用于:
156.基于每个第一网口对应的每个设定指标的指标值和每个设定指标对应的至少一个设定告警阈值,确定出每个第一网口的得分;
157.基于每个第一网口对应的设定总分和所有第一网口的得分,确定出第一网口类型的第二得分。
158.在一些实施例中,在所述第一信息包括至少两个设定指标的情况下,计算单元41具体通过以下任一种方式确定出第一网口的得分:
159.将第一网口对应的设定总分与第一数值的总和之间的差值,确定为第一网口的得分;其中,所述第一数值表征小于对应的指标值的设定告警阈值的总数;
160.基于阈值范围与设定分数之间的设定对应关系,确定出每个设定指标的指标值所处的阈值范围对应的第一设定分数;以及基于每个设定指标对应的第一设定分数确定出第一网口的得分;其中,所述阈值范围由设定指标对应的至少一个设定告警阈值得到。
161.在一些实施例中,部署单元42具体用于:
162.基于每个可用节点的共享资源的使用率,确定出共享资源满足第一设定条件的第一可用节点;
163.基于第一可用节点的第一得分,从第一可用节点中确定出满足第二设定条件的第二可用节点;
164.将第一虚拟机部署至确定出的第二可用节点。
165.在一些实施例中,部署单元42具体用于:按照虚拟机的优先级从高到低的顺序以及第一得分从高到低的顺序,将至少两个第一虚拟机部署至确定出的第二可用节点。
166.在一些实施例中,所述设定指标包括以下至少之一:
167.丢包率;
168.时延;
169.错报率;
170.网卡的闪断次数;
171.网卡上光模块的光衰。
172.实际应用时,计算单元41和部署单元42可通过电子设备中的处理器,比如cpu、dsp、mcu或fpga等实现。
173.需要说明的是:上述实施例提供的电子设备在进行虚拟机调度时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的电子设备与虚拟机调度方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
174.基于上述程序模块的硬件实现,且为了实现本技术实施例的虚拟机调度方法,本技术实施例还提供了一种电子设备。图5为本技术实施例提供的电子设备的硬件组成结构示意图,如图5所示,电子设备5包括:
175.通信接口51,能够与其它设备比如终端或第一集群中的其他节点设备等进行信息交互;
176.处理器52,与所述通信接口51连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的虚拟机调度方法。而所述计算机程序存储在存储器53上。
177.当然,实际应用时,电子设备5中的各个组件通过总线系统54耦合在一起。可理解,总线系统54用于实现这些组件之间的连接通信。总线系统54除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统54。
178.本技术实施例中的存储器53用于存储各种类型的数据以支持电子设备5的操作。这些数据的示例包括:用于在电子设备5上操作的任何计算机程序。
179.可以理解,存储器53可以是易失性存储器或非易失性存储器,也可包括易失性和
非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read-only memory)、可擦除可编程只读存储器(eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compact disc read-only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本技术实施例描述的存储器53旨在包括但不限于这些和任意其它适合类型的存储器。
180.上述本技术实施例揭示的方法可以应用于处理器52中,或者由处理器52实现。处理器52可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器52中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器52可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器52可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器53,处理器52读取存储器53中的程序,结合其硬件完成前述方法的步骤。
181.可选地,所述处理器52执行所述程序时实现本技术实施例的各个方法中由终端实现的相应流程,为了简洁,在此不再赘述。
182.在示例性实施例中,本技术实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的第一存储器53,上述计算机程序可由终端的处理器52执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flash memory、磁表面存储器、光盘、或cd-rom等存储器。
183.在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
184.上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显
示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
185.另外,在本技术各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
186.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
187.需要说明的是,本技术实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
188.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1