在我使用的服务器(Ubuntu 14.04 LTS)上,Monit(v5.6)挂起 1 分 15 秒后才出现输出monit summary
。其他操作(例如)unmonitor
甚至需要更长时间。我不知道为什么,因为这是一个没有显著 CPU/内存负载的 Amazon EC2 c4.4xlarge 实例。
该集群中的其他服务器没有这个问题。
以下是一些有time
输出的场景:
- 许多事情受到监控:
root@SERVER01:~# time monit summary
...
Process 'crond' Running
File 'cron_bin' Accessible
File 'cron_rc' Accessible
Directory 'cron_spool' Accessible
System 'SERVER01' Running
real 1m15.091s
user 0m0.000s
sys 0m0.011s
- 禁用一切监控
root@SERVER01:~# time monit unmonitor all
real 6m30.446s
user 0m0.026s
sys 0m0.000s
- 所有未监控的内容都同样缓慢
root@SERVER01:~# time monit summary
The Monit daemon 5.6 uptime: 36m
Process 'rsyslogd' Not monitored
...
Process 'crond' Not monitored
File 'cron_bin' Not monitored
File 'cron_rc' Not monitored
Directory 'cron_spool' Not monitored
System 'NC-CRIMSON01' Not monitored
real 1m15.089s
user 0m0.010s
sys 0m0.003s
奇怪的是结果总是需要 1 分 15 秒。降低set daemon 90
到30
没有效果。
答案1
好的,我自己可以解决这个问题,但是为了整个互联网的利益,我会发布它。
注意到http://localhost:2812
每个请求的响应时间都是 17 秒之后,我开始考虑 DNS 和超时问题……
localhost
事实证明,这台新服务器的 /etc/hosts 中没有存在!ಠ_ಠ