8.2.2. 使用 virsh 进行内存调优
guest XML 配置中的可选
<memtune> 元素允许管理员手动配置客户机虚拟机内存设置。如果省略 <memtune>,则虚拟机会根据在虚拟机创建过程中如何分配和分配的内存。
使用 virsh memtune 命令显示或设置虚拟机
<memtune> 元素中的内存参数,根据您的环境替换值:
virsh memtune virtual_machine --parameter size
# virsh memtune virtual_machine --parameter size
可选参数 包括:
hard_limit- 虚拟机可以使用的最大内存,单位为 kibibytes( 1024 字节块)。警告设置此限制太低,可能会导致虚拟机被内核终止。
soft_limit- 要在内存争用期间强制实施的内存限值,以 kibibytes( 1024 字节的块)。
swap_hard_limit- 最大内存加上交换虚拟机可以使用的最大内存,单位为 kibibytes( 1024 字节的块)。
swap_hard_limit值必须大于hard_limit值。 min_guarantee- 保证虚拟机的最小内存分配量(单位为 1024 字节)。
注意
有关使用 virsh memtune 命令的详情,请参考 # virsh help memtune。
可选的
<memoryBacking> 元素可以包含多个影响主机页面支持虚拟内存页的元素。
设置
locked 可防止主机交换属于客户机的内存页面。将以下内容添加到客户机 XML 中,以锁定主机内存中的虚拟内存页面:
<memoryBacking>
<locked/>
</memoryBacking>
<memoryBacking>
<locked/>
</memoryBacking>
重要
设置
locked 时,必须在 hard_limit 元素中将 <memtune> 设置为为客户机配置的最大内存,以及 进程本身消耗的内存。
设置
nosharepages 可防止主机合并客户机间使用的相同内存。要指示管理程序禁用客户机的共享页面,请将以下内容添加到客户机的 XML 中:
<memoryBacking>
<nosharepages/>
</memoryBacking>
<memoryBacking>
<nosharepages/>
</memoryBacking>