kvm性能优化(代码片段)

author author     2022-12-21     764

关键词:

优化思路及步骤

CPU优化

要考虑CPU的数量问题,所有guestCPU的总数目不要超过物理机CPU的总数目。如果超过,则将对性能带来严重影响,建议选择复制主机CPU配置

内存优化

1、KSM(相同页)

内存分配的最小单位是page(页面),默认大小是4KB。可以将host机内容相同的内存合并,以节省内存的使用,特别是在虚拟机操作系统都一样的情况下,肯定会有很多内容相同的内存值,开启了KSM,则会将这些内存合并为一个,当然这个过程会有性能损耗,所以开启与否,需要考虑使用场景。

而KSM对KVM环境有很重要的意义,当KVM上运行许多相同系统的客户机时,客户机之间将有许多内存页是完全相同的,特别是只读的内核代码页完全可以在客户机之间共享,从而减少客户机占用的内存资源,能同时运行更多的客户机

1、通过/sys/kernel/mm/ksm目录下可查看内存页共享的情况
cd /sys/kernel/mm/ksm
ll

技术分享图片
每个页面的大小为4KB,可计算出共享内存为:4*页面数=内存大小(KB)
技术分享图片
KSM会稍微影响系统性能,以效率换空间,如果系统内存很宽裕,则无需开启KSM,如果想尽可能多地并行运行KVM客户机,则可以打开KSM

2、对内存设置限制

如果我们有多个虚拟机,为了防止某个虚拟机无节制地使用内存资源,导致其他虚拟机无法正常使用,就需要对内存的使用进行限制
技术分享图片

3、大页后端内存

在逻辑地址向物理地址转换时,CPU保持一个翻译后备缓冲器TLB,用来缓存转换结果,而TLB容量很小,所以如果page很小,TLB很容易就充满,这样就容易导致cache miss,相反page很大,TLB需要保存的缓存项就变小,就会减少cache miss。通过为客户机提供大页后端内存,就能减少客户机消耗的内存并提高TLB命中率,从而提升KVM性能。

使用大页,KVM的虚拟机的页表将使用更少的内存,并且提高CPU的效率。
技术分享图片

或者在/etc/sysctl.conf 中添加vm.nr_hugepages=2500来持久设定大页文件系统需要的内存页面数

编辑虚拟机的XML配置文件来使用大页分配内存
技术分享图片
技术分享图片
技术分享图片

4、I/O的优化

在实际的生产环境中,为了避免过度消耗磁盘资源而对其他的虚拟机造成影响,我们希望每台虚拟机对磁盘资源的消耗是可以控制的。就可以调整I/O的权重weight,权重越高写入磁盘的优先级越高。

1、整体的权重,范围在100-1000
2、限制具体的I/O
技术分享图片

5、系统调优工具tuned

tuned是服务端程序,用来监控收集系统各个组件的数据,并依据数据提供的信息动态调整系统设置,达到动态优化系统的目的
技术分享图片

- virtual-guest:企业级服务器配置中使用这个profile,其中包括电池备份控制程序、缓存保护以及管理磁盘缓存
- latency-performance:延迟性能调试的服务器配置
- enterperise-storage:企业存储服务器优化方案
- default:默认节点配置,是最基本的节点配置,只启用磁盘和CPU插件
- virtual-host:根据enterperise-storage配置,virtual-host还可减少可置换的虚拟内存,并启用更多集合脏页写回。同时推荐在虚拟化主机中使用这个配置,包括KVM和红帽企业版Linux虚拟化主机
- throughput-performance:吞吐性能调整的服务器profile。如果系统没有企业级存储,建议使用这个profile

kvm性能优化(代码片段)

一、KVM为什么要调优性能的损耗是关键。KVM采用全虚拟化技术,全虚拟化要由一个软件来模拟硬件,故有一定的损耗,特别是I/O,因此需要优化。KVM性能优化主要在CPU、内存、I/O这几方面。当然对于这几方面的优化,也是要分场... 查看详情

kvm文件管理及性能优化(代码片段)

...磁盘文件有raw和qcow2两种格式。KVM默认格式是raw,raw格式性能最好、速度最快,其缺点是不支持一些新的功能,如镜像、Zlib磁盘压缩、AES加密等文件管理转换磁盘格式#qemu-imginfo/vdir/c01.raw//查看当前磁盘格式#virshs 查看详情

kvm虚拟机性能调优(代码片段)

kvm虚拟机性能调优kvm性能优化,主要集中在cpu、内存、磁盘、网络,4个方面,当然对于这里面的优化,也是要分场景的,不同的场景其优化方向也是不同的,下面具体聊聊这4个方面的优化细节。1.CPUcpu优... 查看详情

kvm性能优化(代码片段)

...文切换。物理机到虚拟机多次的上下文切换,势必会导致性能出现问题。对于全虚拟化,inter实现 查看详情

kvm虚拟化的优化(代码片段)

KVM调优思路性能的损耗是矛盾的根源,KVM采用全虚拟化技术,全虚拟化要由一个软件来模拟硬件层,故有一定的损耗,特别是I/O输入输出。KVM性能优化主要在CPU、内存、I/O这几方面,当然在这几方面也是要分场景的,不同场景优... 查看详情

实操kvm虚拟机的优化历程---按需优化(代码片段)

一、KVM为什么要调优性能的损耗是矛盾的根源,KVM采用全虚拟化技术,全虚拟化要由一个软件来模拟硬件层,故有一定的损耗,特别是I/O输入输出。KVM性能优化主要在CPU、内存、I/O这几方面,当然在这几方面也是要分场景的,不... 查看详情

实操干货kvm命令管理虚拟机与性能优化(代码片段)

KVM命令管理虚拟机1、KVM基本功能管理简要介绍KVM中经常使用的基本功能管理命令(CentOS7.4是宿主机中安装的虚拟机);1)、virsh-h#查看命令帮助2)、ls/etc/libvirt/qemu#查看KVM的配置文件存放目录(虚拟机系统实例配置文件的文件... 查看详情

kvm命令--优化篇(代码片段)

...硬件,故有一定的损耗,特别是I/O,因此需要优化。___KVM性能优化主要在CPU、内存、I/O这几方面。当然对于这几方面的优化,也是要分场景的,不同的场景其优化方向也是不同的。2-优化2.1-cpu___考虑CPU的数量问题,所有guestcpu的... 查看详情

kvm虚拟机性能调优(代码片段)

kvm虚拟机性能调优kvm性能优化,主要集中在cpu、内存、磁盘、网络,4个方面,当然对于这里面的优化,也是要分场景的,不同的场景其优化方向也是不同的,下面具体聊聊这4个方面的优化细节。1.CPUcpu优... 查看详情

kvm虚拟化技术详解--kvm的优化(代码片段)

目录:(4.1)KVM虚拟机性能优化思路及方案(4.2)利用tuned优化(4.3)配置KSM(4.4)通过配置大页优化guestos(4.5)配置CPU的亲和性(4.6)半虚拟化驱动(4.1)KVM虚拟机性能优化思路及方案通过前面的学习我们已经可以正常的创建虚... 查看详情

kvm网络性能调优(代码片段)

首先,我给大家看一张图,这张图是数据包从虚拟机开始然后最后到物理网卡的过程。我们分析下这张图,虚拟机有数据包肯定是先走虚拟机自身的那张虚拟网卡,然后发到中间的虚拟化层,再然后是传到宿主机里的内核网桥中... 查看详情

[转帖]kvm性能测试报告(代码片段)

KVM性能测试报告http://openskill.cn/article/88 本测试试图找出以下问题的答案:      1.虚拟机相对于物理机性能损失有多严重(CPU/MEM/NET/DISK)       2.对于多个虚拟机,KVM对资源的分配是否... 查看详情

kvm命令集与优化(代码片段)

(一)使用KVM命令集管理虚拟机1:KVM基本功能管理(1)查看命令帮助[[email protected]~]#virsh-hvirsh[options]...[<command_string>]virsh[options]...<command>[args...].../省略部分内容2:查看KVM的配置文件存放目录[[email protected] 查看详情

2017版:kvm性能优化之内存优化

我们说完CPU方面的优化,接着我们继续第二块内容,也就是内存方面的优化。内存方面有以下四个方向去着手:EPT技术大页和透明大页KSM技术内存限制1.EPT技术EPT也就是扩展页表,这是intel开创的硬件辅助内存虚拟化技术。我们... 查看详情

深度剖析kvm年度核心技术突破guestpebs(代码片段)

...f08;ID:CSDNnews)什么是GuestPEBS针对虚拟机中CPU硬件性能事件与软件代码匹配不够准确的问题,腾讯云技术团队经过深入研究和硬件探索,自主设计了GuestPEBS(精确事件采样技术)特性在KVM上的虚拟化方案。这项... 查看详情

kvm—安装部署(代码片段)

目录文章目录目录HostOS配置优化安装CentOSGNOME图形界面相关安装包及其作用安装KVMHostOS配置优化使用国内yum和epel镜像源加速。yum-yinstallwgetmkdir/etc/yum.repos.d/repo.bkmv/etc/yum.repos.d/*.repo/etc/yum.repos.d/repo.bkwget-O/etc/yum.repos.d/CentOS 查看详情

kvm的安装与基本使用(代码片段)

目录文章目录目录HostOS配置优化安装CentOSGNOME图形界面相关安装包及其作用安装KVMvirsh指令Libvirt/KVM的网络模式1、vSwitch使用Bridge模式2、vSwitch使用NAT模式3、vSwitch使用Routed模式4、vSwitch使用Isolated模式测试虚拟机及网络连通性HostOS... 查看详情

webpack优化环境配置(代码片段)

一、webpack性能优化概述开发环境性能优化生产环境性能优化1.1开发环境性能优化优化打包构建速度HMR优化代码调试source-map1.2生产环境性能优化优化打包构建速度oneOfbabel缓存多进程打包externalsdll优化代码运行的性能缓存(hash-chunkh... 查看详情