最近有几台 ESXI服务器频繁宕机影响了线上服务,最后发现是由于 虚拟机将 ESXI 资源(cpu 内存)用光后导致的,总结并分享:
1 ESXI 宿主机 资源摘要
2 使用虚拟机资源限制功能:
点击资源项,设置 cpu 保留 2000 MHZ,限制最大 2000MHZ(线上服务器要要根据实际情况分配!)
内存 限制 512MB
磁盘限制(未限制)
3 测试 限制虚拟机 cpu 资源
执行 死循环的测试脚本!
虚拟机负载
限制在 1974MHZ
4 没有资源限制的虚拟机
cpu 被限制在 3968MHZ ,这是为什么?答案是 我为此虚拟机配置了2个虚拟 cpu,也就是说如果我为此虚拟机配置8个虚拟cpu 的话,那么此虚拟机将消耗 ESXI 宿主机 全部cpu 资源!
最后此虚拟机警报
警报说明
试想一下如果这台 ESXI (XEON 5405 2.0GHz*2 cpu "8核",16GB memory )服务器, 创建了 4台 虚拟机 每台配置为 4 vcpu 4 GB 内存那很可能将 ESXI "托死",例如下图 ESXI 宿主机警报!
图片2
超过ESXI 全部cpu 资源时,ESXI 将宕机!
结束
综上所讲,在为 虚拟机分配资源时,要考虑下 ESXI 宿主机资源 ,特别是为虚拟机分配虚拟cpu 或者内存时 要么对其进行资源限制,要么结合实际情况分配虚拟 cpu 内存等。
本文转自 dongnan 51CTO博客,原文链接:http://blog.51cto.com/dngood/736451