1.本发明属于网络带宽管理技术领域,尤其涉及一种超融合架构下的虚拟机业务网络带宽管理方法、装置、设备及存储介质。
背景技术:2.超融合是服务器虚拟化的自然延伸。服务器虚拟化是通过vmware、kvm、xen、hyper-v等虚拟化技术,将多台服务器的计算资源、存储资源和网络资源整合为一个资源平台,实现统一分配、使用、管理和监控。服务器虚拟化不仅可大幅度提升cpu的使用率,同时可保证业务的高可用,以及提供统一的运维管理平台。服务器虚拟化通常由fc/iscsi san或nas等传统磁盘阵列提供数据服务。
3.使用了超融合技术的服务器,不仅提供存储虚拟化服务,同时整合cpu、ssd、hdd等存储资源,通过分布式存储技术为虚拟机提供存储服务。分布式存储具备横向扩展的特点,可有效解决传统磁盘阵列扩展性较差的弱点。超融合的核心技术就是虚拟化,其实对于it系统来说,95%的工作都可以认为是虚拟化。超融合将计算资源、网络资源和存储资源通过软件定义的方式,在一台物理机当中实现。超融合产品部署相对简单,但缺点也较为明显,如硬件资源的利用可能不均衡。这其中,对于网络资源方面,会存在业务抢占的场景,无法保证重要业务分配到足够多的带宽,当发生拥塞时,会随机丢包,无法保障重要业务的宽带需求。
技术实现要素:4.为解决上述问题,本发明的目的是提供一种超融合架构下的虚拟机业务网络带宽管理方法、装置、设备及存储介质,该方法、装置、设备及存储介质能够基于虚拟机的实际网络情况,进行合理的网络带宽分配,保障重要业务的宽带需求。
5.为实现上述目的,本发明的技术方案为:一种超融合架构下的虚拟机业务网络带宽管理方法,包括:获取待传输的数据信息,计算节点可分配物理带宽;基于所述数据信息和节点可分配物理带宽,在满足预设条件的情况下,确定带宽分配机制;在添加或者删除虚拟机的情况下,重新获取待传输的数据信息、计算节点可分配物理带宽,以所述带宽分配机制承载业务。
6.在本发明的一个实施例中,在所述获取待传输的数据信息,计算节点可分配物理带宽之前还包括:启动服务,将服务设置为运行状态;检测服务状态是否正常:如果服务状态不正常,则重新尝试拉起服务;如果服务状态正常,则进行待传输数据信息的获取和节点可分配物理带宽的计算。
7.在本发明的一个实施例中,所述获取待传输的数据信息,计算节点可分配物理带宽进一步包括:根据节点上已启用的物理网卡的实际带宽减去预留给网卡百分之一的保留带宽,将剩余带宽用作可以为虚拟机动态分配的节点可分配物理带宽。
8.在本发明的一个实施例中,所述基于所述数据信息和节点可分配物理带宽,在满
足预设条件的情况下,确定带宽分配机制包括:在所有虚拟机均提供同质服务的情况下,启动第一预设模式对节点可分配物理带宽进行配置;在部分虚拟机需要提供预设带宽的情况下,启动第二预设模式对节点可分配物理带宽进行配置;在所有虚拟机已预先设置优先等级的情况下,启动第三预设模式对节点可分配物理带宽进行配置。
9.在本发明的一个实施例中,所述第一预设模式为以平均值带宽承载业务,具体包括:为节点上的所有开机状态的虚拟机平均分配实际带宽值;在添加或者删除虚拟机的情况下,重新为节点上的所有开机状态的虚拟机平均分配实际带宽值;在判断发生拥塞的情况下,各虚拟机丢弃超出平均值部分带宽,拥塞解除后,重新以平均值带宽承载业务。
10.在本发明的一个实施例中,所述第二预设模式为以指定带宽承载业务,具体包括:为节点上指定的虚拟机分配期望的带宽值,该值需要小于等于剩余可分配实际带宽值,对于未指定带宽的虚拟机则按照固定平均分配的原则,共享剩余带宽值;在添加或者删除虚拟机的情况下,遍历当前所有虚拟机并为节点上指定的虚拟机分配期望的带宽值,该值需要小于等于剩余可分配实际带宽值,对于未指定带宽的虚拟机则按照固定平均分配的原则,共享剩余带宽值;在判断发生拥塞的情况下,优先保障已分配了指定带宽的虚拟机业务,其余未指定带宽的虚拟机随机丢包,拥塞解除后,各虚拟机继续以拥塞前的带宽分配方式承载业务。
11.在本发明的一个实施例中,所述第三预设模式为基于优先级分配带宽承载业务,具体包括:将节点所有虚拟机按照其预设优先级加入对应优先级队列并根据优先级自动分配所有虚拟机的带宽;在添加或者删除虚拟机的情况下,更新优先级队列中虚拟机数量,并重新分配队列内所有虚拟机的带宽;在判断发生拥塞的情况下,将80%的带宽分配给高优先级队列的虚拟机,将20%带宽分配给其余虚拟机,拥塞解除后,重新基于优先级分配带宽承载业务。
12.基于相同的构思,本发明还提供一种超融合架构下的虚拟机业务网络带宽管理装置,包括:信息获取模块,用于获取待传输的数据信息,计算节点可分配物理带宽;带宽分配模块,用于基于所述数据信息和节点可分配物理带宽,在满足预设条件的情况下,确定带宽分配机制;校验模块,用于在添加或者删除虚拟机的情况下,重新获取待传输的数据信息、计算节点可分配物理带宽,以所述带宽分配机制承载业务。
13.基于相同的构思,本发明还提供一种计算机设备,包括:存储器,所述存储器用于存储处理程序;处理器,所述处理器执行所述处理程序时实现上述任意一项所述的超融合架构下的虚拟机业务网络带宽管理方法。
14.基于相同的构思,本发明还提供一种可读存储介质,所述可读存储介质上存储有处理程序,所述处理程序被处理器执行时实现上述任意一项所述的超融合架构下的虚拟机业务网络带宽管理方法。
15.采用上述技术方案后,与现有技术相比,本发明的有益之处在于:
16.1、基于所述待传输的数据信息和节点可分配物理带宽,确定带宽分配机制,使得节点带宽分配能够根据实际情况,确定最优的带宽分配模式,不仅能够避免业务抢占的情况,而且可以保证重要业务分配到足够多的带宽,以保证重要业务的正常进行。
17.2、当工作在第一预设模式承载业务的情况下,将虚拟机的物理带宽平均分配,保证了每台虚拟机有保底带宽可以承载其服务。
18.3、当工作在第二预设模式承载业务的情况下,将虚拟机的物理带宽指定分配,增加了灵活性,可以按需为运行高优先级业务的虚拟机分配足够多的带宽以保障重要业务。
19.4、当工作在第三预设模式承载业务的情况下,将虚拟机加入到优先级队列中实现带宽动态分配,并把拥塞时产生的丢包放到低优先级队列,从而满足了高优先级队列业务不丢包的需求。
附图说明
20.下面结合附图对本发明的具体实施方式作进一步详细说明,其中:
21.图1为本发明一种超融合架构下的虚拟机业务网络带宽管理方法的流程图;
22.图2为本发明一种超融合架构下的虚拟机业务网络带宽管理方法运行逻辑图;
23.图3为本发明一种超融合架构下的虚拟机业务网络带宽管理装置示意图;
24.图4为本发明计算机设备的实施例示意图。
具体实施方式
25.以下结合附图和具体实施例对本发明作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比率,仅用以方便、明晰地辅助说明本发明实施例的目的。
26.需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后
……
)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
27.实施例一
28.请参阅图1,其为一种超融合架构下的虚拟机业务网络带宽管理方法的流程图。具体的,一种超融合架构下的虚拟机业务网络带宽管理方法,包括:
29.s101:获取待传输的数据信息,计算节点可分配物理带宽;
30.s102:基于所述数据信息和节点可分配物理带宽,在满足预设条件的情况下,确定带宽分配机制;
31.s103:在添加或者删除虚拟机的情况下,重新获取待传输的数据信息、计算节点可分配物理带宽,以所述带宽分配机制承载业务。
32.基于所述待传输的数据信息和节点可分配物理带宽,确定带宽分配机制,使得节点带宽分配能够根据实际情况,确定最优的带宽分配模式,不仅能够避免业务抢占的情况,而且可以保证重要业务分配到足够多的带宽,以保证重要业务的正常进行。
33.如图2所示,示出了本发明一种超融合架构下的虚拟机业务网络带宽管理方法运行逻辑图。
34.进一步的,在所述获取待传输的数据信息,计算节点可分配物理带宽之前还包括:
35.s001:启动服务,将服务设置为运行状态;
36.s002:检测服务状态是否正常:如果服务状态不正常,则重新尝试拉起服务;如果服务状态正常,则进行待传输数据信息的获取和节点可分配物理带宽的计算。
37.进一步的,所述获取待传输的数据信息,计算节点可分配物理带宽进一步包括:根据节点上已启用的物理网卡的实际带宽减去预留给网卡百分之一的保留带宽,将剩余带宽
用作可以为虚拟机动态分配的节点可分配物理带宽。
38.为保证各连接正常建立以及协议报文可以正常收发,默认保留1%的带宽开销。以单个节点为例说明,此节点上使用2张100g网卡作为虚拟机业务的物理网络,并创建了16个活跃虚拟机,那么该节点可分配物理带宽为200*(1-1%)=198g。
39.进一步的,所述基于所述数据信息和节点可分配物理带宽,在满足预设条件的情况下,确定带宽分配机制包括:在所有虚拟机均提供同质服务的情况下,启动第一预设模式对节点可分配物理带宽进行配置;在部分虚拟机需要提供预设带宽的情况下,启动第二预设模式对节点可分配物理带宽进行配置;在所有虚拟机已预先设置优先等级的情况下,启动第三预设模式对节点可分配物理带宽进行配置。
40.根据实际应用场景和资源的不同需求,匹配相应的预设模式进行带宽配置,科学合理有针对性,有效避免业务抢占和丢包,保障重要业务的带宽需求,提升关键业务的保障能力。
41.优选的,所述第一预设模式为以平均值带宽承载业务,具体包括:为节点上的所有开机状态的虚拟机平均分配实际带宽值;在添加或者删除虚拟机的情况下,重新为节点上的所有开机状态的虚拟机平均分配实际带宽值;在判断发生拥塞的情况下,各虚拟机丢弃超出平均值部分带宽,拥塞解除后,重新以平均值带宽承载业务。
42.为保证各连接正常建立以及协议报文可以正常收发,默认保留1%的带宽开销,以单节点为例,实际可以分配的带宽为198g,则实际每台虚拟机可以分配到198/16=12.375g带宽,这个方法的好处是所有分组和虚拟机将平均的享受服务,不会因为某个虚拟机抢占业务而发生其他虚拟机无法获得服务的情况。拥塞时各虚拟机会随机丢包,但由于各虚拟机都平均分配到了带宽,所以能够保证不会出现某些虚拟机完全得不到服务的情况。
43.优选的,所述第二预设模式为以指定带宽承载业务,具体包括:为节点上指定的虚拟机分配期望的带宽值,该值需要小于等于剩余可分配实际带宽值,对于未指定带宽的虚拟机则按照固定平均分配的原则,共享剩余带宽值;在添加或者删除虚拟机的情况下,遍历当前所有虚拟机并为节点上指定的虚拟机分配期望的带宽值,该值需要小于等于剩余可分配实际带宽值,对于未指定带宽的虚拟机则按照固定平均分配的原则,共享剩余带宽值;在判断发生拥塞的情况下,优先保障已指定带宽的虚拟机业务,其余未指定带宽的虚拟机随机丢包,拥塞解除后,重新以指定带宽承载业务。
44.例如在节点上为虚拟机1分配100g带宽,其余虚拟机共享剩余98g带宽,这种方法可以达到一个基本的保证高优先级业务的效果。按照虚拟机获得的指定带宽值的大小排序,优先保证指定带宽值最大的虚拟机能够正常承载业务。指定虚拟机带宽方式,增加了灵活性,可以按需为运行高优先级业务的虚拟机分配足够多的带宽。
45.优选的,所述第三预设模式为基于优先级分配带宽承载业务,具体包括:将节点所有虚拟机按照其预设优先级加入对应优先级队列并根据优先级自动分配所有虚拟机的带宽;在添加或者删除虚拟机的情况下,更新节点和队列中虚拟机数量,按照其预设优先级加入对应优先级队列后可根据优先级完成自动分配带宽;在判断发生拥塞的情况下,将80%的带宽分配给高优先级队列的虚拟机,将20%带宽分配给其余虚拟机,拥塞解除后,重新基于优先级分配带宽承载业务。
46.例如,根据已设定的三种优先级队列权重进行带宽分配,高、中、低优先级队列分
别可以分配到99g、59.4g、39.6g,各队列中的虚拟机平均分配队列带宽。在发生拥塞时,优先保证高优先级和中优先级队列带宽供应,丢包将在低优先级队列中进行,在此队列内的虚拟机业务随机丢包。将虚拟机加入到优先级队列中实现带宽动态分配,并把拥塞时产生的丢包放到低优先级队列,从而满足了高优先级队列业务不丢包的需求。
47.本发明是超融合架构下实现的部署在物理集群节点上的保障物理集群内虚拟机业务网络带宽的软件服务方法和装置,能够实现集群节点内所有虚拟机分组平均分配带宽;或者对各虚拟机按照业务重要程度分别配置指定带宽;还可以通过优先级队列的方式动态调整业务带宽从而保证在网络出现拥塞时使得优先级较高队列内的虚拟机业务能够分配到足够带宽,使得关键业务受到影响的程度大大降低。
48.采用上述技术方案后,与现有技术相比,本发明的有益之处在于:
49.1、基于所述待传输的数据信息和节点可分配物理带宽,确定带宽分配机制,使得节点带宽分配能够根据实际情况,确定最优的带宽分配模式,不仅能够避免业务抢占的情况,而且可以保证重要业务分配到足够多的带宽,以保证重要业务的正常进行。
50.2、当工作在第一预设模式承载业务的情况下,将虚拟机的物理带宽平均分配,保证了每台虚拟机有保底带宽可以承载其服务。
51.3、当工作在第二预设模式承载业务的情况下,将虚拟机的物理带宽指定分配,增加了灵活性,可以按需为运行高优先级业务的虚拟机分配足够多的带宽以保障重要业务。
52.4、当工作在第三预设模式承载业务的情况下,将虚拟机加入到优先级队列中实现带宽动态分配,并把拥塞时产生的丢包放到低优先级队列,从而满足了高优先级队列业务不丢包的需求。
53.实施例二
54.如图3所示,基于相同的构思,本发明还提供一种一种超融合架构下的虚拟机业务网络带宽管理装置200,该一种超融合架构下的虚拟机业务网络带宽管理装置200包括:信息获取模块201,用于获取待传输的数据信息,计算节点可分配物理带宽;带宽分配模块202,用于基于所述数据信息和节点可分配物理带宽,在满足预设条件的情况下,确定带宽分配机制;校验模块203,用于在添加或者删除虚拟机的情况下,重新获取待传输的数据信息、计算节点可分配物理带宽,以所述带宽分配机制承载业务。
55.实施例三
56.如图4所示,基于相同的构思,本发明还提供一种计算机设备300,该计算机设备300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)310(例如,一个或一个以上处理器)和存储器320,一个或一个以上存储应用程序333或数据332的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器320和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对计算机设备300中的一系列指令操作。更进一步地,处理器310可以设置为与存储介质330通信,在计算机设备300上执行存储介质330中的一系列指令操作。
57.计算机设备300还可以包括一个或一个以上电源340,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口360,和/或,一个或一个以上操作系统331,例如windows serve,mac os x,unix,linux,freebsd等等。
58.本领域技术人员可以理解,图3示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件或者组合某些部件,或者不同的部件布置。
59.所述计算机可读指令被所述处理器执行时,使得所述处理器执行所述计算机可读指令时实现以下步骤:获取待传输的数据信息,计算节点可分配物理带宽;基于所述数据信息和节点可分配物理带宽,在满足预设条件的情况下,确定带宽分配机制;在添加或者删除虚拟机的情况下,重新获取待传输的数据信息、计算节点可分配物理带宽,以所述带宽分配机制承载业务。
60.在本发明的一个实施例中,在所述获取待传输的数据信息,计算节点可分配物理带宽之前还包括:启动服务,将服务设置为运行状态;检测服务状态是否正常:如果服务状态不正常,则重新尝试拉起服务器;如果服务状态正常,则进行待传输数据信息的获取和节点可分配物理带宽的计算。
61.在本发明的一个实施例中,所述获取待传输的数据信息,计算节点可分配物理带宽进一步包括:根据节点上已启用的物理网卡的实际带宽减去预留给网卡百分之一的保留带宽,将剩余带宽用作可以为虚拟机动态分配的节点可分配物理带宽。
62.在本发明的一个实施例中,所述基于所述数据信息和节点可分配物理带宽,在满足预设条件的情况下,确定带宽分配机制包括:在所有虚拟机均提供同质服务的情况下,启动第一预设模式对节点可分配物理带宽进行配置;在部分虚拟机需要提供预设带宽的情况下,启动第二预设模式对节点可分配物理带宽进行配置;在所有虚拟机已预先设置优先等级的情况下,启动第三预设模式对节点可分配物理带宽进行配置。
63.在本发明的一个实施例中,所述第一预设模式为以平均值带宽承载业务,具体包括:为节点上的所有开机状态的虚拟机平均分配实际带宽值;在添加或者删除虚拟机的情况下,重新为节点上的所有开机状态的虚拟机平均分配实际带宽值;在判断发生拥塞的情况下,各虚拟机丢弃超出平均值部分带宽,拥塞解除后,重新以平均值带宽承载业务。
64.在本发明的一个实施例中,所述第二预设模式为以指定带宽承载业务,具体包括:为节点上指定的虚拟机分配期望的带宽值,该值需要小于等于剩余可分配实际带宽值,对于未指定带宽的虚拟机则按照固定平均分配的原则,共享剩余带宽值;在添加或者删除虚拟机的情况下,遍历当前所有虚拟机并为节点上指定的虚拟机分配期望的带宽值,该值需要小于等于剩余可分配实际带宽值,对于未指定带宽的虚拟机则按照固定平均分配的原则,共享剩余带宽值;在判断发生拥塞的情况下,优先保障已分配了指定带宽的虚拟机业务,其余未指定带宽的虚拟机随机丢包,拥塞解除后,各虚拟机继续以拥塞前的带宽分配方式承载业务。
65.在本发明的一个实施例中,所述第三预设模式为基于优先级分配带宽承载业务,具体包括:将节点所有虚拟机按照其预设优先级加入对应优先级队列并根据优先级自动分配所有虚拟机的带宽;在添加或者删除虚拟机的情况下,更新优先级队列中虚拟机数量,并重新分配队列内所有虚拟机的带宽;在判断发生拥塞的情况下,将80%的带宽分配给高优先级队列的虚拟机,将20%带宽分配给其余虚拟机,拥塞解除后,重新基于优先级分配带宽承载业务。
66.在一个实施例中,提出了一种可读存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述,具体步骤在此不再赘述。
67.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
68.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
69.以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。