加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 电商 > 正文

2017版:KVM性能优化之CPU优化

发布时间:2021-01-14 14:56:55 所属栏目:电商 来源:网络整理
导读:《2017版:KVM性能优化之CPU优化》要点: 本文介绍了2017版:KVM性能优化之CPU优化,希望对您有用。如果有疑问,可以联系我们。 前言 任何平台根据场景的不同,都有相应的优化.不一样的硬件环境、网络环境,同样的一个平台,它跑出的效果也肯定不一样.就好比一

OK,这里要注意的是,你把虚拟机用reboot重启,这个绑定配置还是生效的,但是你shutdown的话,CPU绑定的效果会失效.我们要让VM关机然后起来也生效,就必须把参数写入到虚拟机的XML里,然后保存,这样关机了也不会失效,这里要注意下

 

OK,以上就是CPU绑定技术的操作.通过这样的操作,我们可以在一台多CPU的物理机上固定几个CPU给虚拟机用.当然,至于为什么可以这样做,前面我们提到了关于NUMA的原理,如果固定了虚拟机的CPU,那么它就不会去找远端节点了,另外就是有些场景下,一物理机多个CPU,如果前面几个CPU负载很高,利用率大,后面几个CPU利用率低,那么我们可以协调下,做CPU的绑定,平衡下CPU的负载.

以上是CPU的绑定,接下来我们讲讲CPU的热添加.

1.5 CPU 热添加

首先我们先了解下什么叫热添加,热添加就是在虚拟机运行不关机的情况下,做CPU的添加操作.那么要注意的是,这个热添加是在Redhat7.0以后才出现的,之前是没有的.所以要享用这功能那必须要求KVM宿主机和虚拟机都得在7.0版本以后.那么具体怎么操作我们通过一个演示给大家操作下.

比如目前这个虚拟机,这是一个CentOS7.1的.我们先看下目前虚拟机的CPU的数值,我们可以进系统查看,cat?/proc/cpuinfo|?grep?“processor”|?uniq|?wc?-l?,我们看到当前是2个CPU:

然后我们解释下这个最大CPU分配数是怎么个意思,它的意思就是给这个虚拟机最大预留的CPU个数,这个设置很重要,如果你想给虚拟机热添加,那么这个设置必须写.比如我们这里写的4,那么我们可以给虚拟机最大热添加到4个CPU,而且4是上限.

那么接下来说下,具体怎么热添加.我们先在宿主机里先给这个虚拟机添加第三个CPU,原来是2个,现在再添加一个变成3个:?setvcpus?VM3_CentOS7.1?3?–live

然后我们到虚拟机里面把这个CPU激活 :

echo?1?>/sys/devices/system/cpu/cpu2/online

我们再运行查看,发现已经变成3个了.

如果要减少,那么只能在虚拟机里减少刚才的CPU

# echo?0?>/sys/devices/system/cpu/cpu2/online

但是在宿主机层面看这个虚拟机的vCPU数还是3个,也就是说不支持热减少,我们运行vcpuinfo?VM3_CentOS7.1命令发现还是3个:

同理,Windows的添加也是如此,直接在宿主机里添加第三个CPU即可

# setvcpus?VM4_Win2008?3?–live

然后虚拟机里不用操作,它会自动刷新成3个CPU,我们也可以一个windows虚拟机做相关的演示,具体的可以由读者自己操作了.

到这为止,以上就是KVM CPU方面的优化.总结起来就两点,一个是CPU绑定,还有一个就是热添加.

CPU绑定首先得了解NUMA技术,然后站在整个宿主机CPU资源的层面去调节.

热添加,当你某个虚拟机正在运行,然后突然业务压力增大了,可以通过这方法达到0停机提升虚拟机CPU性能.

参考链接:

http://www.cnblogs.com/yubo/archive/2010/04/23/1718810.html

http://cenalulu.github.io/linux/numa/

宝哥,云技术社区专家,资深IT运维工程师,多年IT运维经验,擅长Linux,VMware&Openstack虚拟化,ELK大数据日志分析等运维技术,扎实的一线运维经验,目前在某大型云计算公司担任openstack高级运维工程师.

文章来自微信公众号:云技术实践

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读