2012-10-17 8 views
5

나는이 모든 것을 조사했지만 StatsDGraphite을 별도의 서버에서 통신하도록 설정하고 구성하는 방법을 말하는 사람을 찾지 못했습니다. 나는 현재 모든 것을 하나씩 실행하고 있지만 그것들을 분리하는 것은 실패했다. 여기StatsD 및 Graphite를 다른 서버에서 실행하도록 구성하는 방법

내가 설정 내가 다른 상자에 설정에 생각할 수있는 StatsD exampleConfig.js

exampleconfig 
{ 
    graphitePort: 2003 
, graphiteHost: "(graphite server IP)" 
, port: 8125 
} 

유일한 다른 점은 example-client.py 방법이다.

currently it says this: 
CARBON_SERVER = '127.0.0.1' 
CARBON_PORT = 2003 

같은 서버의 속삭임이나 흑연과 통신하려면 로컬 호스트에 있어야한다고 생각합니다. 2003을 수신 대기하도록 방화벽을 설정했으며 패킷 덤프를 사용하면 서버가 statsd에서 UDP를 가져옵니다. 그것은 단지 탄소와 흑연에 의해 소비되는 것 같지 않습니다.

무엇이 누락 되었습니까?
statsd 흑연 설정을 조정하는 데 권장되는 것은 무엇입니까? 나는 지금 당장 statsd하고 다른 서버에 graphite + carbon + whisper를 가지고있다. statsd가 가장 강력한 성능을 발휘합니까 아니면 흑연 상자입니까? 테스트를 위해 매일 수백만 비트의 데이터를 서버에 곧 보내므로이 문제에 대해 궁금합니다. 당신이 당신의 흑연/탄소 인스턴스를 실행하는 다른 서버에 example-client.py를 실행하려면

답변

3

은 수정이

을 example-client.py. 그런 다음 CARBON_SERVER을 그래파이트/카본 서버의 IP 주소로 변경해야합니다.


네트워크 테스트 당신은 또한 몇 가지 간단한 테스트 프로세스가 당신의 기대와 기본 네트워크는이 통신을 허용 할 포트에서 수정 듣고 있는지 확인하기 위해 수행 할 수 있습니다

. 서버가 해당 I 위의에서 볼 수

$ lsof -Pi:2003 
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME 
carbon-ca 1596 graphite 7u IPv4 9517  0t0 TCP *:2003 (LISTEN) 

lsof의 명령을 통해 바로 로컬 호스트보다 더에서 연결을 허용되어 있는지 확인 할 수 있어야한다 흑연/탄소를 실행하는 서버에

TCP 2003에서 모든 인터페이스를 실행하고 수신하는 카본 캐시 프로세스가 있어야합니다.

원격 시스템의 매우 간단한 테스트는 수신 대기중인 포트에서 흑연/탄소 서버에 대한 텔넷 연결을 수행하는 것입니다 default : 2003) 그 것이 작동하는지 확인하십시오. 청취 소켓의

예 * 닫힌 소켓 *

$ telnet graphite-server 2003 
Trying graphite-server... 
telnet: Unable to connect to remote host: Connection refused 
1

$ telnet graphite-server 2003 
Trying graphite-server... 
Connected to graphite-server. 
Escape character is '^]'. 
^] 
telnet> quit 
Connection closed. 

예 그래서 나는 마지막으로 문제를 발견했다.나는 statsd가 UDP를 수신했을뿐만 아니라 UDP에도 탄소를 보냈다 고 가정했다. statsd가 대신 TCP를 전송한다는 것을 알게 된 후 방화벽을 조정할 수 있었고 이제는 훌륭하게 작동합니다. CARBON_SERVER를 로컬 호스트로 남겼습니다.

감사합니다.

그래파이트/탄소를 스케일링하는 가장 좋은 방법은 무엇입니까? 그래파이트에서 탄소를 분리해야합니까? 그게 가능하니? 탄소는 그래파이트보다 프로세서에 부담을 줍니까?

+0

, 웹 GUI는 아무 걱정이 없습니다. 탄소는 대량의 디스크 쓰기 작업을하므로 CPU 또는 RAM이 방정식에 도달하기 전에 IOps가 병목 현상이됩니다. – Sergio

+0

방금 ​​StatsD와 Graphite 사이의 UDP를 허용하는 방화벽과 동일한 문제가있었습니다. StatsD가 TCP를 통해 Graphite와 대화한다는 것은 전혀 분명하지 않습니다. 감사! – bbrown