2012-10-17 28 views
5

Tôi đã xem xét tất cả điều này nhưng chưa tìm thấy ai nói về cách thiết lập và cấu hình StatsDGraphite để giao tiếp trên các máy chủ riêng biệt. Tôi hiện có tất cả mọi thứ đang chạy trên một nhưng tôi đã cố gắng không thành công để tách chúng.Làm thế nào để cấu hình StatsD và Graphite để chạy trên các máy chủ khác nhau

Dưới đây là làm thế nào tôi thiết lập các StatsD exampleConfig.js

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

Chỉ khác điều tôi có thể nghĩ đến thiết lập trên hộp khác là example-client.py.

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

Tôi nghĩ rằng nó cần phải ở lại host nội bộ để giao tiếp với tiếng thì thầm hoặc graphite trên cùng một máy chủ. Tôi có thiết lập tường lửa của tôi để nghe cho 2003, và Sử dụng một bãi chứa gói máy chủ không nhận được UDP từ statsd. Nó dường như không bị hấp thụ bởi cacbon và than chì.

Tôi đang thiếu gì?
Ngoài ra, bạn nên làm gì để mở rộng quy mô thiết lập graphite thống kê? Tôi có số liệu thống kê trên riêng của mình ngay bây giờ và than chì + carbon + thì thầm trên một máy chủ khác. Liệu statsd có quyền lực nhất để chạy hoặc là nó hộp graphite? Tôi tự hỏi điều này bởi vì tôi sẽ sớm gửi hàng triệu bit dữ liệu đến các máy chủ mỗi ngày để thử nghiệm.

Trả lời

3

Sửa example-client.py

Nếu bạn muốn chạy example-client.py trên một máy chủ khác nhau đang chạy graphite/carbon dụ của bạn. Sau đó, bạn cần thay đổi CARBON_SERVER thành địa chỉ IP của máy chủ than chì/cacbon.


Mạng Tests

Bạn có thể muốn cũng làm một vài xét nghiệm nhanh để đảm bảo rằng các quá trình đang lắng nghe sửa chữa trên các cổng mà mong đợi của bạn và mạng cơ bản sẽ cho phép giao tiếp này.

Trên máy chủ chạy graphite/carbon bạn sẽ có thể để kiểm tra xem máy chủ được chấp nhận kết nối từ nhiều hơn chỉ là localhost qua lsof lệnh

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

Bạn có thể nhìn thấy từ trên, chúng tôi rằng có một quá trình lưu trữ carbon-cache đang chạy và lắng nghe trên tất cả các giao diện trên TCP 2003.

Một thử nghiệm rất đơn giản từ máy từ xa sẽ thực hiện kết nối telnet đến máy chủ than chì/cacbon trên cổng đang nghe (mặc định: 2003) và xem có hiệu quả không.

Ví dụ về một ổ cắm nghe *

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

Ví dụ về một ổ cắm đóng cửa *

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

Vì vậy, tôi cuối cùng đã phát hiện ra vấn đề.Tôi đã giả định rằng statsd không chỉ nhận được UDP mà còn gửi UDP đến carbon. Sau khi tôi nhận ra rằng statsd gửi TCP thay vì tôi đã có thể điều chỉnh tường lửa của tôi và nó hoạt động tốt ngay bây giờ. Tôi đã rời CARBON_SERVER làm máy chủ lưu trữ cục bộ.

Cảm ơn!

Cách tốt nhất để quy mô than chì/carbon là gì? Tôi có nên tách cacbon từ than chì không? Điều đó có thể không? Cacbon có làm căng bộ vi xử lý nhiều hơn than chì không?

+0

Như bạn có thể phát hiện ra bởi bây giờ, gui web không phải là bất cứ điều gì phải lo lắng. Vì carbon tạo ra một lượng lớn ghi nhỏ vào đĩa, IOps sẽ là nút cổ chai trước khi CPU hoặc RAM đi vào phương trình. – Sergio

+0

Tôi chỉ có cùng một vấn đề với một bức tường lửa cho phép UDP giữa StatsD và Graphite qua cổng 2003. Nó không phải ở tất cả rõ ràng rằng StatsD nói chuyện với Graphite thông qua TCP. Cảm ơn! – bbrown

Các vấn đề liên quan