一种KVM的网络性能优化方法技术

技术编号:15518574 阅读:81 留言:0更新日期:2017-06-04 08:44
本发明专利技术提供一种KVM的网络性能优化方法,KVM虚拟机系统将物理网卡虚拟成多个虚拟网卡,虚拟机管理器将每个虚拟网卡配置给虚拟机,包括如下步骤:S1. KVM虚拟机系统通过第一CPU检测虚拟机数目;S2.当检测到的虚拟机数目M1小于设定阈值M时,回到步骤S1;S3.当检测到的虚拟机数目M1大于等于设定阈值M时,第一CPU判定所需虚拟网卡数目为N1;S4.第一CPU将物理网卡配置为N1个虚拟网卡;S5.虚拟机管理器采用intel VT‑d技术通过软件为每个虚拟机添加指定的虚拟网卡。本发明专利技术可以有效提升KVM下多虚拟机并行运行时系统的网络性能。

【技术实现步骤摘要】
一种KVM的网络性能优化方法
本专利技术属于KVM虚拟化领域,具体涉及一种KVM的网络性能优化方法。
技术介绍
KVM是目前较为常用的一种虚拟化实现方案,而KVM在同时运行的虚拟机数目达到较高数目时,其网络瓶颈往往成为制约其性能的关键,为了提升网络性能,单纯的更换千兆网卡为万兆网卡往往不能得到希望的结果。在使用万兆网卡作为KVM的网络通信手段下,如何更好的提升系统的网络性能,减少系统的资源占用是急需解决的问题。
技术实现思路
为了克服上述问题,本专利技术提供如下技术方案:一种KVM的网络性能优化方法,KVM虚拟机系统将物理网卡虚拟成多个虚拟网卡,虚拟机管理器将每个虚拟网卡配置给虚拟机,包括如下步骤:S1.KVM虚拟机系统通过第一CPU检测虚拟机数目;S2.当检测到的虚拟机数目M1小于设定阈值M时,回到步骤S1;S3.当检测到的虚拟机数目M1大于等于设定阈值M时,第一CPU判定所需虚拟网卡数目为N1;S4.第一CPU将物理网卡配置为N1个虚拟网卡;S5.虚拟机管理器采用intelVT-d技术通过软件为每个虚拟机添加指定的虚拟网卡。进一步地,步骤S5之后还包括如下步骤:S6.KVM虚拟机系统通过第一CPU检测虚拟机数目M1是否发生变化;S7.当检测到的虚拟机数目M1不变时,回到步骤S6;S8.当检测到的虚拟机数目M1发生变化时,若虚拟机数目M1小于设定阈值M,第一CPU结束物理网卡的虚拟配置,回到步骤S1;S9.若虚拟机数目M1大于等于设定阈值M,回到步骤S3。进一步地,所述步骤S4中第一CPU采用SR-IOV技术将物理网卡配置为N1个虚拟网卡,具体步骤如下:S41,在BIOS中打开VT-d技术和SR-IOV;S42,编辑grub启动菜单:打开输入输出内存管理单元,指定IO调度器,解除每个虚拟网卡的内存限制和输入输出控制的限制;S43,设置Linux内核参数:设置KVM虚拟机系统的进程最小运行时间,设置KVM虚拟机系统的进程被唤醒后最小运行时间的基数,设置KVM虚拟机系统一个运行队列所有进程运行一次的周期;S44,加载物理网卡驱动程序模块配置文件,设置虚拟功能数等于虚拟网卡数目N1,同时禁用虚拟网卡驱动程序。进一步地,所述步骤S8中结束物理网卡的虚拟配置的具体步骤如下:S81,在BIOS中关闭VT-d技术和SR-IOV;S82,加载物理网卡驱动程序模块配置文件,设置虚拟功能数等于0。进一步地,所述步骤S42中指定deadline为默认的IO调度器,通过Cgroup解除每个虚拟网卡的内存限制和输入输出控制的限制;所述步骤S43中KVM虚拟机系统的进程最小运行时间设置为4000000ns,KVM虚拟机系统的进程被唤醒后最小运行的时间的基数设置为4000000ns,KVM虚拟机系统一个运行队列所有进程运行一次的周期设置为32000000ns;所述步骤S44中,加载物理网卡驱动程序模块配置文件为ixgbe.conf,同时禁用虚拟网卡驱动程序为ixgbevf。进一步地,所述KVM虚拟机系统运行在多核服务器上,第一CPU处于忙碌状态时,其他空闲CPU检测虚拟机数目。进一步地,步骤S3中所需虚拟网卡数目N1为虚拟机数目M1的倍数。进一步地,所述物理网卡10G网卡,数目至少为一个。进一步地,手动将物理网卡中断绑定到第二CPU,具体步骤如下:a1,停止物理网卡中断与CPU的自动绑定状态;a2,查看物理网卡对应的网络中断号;a3,通过网络中断号把对应物理网卡绑定到第二CPU。进一步地,当第二CPU处于忙碌状态时,手动将物理网卡中断绑定到其他空闲的一个或多个CPU。经过网卡中断手动绑定和物理网卡虚拟化之前,有数据到达物理网卡,物理网卡产生中断,中断随机分配到某个CPU,CPU响应中断,加载物理网卡驱动程序,CPU将数据传输到虚拟机管理器,虚拟机管理器将数据分配给某个虚拟机处理,数据处理完毕,产生中断关闭信号给CPU。经过网卡中断手动绑定和物理网卡虚拟化之后,有数据到达物理网卡,物理网卡产生中断,中断到达绑定的第二CPU或者其他一个或多个空闲CPU,CPU响应中断,加载物理网卡驱动程序,驱动程序加载完毕,产生关中断信号给CPU,物理网卡通过DMA将数据从虚拟网卡直接传到对应的虚拟机,而不需要再经过虚拟机管理器。本专利技术的有益技术效果:本专利技术通过检测虚拟机数目确定物理网卡的状态,虚拟机数目较多时,将物理网卡虚拟分配成多个虚拟网卡,为每个虚拟机配置虚拟网卡,实现从虚拟机环境直接访问网卡,减少了网卡数量,简化了布线,减少了交换机端口,提高网卡的利用率,减少或消除对传统服务器的CPU使用以及从物理网卡到虚拟机管理器再到虚拟机之间的数据流传输时间延迟,可以有效提升KVM下多虚拟机并行运行时系统的网络性能;同时手动分配网卡中断也可以有效减少因为中断分配造成的系统CPU占用过高问题,可以显著提升整体系统的网络响应速度。此外,本专利技术设计原理可靠,结构简单,具有非常广泛的应用前景。由此可见,本专利技术与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。附图说明图1为本专利技术的流程图;图2为应用本专利技术前的网络示意图;图3和图4为本专利技术的网络示意图;其中:1、10G网卡;2、第一虚拟网卡;3、第二虚拟网卡;4、第三虚拟网卡;5、第四虚拟网卡;6、第一虚拟机;7、第二虚拟机;8、第三虚拟机;9、第四虚拟机;10、第五虚拟网卡;11、第六虚拟网卡;12、第五虚拟机;13、第六虚拟机;14、第一CPU。具体实施方式:为使得本专利技术的目的、特征、优点能够更加的明显和易懂,下面将结合本具体实施例中的附图,对本专利技术中的技术方案进行清楚、完整地描述。如图1、图2和图3所示,本专利技术提供一种KVM的网络性能优化方法,KVM虚拟机系统将物理网卡虚拟成多个虚拟网卡,虚拟机管理器将每个虚拟网卡配置给虚拟机,以虚拟机数目的设定阈值取4为例,包括如下步骤:KVM虚拟机系统通过第一CPU检测虚拟机数目;当检测到的虚拟机数目M1小于设定阈值4时,第一CPU继续检测虚拟机数目;当检测到的虚拟机数目M1等于设定阈值4时,第一CPU判定所需虚拟网卡数目为4;第一CPU将物理网卡配置为4个虚拟网卡;第一CPU采用SR-IOV技术将物理网卡配置为4个虚拟网卡,具体步骤如下:在BIOS中打开VT-d技术和SR-IOV;编辑grub启动菜单:打开输入输出内存管理单元,指定deadline为默认的IO调度器,通过Cgroup解除每个虚拟网卡的内存限制和输入输出控制的限制;设置Linux内核参数:设置KVM虚拟机系统的进程最小运行时间为4000000ns,设置KVM虚拟机系统的进程被唤醒后至少应该运行的时间的基数为4000000ns,设置KVM虚拟机系统一个运行队列所有进程运行一次的周期为32000000ns;加载物理网卡驱动程序模块配置文件ixgbe.conf,添加虚拟功能数等于虚拟网卡数目4,禁用虚拟网卡驱动程序ixgbevf。虚拟机管理器采用intelVT-d技术通过软件为每个虚拟机添加指定的虚拟网卡;KVM虚拟机系统通过第一CPU检测虚拟机数目M1是否发生变化;当检测到的虚拟机数目M1不变还是4时,继续回到前一步检测虚拟机数目M1是否发生变化;当检测到的虚拟机数目M1发本文档来自技高网...
一种KVM的网络性能优化方法

【技术保护点】
一种KVM的网络性能优化方法,KVM虚拟机系统将物理网卡虚拟成多个虚拟网卡,虚拟机管理器将每个虚拟网卡配置给虚拟机,其特征在于,包括如下步骤:S1. KVM虚拟机系统通过第一CPU检测虚拟机数目;S2.当检测到的虚拟机数目M1小于设定阈值M时,回到步骤S1;S3.当检测到的虚拟机数目M1大于等于设定阈值M时,第一CPU判定所需虚拟网卡数目为N1;S4.第一CPU将物理网卡配置为N1个虚拟网卡;S5.虚拟机管理器采用intel VT‑d技术通过软件为每个虚拟机添加指定的虚拟网卡。

【技术特征摘要】
1.一种KVM的网络性能优化方法,KVM虚拟机系统将物理网卡虚拟成多个虚拟网卡,虚拟机管理器将每个虚拟网卡配置给虚拟机,其特征在于,包括如下步骤:S1.KVM虚拟机系统通过第一CPU检测虚拟机数目;S2.当检测到的虚拟机数目M1小于设定阈值M时,回到步骤S1;S3.当检测到的虚拟机数目M1大于等于设定阈值M时,第一CPU判定所需虚拟网卡数目为N1;S4.第一CPU将物理网卡配置为N1个虚拟网卡;S5.虚拟机管理器采用intelVT-d技术通过软件为每个虚拟机添加指定的虚拟网卡。2.一种KVM的网络性能优化方法,其特征在于,在步骤S5之后还包括如下步骤:S6.KVM虚拟机系统通过第一CPU检测虚拟机数目M1是否发生变化;S7.当检测到的虚拟机数目M1不变时,回到步骤S6;S8.当检测到的虚拟机数目M1发生变化时,若虚拟机数目M1小于设定阈值M,第一CPU结束物理网卡的虚拟配置,回到步骤S1;S9.若虚拟机数目M1大于等于设定阈值M,回到步骤S3。3.如权利要求1所述的一种KVM的网络性能优化方法,其特征在于,所述步骤S4中第一CPU采用SR-IOV技术将物理网卡配置为N1个虚拟网卡,具体步骤如下:S41,在BIOS中打开VT-d技术和SR-IOV;S42,编辑grub启动菜单:打开输入输出内存管理单元,指定IO调度器,解除每个虚拟网卡的内存限制和输入输出控制的限制;S43,设置Linux内核参数:设置KVM虚拟机系统的进程最小运行时间,设置KVM虚拟机系统的进程被唤醒后最小运行时间的基数,设置KVM虚拟机系统一个运行队列所有进程运行一次的周期;S44,加载物理网卡驱动程序模块配置文件,设置虚拟功能数等于虚拟网卡数目N1,禁用虚拟网卡驱动程序。4.如权利要求2所述的一种KVM的...

【专利技术属性】
技术研发人员:殷斌
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1