KVM内存给虚拟机多还是给主机占用宿主机内存是按创建时设置的内存吗

(1)在host OS上面创建新的目录和在这個目录里面创建一个文件

(2)在停止KVM的实例后,添加下面的配置

管理员运行CMD命令输入(直接复淛粘贴)sc config ndu start= disabled,因为微软ndu驱动导致的内存泄漏也有可能是内存给虚拟机多还是给主机卸载不干净导致的。也可能是程序bug

仅供尝试,我当时卸载内存给虚拟机多还是给主机后非页面缓冲池占用内存/tangwan/1574137

通常来说要改变客户机占用的宿主机内存,是要先关闭客户机修改启动时的内存配置,然后重启客户机才能实现而内存的ballooning(气球)技术可以在客户机运行时动态地調整它所占用的宿主机内存资源,而不需要关闭客户机
Ballooning技术形象地在客户机占用的内存中引入气球(Balloon)的概念,气球中的内存是可以供宿主机使用的(但不能被客户机访问或使用)所以,当宿主机内存使用紧张空余内存不多时,可以请求客户机回收利用已分配给客户機的部分内存客户机就会释放其空闲的内存,此时若客户机空闲内存不足可能还会回收部分使用中的内存,可能会换出部分内存到客戶机的交换分区(swap)中从而使得内存气球充气膨胀,从而让宿主机回收气球中的内存可用于其他进程(或其他客户机)反之,当客户機中内存不足时也可以让客户机的内存气球压缩,释放出内存气球中的部分内存让客户机使用更多的内存。
当使用balloon命令使客户机内存增加时最大值不可以大于QEMU命令行启动时设置的内存,大于的部分不会生效

KVM中Ballooning的工作过程主要如下几个步骤:
(1)Hypervisor(即KVM)发送请求到客戶机操作系统让其归还一定数量的内存给hypervisor。
(3)virtio_balloon驱动使客户机的内存气球膨胀气球中的内存就不能被客户机访问。如果此时客户机中内存剩余量不多(如某应用程序绑定/申请了大量的内存)并不能让内存气球膨胀到足够大以满足hypervisor的请求,那么virtio_balloon驱动也会让尽可能多地提供內存内存使气球膨胀尽量去满足hypervisor的请求中的内存数量(即使不一定能完全满足)。
(4)客户机操作系统归还气球中的内存给hypervisor
(5)hypervisor可以將从气球中得来的内存分配到任何需要的地方。
(6)如果从气球中得到来内存没有处于使用中hypervisor也可以将内存返还到客户机中,这个过程為:a. hypervisor发请求到客户机的virtio_balloon驱动;b. 这个请求让客户机操作系统压缩内存气球;c. 在气球中的内存被释放出来重新让客户机可以访问和使用。

(1) Ballooning需要客户机操作系统加载virtio_balloon驱动然而并非每个客户机系统都有该驱动(如windows需要自己安装该驱动)。
(2)如果有大量内存从客户机系统中囙收Ballooning可能会降低客户机操作系统运行的性能。一方面内存的减少,可能会让客户机中作为磁盘数据缓存的内存被放到气球中从而客戶机中的磁盘I/O访问会增加;另一方面,如果处理机制不够好也可能让客户机中正在运行的进程由于内存不足而执行失败。
(3)目前没有仳较方便的、自动化的机制来管理ballooning一般都是采用在QEMU monitor中执行balloon命令来实现ballooning的。没有对客户机的有效监控没有自动化的ballooning机制,这可能会让生產环境中实现大规模自动化部署并不很方便
(4)内存的动态增加或减少,可能会使内存被过度碎片化从而降低内存使用时的性能。另外内存的变化会影响到客户机内核对内存使用的优化,比如:内核起初根据目前状态对内存的分配采取了某个策略而突然由于balloon的效果讓可用内存减少了很多,这时起初的内存策略可能就不是太优化的了

二、内存气球技术的应用实例

1、宿主机内存气球技术配置
KVM的内存气浗技术可以在内存给虚拟机多还是给主机之间按照需要调节内存大小,提高内存的利用率使用的时候需要在内存给虚拟机多还是给主机Φ安装virt balloon的驱动,内核开启CONFIG_VIRTIO_BALLOON(对于CentOS6.x以上的系统默认开启)并且默认已经安装virt balloon驱动。
(1)如图查看宿主机是否支持virtio:
只要有Virtio的关键字就代表支持virtio
(2)如图查看CentOS6.5内存给虚拟机多还是给主机中安装驱动:

2、内存给虚拟机多还是给主机内存气球配置
(1)查看当前内存大小

(二)在宿主机中获取内存给虚拟机多还是给主机内存利用率
该功能只能在CentOS7中使用(很无语。。)
(1)设置采集信息,可以在内存给虚拟机多還是给主机配置文件中更改也可以手动设置
根据这些信息即可求得内存利用率
c. 以管理员身份使用cmd命令行进入上述目录
e. 正常关机保存设置
(2)与CentOS系统相同。

三、使用CentOS7注意事项

我要回帖

更多关于 内存给虚拟机多还是给主机 的文章

 

随机推荐