我试图限制虚拟机使用的所有内存到一个特定的值。
在Ubuntu服务器上,设置“libvirt-qemu”限制解决了这个问题。 但是在CentOS中,它创build了libvirt / qemu / virtual-machine-name,看起来像是不可能为虚拟机设置全局内存限制; 而是唯一的方法是更改在qemu目录下创build的限制虚拟机的内存。
是否可以设置全局cgroup内存限制?
mount { cpuset = /cgroup/cpuset; cpu = /cgroup/cpu; cpuacct = /cgroup/cpuacct; memory = /cgroup/memory; devices = /cgroup/devices; freezer = /cgroup/freezer; net_cls = /cgroup/net_cls; blkio = /cgroup/blkio; } group mynamekvm { perm { admin { uid = root; gid = root; } task { #uid of qemu and gid of kvm uid = 107; gid = 37; } } memory { memory.limit_in_bytes = 61G; }
}
我在cgrules.conf中有这个设置
qemu memory mynamekvm
并重新启动cgconfig和libvirtd并重新启动虚拟机,
但仍然
mynamekvm/memory.usage_in_bytes is 0
任何想法如何在centos系统上设置libvirt限制?
configuration与Ubuntu稍有不同。 您需要在/etc/sysconfig/libvirtd添加CGROUP_DAEMON=sets:name 。
在你的情况是这样的
CGROUP_DAEMON=memory:/mynamekvm
重新启动所有与cgconfig,libvirt和guest相关的服务。 同时确保selinuxconfiguration正确,或尝试禁用然后重新启动服务。