0

我已经开始使用 collectd (5.5.1)、statsd (git head)、influxd (1.2) 和 grafana 来监控我的基础架构。collectd 部分对于黑盒监控工作正常。我们想使用 statsd 进行白盒监控。

我们的设置是每台主机上的 collectd 和 statsd,将数据发送到监控主机上的 influxdb。Influxdb 和 grafana 运行在监控主机上。当然,collectd 和 statsd 也在监控主机上运行,​​就像它们在其他地方一样。

我在每个主机上的 statsd 配置很简单

{
    graphitePort: 2003,
    graphiteHost: "monitor.example.com",
    port: 8125,
    backends: [ "./backends/graphite" ]
}

这在任何情况下都可能并不理想,因为我刚刚发现有一个influxdb 后端可用,但我希望即使我可以做得更好,上述方法也能正常工作。

但是,我有以下问题:

  1. statsd没有将主机信息转发到监控主机。

  2. 我知道 statsd 的好处之一是它可以在以指定的刷新间隔发送数据之前在本地主机上聚合数据。但是我没有在文档中看到在哪里指定,比如说,哪些指标被求和,哪些要发送最大值,哪些要发送什么百分位数等。

这些组件在过去一年中发展得如此迅速,以至于很多文档和教程都已经过时了,所以我很清楚我可能仅仅通过阅读错误的文档就做了一些不正确的事情。

我最近还发现了电报(在每个主机上运行?)。也许我对 statsd 有错误的期望(或者应该改用电报)?

我很乐意根据反馈使这个问题更具体。我知道我仍在为一些概念而苦苦挣扎。

非常感谢您的指点。

4

1 回答 1

0

这是一个没有确切答案的解决方案。

改用电报

我发现 Telegraf 现在是这个领域非常可行的竞争者,得到了很好的支持,看到了积极的发展,并且很容易与 influxdb 交谈。Telegraf 还支持每条消息的附加标签和标志,这与 statsd 似乎是简单的键值不同。此外,telegraf 消除了对 statsd 和 collectd 的需求,因此它减少了移动部件的数量。这是好事。

关于 statsd

(TL;DR - 也许我很跛脚)

我完全不知道如何使用 statsd 转发主机信息。

我没有找到关于如何配置聚合的好的文档(尽管我记得曾经找到过)。使用 influxdb 协议发送数据的模块似乎没有得到很好的维护(相对于 influxdb 开发)。

在这两点上,我可能完全错了,并且为了记录这些事情的利益而提供替代答案是最受欢迎的。

于 2017-03-26T07:12:37.907 回答