我不确定要使用哪个监控框架。目前,我正在查看Nagios或Sensu。
有人能给我一个很好的参考资料,显示这两者(或任何其他监测工具可能是一个很好的解决方案)的比较吗?我的主要目的是在EC2上进行横向扩展。我正在使用Opscode Chef进行系统集成。
答案 0 :(得分:18)
Nagios和Sensu之间的一个重要区别 -
Nagios要求所有配置1)检查2)处理程序,但最重要的是3)主机要写在Nagios服务器上的配置文件中。这意味着每次更改上述3个中的一个(例如添加新主机,删除旧主机)时,您需要重新编写配置文件并重新启动Nagios。
Sensu几乎与上述相同,但有一个重要区别 - 当您的架构中添加或删除主机时(如大多数自动扩展云部署中的情况) - 主机本身运行一个sensu-client “订阅”不同的可用支票。因此,当一台新服务器出现并说“我是一个网络服务器”时,在其上运行的sensu-client将询问sensu-server“网络服务器应该自行运行哪些检查?”并运行那些。
除此之外,Nagios(也是Icinga)和Sensu的操作都非常棒,并且通过仪表板(YMMV)拥有大量的支票,处理程序和可见性设施。
答案 1 :(得分:13)
根据Sensu最近的一次经验和Nagios的相当多的经验,我认为两者都是很好的选择。
Sensu绝对是新生儿。它有一个很好的用户界面和漂亮的API。但是,它确实需要在您的设置中使用Redis和RabbitMQ。因此,请考虑您是否需要某些东西来监控sensu监控堆栈之外的依赖关系。 Sonian也提供厨师食谱来尝试。https://github.com/sensu/sensu-chef
Nagios已经存在了很长时间。它通常打包用于大多数发行版,这使得安装简单并且几乎没有依赖性。它的跟踪记录也意味着找到知道它或已经使用它并且可以提供建议的人很容易。另一方面,UI是丑陋的,编程访问通常是hacky或通过第三方附加组件。 Nagios也存在厨师食谱:
https://github.com/bryanwb/chef-nagios
如果你有时间我会尝试两者,那么将两个监控系统作为试验运行几乎没有什么害处。主要考虑的是,特别是在动态EC2设置中,主要是配置管理工具可以轻松生成监控配置文件。
就其他工具而言,我个人会记录一些记录时间序列数据的内容,例如每秒请求数或一段时间内的负载。图表对监控有很大帮助,可用于通过Nagios或类似方式驱动警报。就个人而言,我是Ganglia和Graphite的粉丝,而Librato Metrics(https://metrics.librato.com/)是一个非常好的非自由选项。
答案 2 :(得分:5)
我尝试使用Nagios一段时间了:我觉得它的常见唯一原因是'其他人都使用它',因为它的使用绝对是可怕的。大量过于复杂,困难和冗长使它做任何新的事情:如果你发现它没有做的事情,你知道你已经进行了一个星期的宣传古老设计的糟糕文件。在你所有的努力结束时,一切正常,它看起来很可怕。刮掉它让我睡得更好。
Cacti看起来很不错,但在创建新插件时,它又不必要地复杂了。
对于图表我建议Munin:用任何语言编写新插件都是微不足道的,有数百种可用,并且看起来很合理。它非常容易安装 - 一个安装和设置一个访问规则的命令,因此适用于自动部署,易于包装到a chef recipe。 2.0即将推出并解决了它的大部分缺点(特别是添加了变量更新间隔,可缩放图形,ssh传输)。 Munin可以与Nagios交谈以获取通知,或者它可以自己做,并提供基本的仪表板。
答案 3 :(得分:1)
与Sensu和Nagios相比......选择将是Sensu监控系统。
以下是主要原因,
1.Easy Setup ..客户重启的减少很多..这是大企业的主要问题 2. Nagios插件可与Sensu Ecosystem一起使用。 3.可扩展且易于云环境。
有没有人听说过Zabbix。它有很多功能,并且作为一个包提供。我怀疑可扩展性
答案 4 :(得分:-2)
只要企业它由数据库,SAP,网络设备,网络服务器,文件管理器,备份库组成....几乎没有替代nagios(或它的表兄弟icinga,shinken) 也许有一天,一切都会自动地从云中出来,但是几年之后会有静态服务器(物理或虚拟,无关紧要),并且具有至少几个月的特定目的。我们仍然需要监控接口带宽,表空间,业务流程,数据库会话,日志文件,jmx指标。所有nagios世界的插件概念都有优势。