Amazon ec2 如何配置StatsD和Graphite在不同的服务器上运行

Amazon ec2 如何配置StatsD和Graphite在不同的服务器上运行,amazon-ec2,graphite,statsd,graphite-carbon,Amazon Ec2,Graphite,Statsd,Graphite Carbon,我已经到处找过了,但没有发现有人谈论如何设置和配置StatsD和Graphite在不同的服务器上进行通信。我目前所有的东西都在一个机器上运行,但我试图将它们分开,但没有成功 下面是我如何设置StatsD exampleConfig.js exampleconfig { graphitePort: 2003 , graphiteHost: "(graphite server IP)" , port: 8125 } 我能想到的另一件事是在另一个框中设置示例client.py currently

我已经到处找过了,但没有发现有人谈论如何设置和配置
StatsD
Graphite
在不同的服务器上进行通信。我目前所有的东西都在一个机器上运行,但我试图将它们分开,但没有成功

下面是我如何设置
StatsD exampleConfig.js

exampleconfig
{
  graphitePort: 2003
, graphiteHost: "(graphite server IP)"
, port: 8125
}
我能想到的另一件事是在另一个框中设置
示例client.py

currently it says this:
CARBON_SERVER = '127.0.0.1'
CARBON_PORT = 2003
我认为它需要保持本地主机,才能在同一台服务器上与whisper或graphite通信。我设置了防火墙来监听
2003
,服务器使用数据包转储从statsd获取UDP。它似乎并没有被碳和石墨所消耗

我错过了什么?

另外,建议如何扩展statsd graphite设置?我现在有自己的statsd和另一台服务器上的graphite+carbon+whisper。statsd是运行功率最大的还是石墨箱?我想知道这一点,因为我很快就会每天向服务器发送数百万位数据进行测试。

修改示例客户端.py

如果要在运行graphite/carbon实例的其他服务器上运行示例client.py。然后您需要将碳纤维服务器更改为石墨纤维/碳纤维服务器的IP地址


网络测试

您可能还希望执行一些快速测试,以确保进程正在侦听您期望的端口以及底层网络将允许此通信的端口

在运行graphite/carbon的服务器上,您应该能够通过lsof命令检查服务器是否接受来自本地主机以外的连接

$ lsof -Pi:2003
COMMAND    PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
carbon-ca 1596 graphite   7u  IPv4   9517      0t0  TCP *:2003 (LISTEN)
从上面可以看出,我有一个carbon cache进程正在运行,并在TCP 2003的所有接口上侦听

从远程机器进行的一个非常简单的测试是,在它正在侦听的端口(默认值:2003)上与graphite/carbon服务器进行telnet连接,并查看是否有效

侦听套接字示例*

$ telnet graphite-server 2003
Trying graphite-server...
Connected to graphite-server.
Escape character is '^]'.
^]
telnet> quit
Connection closed.
$ telnet graphite-server 2003
Trying graphite-server...
telnet: Unable to connect to remote host: Connection refused
闭合插座的示例*

$ telnet graphite-server 2003
Trying graphite-server...
Connected to graphite-server.
Escape character is '^]'.
^]
telnet> quit
Connection closed.
$ telnet graphite-server 2003
Trying graphite-server...
telnet: Unable to connect to remote host: Connection refused

所以我终于发现了问题所在。我假设statsd不仅接收UDP,而且还向carbon发送UDP。当我意识到statsd发送TCP后,我能够调整我的防火墙,现在它工作得很好。我让CARBON_服务器作为本地主机

谢谢


衡量石墨/碳的最佳方法是什么?我应该把碳和石墨分开吗?可能吗?碳比石墨对处理器的压力更大吗?

无纸化的St-statsd叉也可能对您有用:

您可能已经发现,web gui不需要担心。由于碳会对磁盘进行大量的小规模写入,在CPU或RAM进入平衡之前,IOps将成为瓶颈。我刚刚遇到了同样的问题,即防火墙允许StatsD和Graphite之间通过端口2003进行UDP传输。StatsD通过TCP与Graphite进行对话一点也不明显。谢谢