我对如何扩展 Graphite 感到很困惑。我有一个 graphite 生产实例(carbon-cache + whisper + graphite-web + grafana)。我的磁盘空间不足,我想我需要添加第二个节点。我似乎找不到任何关于人们如何做到这一点的好指南,而且我很难理解文档。
我可以在第二个节点上启动 carbon-cache + whisper 并配置 carbon-relay 将信息传递到第一个和第二个节点吗?
graphite-web 能否成功查询两者?
我感觉我失去了一些非常重要的东西。
-- PS. 我尝试用谷歌搜索,但我的谷歌能力可能不太好。我还搜索了 stackoverflow 和 serverfault,但我似乎只找到有关将多个服务器指标传输到 graphite/statsd 的帖子。
编辑
我想我需要澄清一下。我可以很好地设置中继和缓存(它们看起来不错)。我遇到麻烦的是 graphite-web。我在独立 VM 上设置了一个新的 graphite-web(上面只安装了 graphite-web、uwsgi 和 nginx)。从这里我尝试使用下面的 find 查询它,但它始终是空的。
curl 'localhost:8543/metrics/find?query=*'
[]
也就是说,在原始服务器上,除了服务器满载之外,它运行良好。
root@original_server:/etc/nginx/sites-enabled# curl -s
'localhost:8080/metrics/find?query=*' | jq
[
{
"text": "bobstats",
"expandable": 1,
"leaf": 0,
"id": "bobstats",
"allowChildren": 1
},
...
]
carbon-relay 需要和 graphite-web 一起使用吗?我是否需要在每个缓存服务器上或每个中继上都安装 graphite-web?
答案1
您需要启用一致性哈希并使用 carbon-relay。因此它看起来应该像这样
[relay]
LINE_RECEIVER_INTERFACE = 0.0.0.0
LINE_RECEIVER_PORT = 2003
PICKLE_RECEIVER_INTERFACE = 0.0.0.0
PICKLE_RECEIVER_PORT = 2004
RELAY_METHOD = consistent-hashing
DESTINATIONS = 10.0.1.10:2004, 10.0.1.11:2004
您DESTINATIONS
是后端碳缓存。中继将散列度量并始终将其发送到同一目的地。此外,您还必须将网络指向多个目的地。