我有一系列虚拟服务器。我正在运行一个命令来登录每个服务器并使用 uptime 查看平均负载。
确定负载值是否代表过载的最佳方法是什么?我在 Rackspace Cloud 上运行,因此服务器具有突发能力,并且可以是各种不同的大小。
我有点困惑,不知道如何找到一种一致的方法来确定何时需要启动新服务器。我可以做一些事情,比如估算每个服务器上正在运行的作业,但我希望系统能够更接近每个实例上可用的实际资源使用情况,因为它显然有很大差异!
非常感谢帮助!
答案1
Linux CPU 平均负载可以告诉您这一点,请查看有关平均负载的网络教程。 http://blog.scoutapp.com/articles/2009/07/31/understanding-load-averages
跟踪多台计算机的资源(如 CPU 水平)的一个好方法是使用 SNMP(简单网络管理协议),它可以为您提供您想要的任何统计数据并自动更新。
答案2
您使用哪种虚拟化解决方案?大多数企业虚拟化解决方案都有自己的报告、管理和容量规划工具,例如:
答案3
我使用 Cacti 来监控和绘制服务器负载(以及其它事情)。
对于大多数服务器,我使用“更好的 Cacti 模板”,它可以通过 SSH 连接并收集有关负载、CPU 使用率、内存、磁盘 io 等的数据。
注意你的仙人掌图中的尖峰,并仔细检查你的日志,找出当时发生了什么导致了尖峰。
http://code.google.com/p/mysql-cacti-templates
我还使用 Nagios 通过电子邮件和短信发送状态警报。