由于使用本地存储模式部署的openstack,在开启cpu超分配置后,如果虚拟机cpu使用都达到100%情况下,物理服务器中的服务在获取CPU资源时会变得非常慢或者长时间无法获取导致服务异常,同时又没有自动迁移的情况下(二开后,自动热迁移功能无法使用),为了保证物理服务器服务能够正常运行,通过修改cgroup配置限制openstack虚拟机总共使用物理机CPU数量,用于规避因为虚拟机过多使用CPU导致物理服务器系统服务没有CPU资源可用或者获取CPU资源很慢,导致系统服务异常或访问缓慢问题
具体设置:
获取服务器CPU线程总数
~# cat /proc/cpuinfo| grep "cpu cores"|wc -l
40
查找进程所在cgroup,例如:获取qemu-system所属cgroups
~# ps -aux | grep qemu-system-x86
root 23388 311 0.8 18621112 1183580 ? Sl Jan10 8532:50 qemu-system-x86_64