我在服务器上运行了很多 openvz 容器。现在我遇到了很多性能问题,我认为这些问题来自 I/O,因为 munin graph 显示了很多 I/O 活动。
服务器是 proxmox,最近刚刚升级(这也可能是问题所在)但是在升级到最新版本的 proxmox 之前,我在运行 shorewall 的容器中添加了一个网关。
但是现在几乎不可能登录服务器,重新启动可以使系统可用,但两三个小时后 I/O 问题再次出现。
没有太多的网络活动(10kb/s),它是一个家庭“测试”服务器。
还有其他方法可以检测问题吗?openvz container asgateway 不是一个好主意吗?
答案1
您可以通过输入以下命令来查看“failctl”列:
vzctl exec 101 cat /proc/user_beancounters
现在您需要将此数字(此处为 101)调整到所有虚拟机。如果某些 beancounter 不等于 0,则需要增加这些值。
例如,如果您想动态增加一个值,您可以这样做:
vzctl set 101 --privvmpages 786432:1048576 --save --setmod restart
现在,对于您的 I/O 问题,在主机(托管虚拟机)上,“top”命令是否会给您一些 iowaits?如果是这种情况,则意味着您应该添加更多磁盘。
答案2
我切换回内核 2.6.18,I/O 问题消失了。看来是内核 2.6.24 的问题