Lấy thông số server sử dụng Telegraf, InfluxDB và Grafana

Làm Performance Testing có khi bạn muốn lấy các thông số của server nhưng có vẻ hơi khó khăn vì ít người chia sẻ. Bạn tìm đến PerfMon thấy có vẻ đúng thứ bạn cần, nhưng có 1 hạn chế là bạn run test bằng non-UI Jmeter, lúc sau bạn muốn xem kết quả thì lại phải bật Jmeter để xem. Bài trước, mình đã hướng dẫn cách dùng grafana để monintor các thông số của Jmeter, bây giờ vẫn sử dụng grafana mà mình cũng có thể view được các thông số của Server.

I. Cách làm việc của các thành phần

  1. Telegraf sẽ lấy thông tin từ Server
  2. Telegraf sẽ lưu thông tin lấy được vào influxDB
  3. Grafana sẽ query vào influxDB rồi hiển thị data theo thời gian

II. Cài đặt Telegraf

1. Vào link https://portal.influxdata.com/downloads/

Tùy vào hệ điều hành server của bạn mà bạn lấy version tương ứng. Ở đây, mình cài Windows server nên mình sẽ dùng bản cho Windows

2. Copy cái link trên rồi open nó ở 1 tab khác của Browser để download file zip

3. Giải nén vào “C:\Program Files\telegraf

4. Mở file telegraf.conf rồi thay thế toàn bộ file bằng file này.

III. Kết nối Telegraf và InfluxDB

1. Tạo database trên InfluxDB

Trên InfluxDB, run 2 file influxd.exe bằng quyền Admin và file influx.exe

Trên file influx.exe:

  • Tạo database: CREATE DATABASE telegraf
  • Tạo user:
    CREATE USER telegraf WITH PASSWORD ‘telegraf123’ WITH ALL PRIVILEGES
    CREATE USER grafana WITH PASSWORD ‘grafana123’ WITH ALL PRIVILEGES

2. Update file telegraf.conf

Mở file telegraf.conf, tìm đến dòng [[outputs.influxdb]], sửa lại các thông số như dưới đây:

  • database = “ telegraf ”
  • username = “telegraf”
  • password = “telegraf123”

3. Mở PowerShell bằng quyền admin rồi run

  • C:\”Program Files”\Telegraf\telegraf.exe –service install
  • net start telegraf

Nếu bạn gặp vấn đề thì hãy đọc thêm thông tin ở đây: https://github.com/influxdata/telegraf/blob/master/docs/WINDOWS_SERVICE.md

IV. Kết nối InfluxDB và Grafana

Tương tự như bài trước, bạn cần tạo ra 1 cái Source mới.

  • Do Grafana và InfluxDB ở 2 máy khác nhau nên chỗ này bạn phải điền địa chỉ IP của con máy server vào
  • Phía dưới thì bạn cứ dùng Account nhưng đã setup ban đầu: grafana/grafana123

Sau đó, bạn tạo ra 1 dashboard mới, ở đây mình sử dụng dashboard số 1902

Và cuối cùng đây là kết quả:

V. Tổng kết

Hiện tại, bạn đã vừa có thể xem thông số của Jmeter và Server ở cùng 1 nơi và bất kỳ thời điểm nào bạn muốn, đẹp đẽ chứ ko xấu mù như cái plugin Perfmon. Sử dụng grafana sẽ là 1 lựa chọn hoàn hảo cho bạn nào phải làm performance testing mà công ty không có điều kiện trả tiền cho những service đắt đỏ. Vậy thôi, chúc các bạn vui vẻ khi làm performance test. 😀

4 thoughts on “Lấy thông số server sử dụng Telegraf, InfluxDB và Grafana

  1. Pingback: Monitor các thông số của Jmeter bằng influxDB và Grafana | GiangTester Blog

  2. Pingback: Cách thực hiện load test | GiangTester Blog

Leave a Reply

Your email address will not be published. Required fields are marked *