一种资源调配方法及设备与流程

文档序号:32348658发布日期:2022-11-26 12:11阅读:102来源:国知局
一种资源调配方法及设备与流程

1.本技术涉及通信技术,特别涉及虚拟桌面架构技术,具体的讲是一种资源调配方法及设备


背景技术:

2.vdi(virtual desktop infrastructure,虚拟桌面架构)通过集中式后端服务器抽象和托管大量虚拟化桌面会话。用户通过虚拟桌面客户端连接虚拟桌面实现远程办公需求,使用这些服务器的计算资源以及存储资源。
3.物理服务器通常有多个numa(non-uniform memory access,非一致性内存访问)节点,每个numa节点具有多个cpu物理核且各物理核设置了缓存,同一个numa节点的所有物理核共享一份三级l3缓存以及numa节点的本地内存。
4.云桌面虚拟机从numa节点迁移到其他numa节点时,被迁移的云桌面虚拟机需要远程访问迁移前numa节点的内存,会导致云桌面虚拟机访问内存的效率降低,因此需要将云桌面虚拟机与被分配的numa节点进行绑定,保证云桌面虚拟机可以直接访问内存,使得云桌面虚拟机在所在numa节点内进行调度,直接访问所在numa节点的本地内存。但是,一旦高频运行的云桌面虚拟机绑定了同一个muna节点或者每个muna节点绑定的云桌面虚拟机的数量相同但是某个numa节点的cpu物理内核的数量小于绑定的云桌面虚拟机的虚拟内核的总数时,也会影响云桌面虚拟机访问绑定的numa节点的内存的效率。


技术实现要素:

5.本技术的目的在于提供一种资源调配方法及设备,动态调配物理服务器的numa节点绑定的虚拟内核。
6.为实现上述目的,本技术提供了一种资源调配方法,该方法包括:设置物理服务器上每个numa节点的物理内核数目等于每个numa节点被绑定虚拟内核最大值;当资源调配周期到达时读取所有关机状态的云桌面虚拟机;将读取的所有关机状态的云桌面虚拟机划分为不同的权重等级;删除读取的所有关机状态的云桌面虚拟机的已绑定numa节点;按照权重等级由高到低的顺序,依次将各权重等级的关机状态的云桌面虚拟机与当前绑定最小虚拟内核数量的numa节点进行绑定。
7.为实现上述目的,本技术还提供了一种资源调配设备,应用于云桌面管理平台,该设备包括处理器以及存储器;存储器用于存储处理器可执行指令;其中,处理器通过运行存储器中的处理器可执行指令用以执行以下操作:设置物理服务器上每个numa节点的物理内核数目等于每个numa节点被绑定虚拟内核最大值;当资源调配周期到达时读取所有关机状态的云桌面虚拟机;将读取的所有关机状态的云桌面虚拟机划分为不同的权重等级的所有关机状态的云桌面虚拟机;删除读取的所有关机状态的云桌面虚拟机的已绑定numa节点;按照权重等级由高到低的顺序,依次将各权重等级的关机状态的云桌面虚拟机与当前绑定最小虚拟内核数量的numa节点进行绑定。
8.本技术的有益效果在于,将物理服务器的各muna节点按照权重等级绑定虚拟内核且各numa节点的cpu物理内核的数量不小于被绑定的虚拟内核的总数时,提升云桌面虚拟机访问绑定的numa节点的内存的效率。
附图说明
9.图1为本技术提供的资源调配方法实施例的流程图;
10.图2为本技术提供的云桌面管理平台在资源调配周期重新为numa节点绑定云桌面虚拟机的流程;
11.图3为本技术提供的资源调配装置实施例的示意图。
具体实施方式
12.将以多个附图所示的多个例子进行详细说明。在以下详细描述中,多个具体细节用于提供对本技术的全面理解。实例中没有详细地描述已知的方法、步骤、组件以及电路,以免使这些例子的难于理解。
13.使用的术语中,术语“包括”表示包括但不限于;术语“含有”表示包括但不限于;术语“以上”、“以内”以及“以下”包含本数;术语“大于”、“小于”表示不包含本数。术语“基于”表示至少基于其中一部分。
14.图1所示的本技术的资源调配方法实施例包括:
15.步骤101,设置物理服务器上每个numa节点的物理内核数目等于每个numa节点被绑定虚拟内核最大值;
16.步骤102,当资源调配周期到达时读取所有关机状态的云桌面虚拟机;
17.步骤103,将读取的所有关机状态的云桌面虚拟机划分为不同的权重等级;
18.步骤104,删除读取的所有关机状态的云桌面虚拟机的已绑定numa节点;
19.步骤105,按照权重等级由高到低的顺序,依次将各权重等级的关机状态的云桌面虚拟机与当前绑定最小虚拟内核数量的numa节点进行绑定。
20.图1实施例的有益效果在于,将物理服务器的各muna节点按照权重等级绑定虚拟内核且各numa节点的cpu物理内核的数量不小于被绑定的虚拟内核的总数时,提升云桌面虚拟机访问绑定的numa节点的内存的效率。
21.图2所示为本技术提供的云桌面管理平台在资源调配周期重新为numa节点绑定云桌面虚拟机的流程。本技术为避免云桌面虚拟机的虚拟内核超额绑定numa节点大量的云桌面虚拟机的虚拟cpu绑定到numa节点,云桌面管理平台可以设置物理服务器上各numa节点的可绑定虚拟内核数量上限等于物理内核数量。例如,物理服务器上,各numa节点的双处理器都是16核32线程的cpu,设置每个numa节点能够绑定的云桌面虚拟机的虚拟内核的上限为64虚拟内核;如果每个云桌面虚拟机是2个虚拟内核,则每个numa节点可以绑定32台云桌面虚拟机。
22.步骤201,更新当前资源调配周期内的每个已运行的云桌面虚拟机的内存使用率和使用时间;
23.譬如,本技术中,一个资源调配周期为24小时。云桌面管理平台通过长连接,譬如socket连接,接收运行状态的各云桌面虚拟机按照内存使用率上报周期,譬如45分钟,发送
的所在云桌面的虚拟机的使用率的管理报文。云桌面管理平台根据收到的管理报文中的云桌面虚拟机的uuid找到对应的云桌面虚拟机,更新收到的管理报文对应云桌面虚拟机在前24小时内的内存使用率以及运行时间。
24.步骤202,通知超出最大闲置时间阈值的已运行云桌面虚拟机的代理执行关闭,更新之前连续的多个资源调配周期内的在线时间总和;
25.本技术中,每个云桌面虚拟机设置了最大闲置时间,譬如1小时。当物理服务器的任一numa节点绑定的运行状态的云桌面虚拟机的agent检测到在当前资源调配周期的24小时内,云桌面虚拟机agent已经限制1小时,则向云桌面管理平台发送管理报文,通告云桌面虚拟机的限制时间中超出最大闲置时间阈值1小时。
26.云桌面管理平台收到超出最大虚拟机闲置时间的管理报文,向对应的虚拟机的agent发送远程过程调用协议报文,譬如grpc协议报文,通知agent执行所在云桌面虚拟机的关机程序,云桌面管理平台计算在当前24小时内的被关闭的云桌面虚拟机的在线时间,更新之前连续的多个资源调配周期,譬如连续7个资源调配周期的一周时间内,被关闭的云桌面虚拟机的在线时间总和。
27.步骤203,当前资源调配周期到达,读取所有关机状态的云桌面虚拟机,按照权重等级排级依次排级。
28.云桌面管理平台在当前资源调配周期的24小时到达时,读取所有关机状态的云桌面。本技术中,关机状态的云桌面虚拟机即包括步骤202中因限制时间超时关闭的云桌面虚拟机,也包括用户通过云桌面客户端关机的云桌面虚拟机。
29.本技术不同的权重等级至少包括:最高指定优先级、高频使用率优先级、资源高利用率优先级。
30.最高指定优先级是管理员为特定用户手动分配高优先级云桌面虚拟机。
31.高频使用率优先级是指,前一资源调配周期内超出使用时间阈值以及超出内存使用率阈值且按照前一资源调配周期内使用时间由高到底排级指定数目的云桌面虚拟机的顺序。
32.本实施例中,步骤203中资源调配周期24小时到达后,前24小时为前一资源调配周期。云桌面管理平台从未设定为最高指定优先级的关机状态的云桌面虚拟机,筛选出前24小时内使用时间超过两小时(本实施例使用时间阈值)且内存使用率高超过80%(本实施例的内存使用率阈值)云桌面虚拟机中,按前24小时的使用时间由高到低的顺序筛选10个云桌面虚拟机。
33.高资源利用率优先级是指,在之前连续的多个资源调配周期内超出在线时间总和阈值且在所述之前连续的多个资源调配周期内在线时间总和由高到低排级指定数目的云桌面虚拟机的顺序。
34.本实施例中,云桌面管理平台,从未设定为最高指定优先级、未筛选为高频使用率优先级的关机状态的云桌面虚拟机中,筛选出前一周,即连续7个资源调配周期内,根据前一周的在线时间总和由高到低的顺序,筛选出在线时间总和最长的20个云桌面虚拟机。
35.本技术中,最高指定优先级、可以被筛选为高频使用率优先级、高资源利用率优先级的云桌面虚拟机的数目按照环境设定,总和既可以大于物理服务器上所有numa节点的可绑定的虚拟内核的上限,也可以小于该上限。当大于该上限时,由于云桌面管理平台可以设
置物理服务器上各numa节点的可绑定虚拟内核数量上限等于物理内核数量,超出上限后不再为numa节点绑定虚拟内核,避免了numa节点的物理内核绑定的虚拟内核超额。
36.若可用于权重排级的关机状态的云桌面虚拟机的数量不满足设定的可以被筛选为高频使用率优先级的数目,则如只有前24小时内使用时间超过两小时以及内存使用率高超过80%的关闭状态云桌面虚拟机只有7台,则对这7台按照使用时间排序。
37.若未按照权重排级的关机状态的云桌面虚拟机的数量不满足设定的可以被筛选为高频使用率优先级的数目,例如前一周内未设定为最高指定优先级且未筛选为高频使用率优先级的关机状态的云桌面虚拟机只剩余10台,对这7台按照在线数据综合;若剩余30台,则按照在线时间总和由高到低的顺序筛选出20个。
38.步骤204,解除所有关机状态的云桌面虚拟机绑定的numa节点。
39.云桌面管理平台按照不同的权重等级为所有关机状态的云桌面虚拟机进行排级后,解除所有关机状态的云桌面虚拟机在前24小时内绑定的numa节点。这样,这些关机状态的云桌面虚拟机解绑前24小时内绑定的numa节点后,在当前的资源调配周期内重新绑定,当用户通过云桌面客户端打开这些关机的云桌面虚拟机后就可以使新绑定的numa节点配置在启动后自动生效。
40.步骤205,从最高指定优先级中选择优先的关机状态的云桌面虚拟机,选择当前已绑定虚拟内核数量最小的numa节点。
41.本技术中,云桌面管理平台可以从最高指定优先级关机状态的云桌面虚拟机依次选择,或者按照uuid由大到小或由小到大,或其他规则选择优先的关机状态的云桌面虚拟机。
42.步骤206,判断选择的numa节点的未绑定虚拟内核是否少于选择的云桌面虚拟机的虚拟内核,若是,则执行步骤207,若否,则执行步骤208。
43.步骤207,终止为物理服务器的各numa节点绑定关机状态的云桌面虚拟机。
44.如果物理服务器上已绑定最小虚拟内核的numa节点的未绑定内核已经少于已选的待绑定关机状态的云桌面虚拟的虚拟内核数量,表示物理服务器上所有numa节点的虚拟内核都不足以绑定,则终止此24小时内为关机状态的云桌面虚拟机重新绑定numa节点。
45.步骤208,判断最高指定优先级中的关机状态的云桌面虚拟机是否已全部绑定;若是,则执行步骤209,若否,则返回步骤206;
46.云桌面管理平台如果确定最高指定优先级关机状态的云桌面虚拟机已经全部完成重新绑定,从下一权重等级高频使用率优先级中选择重新绑定的关机状态的云桌面虚拟机。
47.步骤209,从高频使用率优先级中选择使用时间最长的关机状态的云桌面虚拟机,选择当前已绑定虚拟内核数量最小的numa节点;
48.本技术中,云桌面管理平台筛选出前24小时内使用时间超过两小时(本实施例使用时间阈值)以及内存使用率高超过80%(本实施例的内存使用率阈值),且按前24小时的使用时间由高到低的顺序排序的10个云桌面虚拟机,从中选择使用时间最长的关机状态的云桌面虚拟机。
49.步骤210,判断选择的numa节点的未绑定虚拟内核是否少于选择的云桌面虚拟机的虚拟内核;若是,则执行步骤207;若否,则执行步骤211;
50.步骤211,判断高频使用率优先级中的关机状态的云桌面虚拟机是否已全部绑定;若是,则执行步骤212;若否,则返回步骤209;
51.云桌面管理平台如果确定高频使用率优先级的关机状态的云桌面虚拟机已经全部完成重新绑定,从下一权重等级资源高利用率优先级中选择重新绑定的关机状态的云桌面虚拟机。
52.步骤212,从资源高利用率优先级中选择在线时间总和最长的关机状态的云桌面虚拟机,选择当前已绑定虚拟内核数量最小的numa节点;
53.本技术中,云桌面管理平台筛选出前一种内在线时间总和时间最长的关机状态的云桌面虚拟机。
54.步骤213,判断选择的numa节点的未绑定虚拟内核是否少于选择的云桌面虚拟机的虚拟内核;若是,则执行步骤207;若否,则返回步骤214;
55.步骤214,判断资源高利用率优先级中的关机状态的云桌面虚拟机是否已全部绑定;若是,则执行步骤207;若否,则返回步骤212。
56.本技术中,能根据阶段性的使用需求在每个资源调配周期到达自动调度物理服务器上有限的numa节点的虚拟内核绑定资源,将高权重的云桌面虚拟机进行numa节点绑定,提高每个资源调配周期内云桌面虚拟机的内存访问效率,调度优化当前资源调配周期内用户通过云桌面客户端使用云桌面虚拟机的体验。
57.图3为本技术提供的一种资源调配设备,应用于云桌面管理平台,该设备30包括处理器以及存储器;存储器用于存储处理器可执行指令;其中,处理器通过运行存储器中的处理器可执行指令用以执行以下操作:设置物理服务器上每个numa节点的物理内核数目等于每个numa节点被绑定虚拟内核最大值;当资源调配周期到达时读取所有关机状态的云桌面虚拟机;将读取的所有关机状态的云桌面虚拟机划分为不同的权重等级的所有关机状态的云桌面虚拟机;删除读取的所有关机状态的云桌面虚拟机的已绑定numa节点;按照权重等级由高到低的顺序,依次将各权重等级的关机状态的云桌面虚拟机与当前绑定最小虚拟内核数量的numa节点进行绑定。
58.处理器通过运行存储器中的处理器可执行指令执行依次为各权重等级的关机状态的云桌面虚拟机与当前绑定最小虚拟内核数量的numa节点进行绑定的操作包括:
59.确定物理服务器上所有numa节点绑定的虚拟内核数量未超出前物理服务器上所有numa节点的物理内核的数量;
60.判断当前最高权重等级的关机状态的云桌面虚拟是否全部已绑定numa节点;若否,从当前最高权重等级的关机状态的云桌面虚拟机选择优先的关机状态的云桌面虚拟,选择物理服务器上当前已绑定虚拟内核数量最小的numa节点;若当前绑定最小虚拟内核数量的numa节点的未绑定虚拟内核的数量大于当前最高权重等级的优先的关机状态的云桌面虚拟机的内核数量,则进行绑定;若当前绑定最小虚拟内核数量的numa节点的未绑定虚拟内核的数量小于当前最高权重等级的优先的关机状态的云桌面虚拟,则终止绑定。
61.不同的权重等级至少包括:最高指定优先级、高频使用率优先级、资源高利用率优先级;其中,高频使用率优先级是指,前一资源调配周期内超出使用时间阈值以及超出内存使用率阈值且按照前一资源调配周期内使用时间由高到底排级指定数目的云桌面虚拟机的顺序;高资源利用率优先级是指,在之前连续的多个资源调配周期内超出在线时间总和
阈值且在所述之前连续的多个资源调配周期内在线时间总和由高到低排级指定数目的云桌面虚拟机的顺序。
62.处理器通过运行存储器中的处理器可执行指令在资源调配周期到达之前还执行以下操作:接收各代理agent按照内存使用率上报周期发送的所在云桌面虚拟机的内存使用率,更新当前资源调配周期内的每个已运行的云桌面虚拟机的内存使用率和使用时间。
63.处理器通过运行存储器中的处理器可执行指令在资源调配周期到达之前还执行以下操作:接收在所述当前资源调配周期中超出最大闲置时间阈值的已运行云桌面虚拟机的代理发送的虚拟机闲置通告;通知所述当前资源调配周期中超出最大闲置时间阈值的已运行云桌面虚拟机的代理执行关闭,计算所述当前资源调配周期的在线时长;更新之前连续的多个资源调配周期内的在线时间总和。
64.以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1