Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

第 6 章 使用 KVM 进行过量使用

KVM 管理程序自动过量使用 CPU 和内存。这意味着可将更多虚拟化 CPU 和内存分配给虚拟机,超过系统中有物理资源。这是可行的,因为大多数进程都无法访问其分配资源的 100%。
因此,利用率低下的虚拟化服务器或桌面可在更少的主机上运行,这可节省大量系统资源,且在服务器硬件中影响较少、冷却和投资。

6.1. 过量使用内存

KVM 管理程序中运行的虚拟客户机没有为其分配物理 RAM 的专用块。相反,每个客户机虚拟机作为 Linux 进程,主机物理机器的 Linux 内核仅在请求时分配内存。此外,主机的内存管理器还可在自己的物理内存和交换空间之间移动客户机虚拟机的内存。
过量使用要求在主机物理机器上分配足够的交换空间,以容纳所有 guest 虚拟机,并为主机物理机器的进程有足够的内存。作为基本规则,主机物理机器的操作系统需要最多 4GB 内存,最少有 4GB 的交换空间。有关为 swap 分区确定适当大小的高级说明,请参阅 红帽知识库基本
重要
对于常规内存问题,过量使用并不是一个理想的解决方案。建议使用内存短缺处理方法,为每个客户机分配较少的内存,向主机添加更多物理内存,或使用 swap 空间。
如果虚拟机被频繁交换,则虚拟机会较慢。另外,过量使用可能会导致系统内存不足(OOM),这可能会导致 Linux 内核关闭重要系统进程。如果您决定过量使用内存,请确定执行足够的测试。若需提交,请联系红帽支持团队以获得帮助。
过量使用并不适用于所有客户机虚拟机,但已发现,可在桌面虚拟化设置中使用最小程度,或运行带有内核相同页面合并(KSM)的几台客户虚拟机。
有关 KSM 和过量使用的更多信息,请参阅 第 7 章 KSM
重要
当使用 设备分配 时,所有虚拟机内存必须静态预先分配,才能启用具有分配设备的直接内存访问(DMA)。因此,设备分配不支持内存过量使用。