为了创业,我贷款买了一台物理专用服务器,里面有几台虚拟机
目前该服务器上主要有 2 个 VM:
VM“工具”,使用 ubuntu 服务器 10.04 LTS
- 使用 mercurial 和 hgserve 的源代码存储库一堆
- 用于 Atlasian 的错误跟踪、wiki 的 JAVA 应用程序……
- 使用 PostgreSQL 作为工具的数据库
- Apache HTTPD 作为 HTTPS 前端。
VM“星号”,使用 ubuntu 服务器 10.04 LTS
- 使用星号服务器,可以运行,但是现在更多是用于测试。
但将来我们会有一个带有 JAVA 应用程序的“生产”VM:
- Apache HTTPD 前端
- PostgreSQL 数据库
- Tomcat webapp(可能已群集化)
我感兴趣的是一种可以监控服务、KVM VM、应用程序和数据库可用性的软件,以便我能够在出现问题时做出反应。
我还有另一个用例,我想监控应用程序的性能(请求、CPU、内存……)并收集使用情况统计数据。
我们基本上没有钱,想要一个免费的工具,至少一开始是免费的。
什么工具可以简单易用地完成这项工作?我听说过 Nagios 和 Hyperic,但我不了解它们。所以我不知道它们是否适合我们的需求。
编辑 :
不仅需要对服务器进行监控,还需要调查实际应用程序的性能、响应能力,并尽可能隔离瓶颈。
从链接(不是同一个问题,因为它似乎更通用,但信息量很大)和实际响应来看,Nagios + Munin 应该很合适。问题是 Nagios 似乎有点复杂(我不知道 Munin 是否如此)。Nagios/Munin 组合是否能够收集 Java 应用程序的详细统计数据和历史数据(请求/秒、请求延迟,以及按 URL、小时、天、周等统计的信息?)
还有其他(更好的?)替代方案吗?
答案1
Nagios。很长一段时间以来,我都害怕使用文本配置,并尝试了所有其他流行或稍微流行的解决方案,但始终不满意。当我最终尝试使用 nagios 并真正完成配置时,我爱上了它,而且实际上发现它比 Zenoss 等 GUI 工具更容易配置和自定义。
虽然我还没有这样做,但您可以将它与 Monit 结合起来以自动尝试从问题中恢复,并与 Munin 结合起来收集历史数据。
编辑:
文档用于设置 Nagios 和 Munin。它是 Ubuntu 专用的,但我实际上是按照它在 Red Hat 上配置 Nagios 的。