如何通过 monit 工具监控其他服务器的 CPU 平均负载?

如何通过 monit 工具监控其他服务器的 CPU 平均负载?

如何通过 monit 工具监控其他服务器的 CPU 平均负载?

此示例显示唯一的本地主机。

   check System my_server
    if loadavg (1min) > 4 then alert
    if loadavg (5min) > 2 then alert
    if memory usage > 12% then alert
    if swap usage > 25% then alert
    if cpu usage (user) > 80% then alert
    if cpu usage (system) > 30% then alert
    if cpu usage (wait) > 20% then alert

答案1

monit作为示例,您不能直接使用其他服务器的规则来配置特定服务器。

守护进程配置monit仅适用于安装它的特定服务器;例如,monit它本身只是agent在服务器/VM 上运行的(远程)。

但是,您可以:

  • 使用中号/监控monit用于通过网络与中央服务器通信并收集数据;
  • 配置 monit 以通过浏览器单独访问每个 monit 实例;
  • 使用 monit 作为 Nagios 的代理。

至于M/monit,也是作者写的monit,不过是付费的。它是一个有趣的轻量级监控解决方案,适用于小型基础设施,并且具有通用主机监控、分析功能,并且该界面在移动设备中也运行良好。

M/Monit 截图

为了与 M/Monit 对话monit,您必须在每种monit情况下激活 Web 界面。激活 Web 界面除了提供 Web 界面外,还允许访问 REST API,提供可远程访问的 XML 统计信息。

要激活 M/Monit 的 Web 界面,或者能够远程浏览监控数据:

set httpd port 2812   
allow 0.0.0.0/0.0.0.0     # allow localhost to connect to the server  
allow admin:monit

也可以看看安装和配置 Monit Web 界面

配置 monit Web 界面后,您还可以使用浏览器并直接指向特定服务器/VM。

尽管如此,为了监控多个服务器,我更喜欢使用 Nagios 或 Zabbix。

虽然有用于 monit 的 Nagios 插件,但我更喜欢使用本机agent, nrpe.

还有一个 python 库可以monit通过 Web 界面进行远程通信,我允许您以自己的方式编写脚本来监视几个服务器,我还没有探索过这个途径。https://github.com/polymeris/python-monit

监控网页界面示例:

监控
(来源:不眠之兽.eu

相关内容