2016年小型企业监控和警报工具

这是一个反复出现的问题,但是我能find的最接近的问题是7年前问的 ,而这个时间几乎是不同的。

我经营一个小型企业,我们主办了多个中小型客户端网站(没有任何需要超过几个1G数字海洋液滴)。 目前的解决scheme(ad-hoc脚本和电子邮件)开始显示其局限性,特别是当前的业务快速增长。

业务问题

因此,我需要build立一个新的解决scheme。 也许不是所有的一次,但我当然不希望重新做一切。 我能想到的要求:

  • 简单。 简单。 简单。 我没有工作人员,我没有时间,我不消化胡说八道。 我准备好分配所需的资源,但不多。
  • 没有SaaS。 在过去的几年中,我一直在使用大量的SaaS,他们最终都变得更加昂贵,停止服务或者购买,然后完全消失。 SaaS是我不想承担的风险。
  • 最终,我只关心简单的事情:
    • 我的网站没有错误,速度不够快?
    • 我的网站是否超载?
    • 我的磁盘是否满了?
  • 有一个基于Ansible的自动部署系统,它应该能够负责为每个站点configuration监视/警报
  • 我希望主pipe人员在凌晨4点以一切可能的方式醒来,当然如果有用的话
  • 所有的事件/问题都应该在某个地方进行跟踪,并且易于移动(如JIRA板)
  • 所有的数据应该存储在某个地方供我以后检查,包括HTTP日志,我希望能够在这些日志中查找缓慢或容易出错的页面。
  • 我有几十个(Debian)服务器,需要集中所有关于它们的信息

我做了研究

为了做到这一点,我开始挖掘互联网,发现基本上可以互相连接的东西,如果你愿意的话。

  • ELK堆栈 (和“Beats”)。 似乎完美的收集和存储日志/指标。 您可以拥有漂亮的仪表板并查看您的数据,但这只是您所能做的。
  • X-Pack 。 似乎是与ELK完美的事情,但看起来像一个漂亮的废话蛋糕周围厚厚的糖衣。 另外,不公布价格的“订购”模式可能意味着价格过高。
  • Shinken / Nagios / Zabbix是最初的竞争者,但却很无聊而且复杂,需要自定义代码和全部的创可贴才能与ELK合作。
  • Riemann看起来像是一个很好的框架,可以触发警报,但不会在事后进行pipe理。 另外你必须自己写一切。 我不知道该把它插在什么地方(我不想有几个探针测量相同的东西)。 对我来说可能太复杂了。
  • ElastAlert可能是一个好主意,但似乎没有一个实际的方式来pipe理警报
  • bosun看起来比ElastAlert更成熟,更完整,但是也有相同的缺点和更复杂的configuration
  • openduty环有趣,但显然太不成熟,被认为是可行的
  • cabot做出了很好的承诺,被一家公司用来制作和使用,这个公司为了编写文档,所以它可能不会死(虽然有点晕)
  • 当然,还有普罗米修斯GraphanaGraylogFluentd和其他无数的人。

迄今为止采取的步骤来解决它

我目前对这种情况的理解是我需要2个工具(好的,堆栈):

  • 一个收集,存储和允许查询日志和指标。 这就是要让我的业务统计,事后分析,debugging洞察力等等。 看来,那个完美的运动员是ELK
  • 一个不断分析数据,以查找违规行为并发出警报的人。 现在这一点不太清楚。 我会去Cabot看起来简单和可扩展。

实际的问题

我的要求是否有意义? 如果是这样的话,我是否正确地寻求这两个工具(一个用于日志存储/访问,一个用于提醒pipe理)? 如果是的话,我的select是为了这个任务吗?还是你推荐别的?

不是问题

我并不是要求精简的监控解决scheme,而是简单地说明我的问题和我的解决scheme,并希望得到它的确认,或者指出它失败的地方。

感谢大家!

你太过于复杂了,上面详细说明的选项与你对简单性的要求是背道而驰的。

使用NewRelic和Monit 。

用于一般云监控,统计和历史的NewRelic 。 它对服务器是免费的。

使用Monit来处理应用程序和服务器级别的问题。 通过升级或使用电子邮件到SMS地址处理警报。

如果您需要集中报告多个由Monitpipe理的主机,请使用M / Monit 。

如果您需要深入分析每个主机级别,请查看NetData 。