Telegraf là gì

Tìm hiểu cách sử dụng Telegraf trên Windows.

Telegraf là một đại lý chạy trên hệ điều hành mà bạn lựa chọn, lên lịch thu thập các chỉ số và sự kiện từ nhiều nguồn khác nhau và sau đó gửi chúng đến một hoặc nhiều bồn rửa, chẳng hạn như InfluxDB hoặc Kafka . Đối với InfluxDB, phiên bản 1.x, 2.0 cũng như Đám mây InfluxDB được hỗ trợ.

Bạn cũng có thể thích: Sử dụng Plugin đầu vào Telegraf Elasticsearch

Telegraf có thể thu thập thông tin từ nhiều đầu vào và hiện bao gồm hơn 200 plugin để lấy thông tin từ nhiều loại ứng dụng. Nó cũng có thể lấy thông tin về phần cứng và phần mềm từ hệ điều hành.

Một trong những câu hỏi thường được hỏi là: Cách tốt nhất để chạy Telegraf trên máy Windows là gì? Kho lưu trữ GitHub của chúng tôi cung cấp tài liệu về Chạy Telegraf dưới dạng Dịch vụ Windows ; tuy nhiên, trong bài đăng này, chúng ta sẽ xem xét từng bước thiết lập Telegraf trên Windows, bao gồm cách định cấu hình an toàn nó bằng thông tin đăng nhập để đẩy dữ liệu sang các giải pháp InfluxDB khác nhau.

Chúng tôi sẽ thực hiện cài đặt của mình bằng quy trình PowerShell nâng cao.

Để chạy một phiên nâng cao của PowerShell, hãy mở Start Menu, tìm PowerShell, nhấp chuột phải vào nó và chọn tùy chọn Run as administrator .

Bây giờ, hãy tải xuống các tệp nhị phân Windows của Telegraf. Chúng có sẵn từ URL //portal.influxdata.com/downloads/ . Ví dụ dưới đây sử dụng lệnh wget từ trang web:

PS> cd ~\Downloads PS> wget //dl.influxdata.com/telegraf/releases/telegraf-1.12.5_windows_amd64.zip

Tiếp theo, hãy giải nén kho lưu trữ vào thư mục Program Files, thư mục này sẽ tạo thư mục C: \ Program Files \ telegraf:

PS> Expand-Archive .\telegraf-1.12.5_windows_amd64.zip 'C:\Program Files\'

Sau đó, tạo một thư mục con conf và sao chép telegraf.conf dưới dạng conf \ input.conf :

PS> mkdir 'C:\Program Files\telegraf\conf' PS> cd 'C:\Program Files\telegraf\conf' PS> copy ..\telegraf.conf inputs.conf

Sao chép telegraf.conf dưới dạng conf \ input.conf .

Chúng tôi sẽ tách phần đầu ra của tệp và định cấu hình cụ thể gửi dữ liệu đến InfluxDB 2.0. Chúng tôi sẽ xóa phần đầu ra khỏi input.conf . Chỉnh sửa tệp và xóa tất cả nội dung trước phần đầu vào, để lại nội dung của tệp bắt đầu bằng và bao gồm các dòng dưới đây:

Để chỉnh sửa tệp, bạn nên khởi động trình chỉnh sửa của mình từ phiên PowerShell nâng cao - trình chỉnh sửa bắt đầu từ quy trình nâng cao sẽ có quyền truy cập để ghi tệp.

Bây giờ, tạo tệp conf \ outputs.conf chỉ định nơi dữ liệu sẽ được gửi.

Trong trường hợp của tôi, tôi muốn đầu ra chuyển đến tài khoản InfluxDB Cloud của mình, vì vậy tệp sẽ chứa:

[[outputs.influxdb_v2]] # URL to InfluxDB cloud or your own instance of InfluxDB 2.0 urls = ["//us-west-2-1.aws.cloud2.influxdata.com"] ## Token for authentication. token = "$INFLUX_TOKEN" ## Organization is the name of the organization you wish to write to; must exist. organization = "$INFLUX_ORG" bucket = "$INFLUX_BUCKET"

Để gửi dữ liệu đến các phiên bản và / hoặc phiên bản khác của InfluxDB, phần kết quả đầu ra có thể khác. Cũng lưu ý rằng Telegraf có thể gửi dữ liệu đến nhiều điểm đến, chẳng hạn như InfluxDB 1.x và InfluxDB 2.0.

Chúng tôi khuyên bạn nên thay thế $ INFLUX_TOKEN , $ INFLUX_ORG$ INFLUX_BUCKET cũng như bất kỳ thông tin kết nối nào khác  bằng mã thông báo truy cập, tên tổ chức, tên của nhóm InfluxDB để ghi dữ liệu vào và bất kỳ thông tin kết nối nào khác.

Tại thời điểm này, bạn nên kiểm tra xem Telegraf có hoạt động chính xác hay không:

PS> .\telegraf --config-directory 'C:\Program Files\telegraf\conf' --test

Điều này sẽ xuất ra nhật ký cho biết Telegraf đã bắt đầu, theo sau là nhiều dòng dữ liệu được truy xuất từ ​​tất cả các plugin đầu vào.

Tiếp theo, hãy đảm bảo rằng chỉ tài khoản người dùng Hệ thống cục bộ mới có thể đọc tệp outputs.conf để ngăn người dùng trái phép truy xuất mã thông báo truy cập của chúng tôi cho InfluxDB.

PS> icacls outputs.conf /reset PS> icacls outputs.conf /inheritance:r /grant system:r

Lệnh icacls là một công cụ tích hợp để quản lý danh sách kiểm soát truy cập [ACL] cho các đối tượng trong Microsoft Windows và được mô tả chi tiết hơn tại đây .

Lệnh đầu tiên loại bỏ tất cả các ACL và chỉ kế thừa các quyền từ đối tượng mẹ - trong trường hợp của chúng ta là thư mục C: \ Program Files \ telegraf \ conf . Lệnh thứ hai thực hiện nhiều việc - cờ / reset vô hiệu hóa kế thừa, xóa mọi ACL cho tệp một cách hiệu quả. Tại thời điểm này, không người dùng nào có thể truy cập tệp. Cờ thứ hai và giá trị của nó -  / Grant system: r  - cho phép tài khoản tích hợp Hệ thống cục bộ đọc tệp.

Bằng cách này, chỉ dịch vụ Telegraf mới có thể đọc cấu hình nơi dữ liệu được gửi, bao gồm cả mã thông báo.

LƯU Ý: Tất cả người dùng có quyền truy cập của quản trị viên vào máy Windows sẽ có thể thay đổi quyền của tệp và đọc nó. Tuy nhiên, điều này ngăn người dùng không phải quản trị viên truy xuất thông tin.

Bây giờ chúng tôi có thể cài đặt Telegraf như một dịch vụ Windows để nó tự động khởi động cùng với hệ thống của chúng tôi. Để làm điều này, chỉ cần chạy:

PS> cd 'C:\Program Files' PS> .\telegraf --service install --config-directory 'C:\Program Files\telegraf\conf' PS> net start

Thao tác này sẽ tạo một dịch vụ Telegraf và khởi động nó. Đầu ra phải bao gồm thông báo sau:

The Telegraf Data Collector Service service is starting. The Telegraf Data Collector Service service was started successfully.

Tại thời điểm này, Telegraf của chúng tôi hiện đã sẵn sàng chạy và chúng tôi đã áp dụng các phương pháp hay nhất để lưu trữ và truy cập thông tin đăng nhập để gửi dữ liệu đến InfluxDB.

LƯU Ý: Là một phần của các phương pháp bảo mật tốt nhất, mã thông báo được tạo cho Telegraf cũng phải có phạm vi giới hạn - chỉ có thể ghi dữ liệu vào nhóm được chỉ định nơi nó sẽ được gửi.

Thay vào đó, bạn cũng có thể giữ $ INFLUX_TOKEN , $ INFLUX_ORG$ INFLUX_BUCKET trong tệp cấu hình của mình. Các giá trị đó sẽ được dịch vụ Telegraf đọc và thay thế bằng các biến môi trường.

Theo mặc định, các dịch vụ Windows sử dụng tất cả các biến môi trường do Microsoft Windows thiết lập cũng như các biến môi trường toàn hệ thống. Cũng có thể chuyển các biến môi trường cụ thể cho dịch vụ bằng cách đặt chúng trong khóa đăng ký liên quan đến dịch vụ đó.

Để chuyển các biến môi trường bổ sung cho dịch vụ Telegraf, hãy chạy trình chỉnh sửa sổ đăng ký và truy cập khóa HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ telegraf sau khi đặt Telegraf làm dịch vụ hệ thống. Đây là nơi Windows lưu giữ tất cả thông tin cho dịch vụ cụ thể này.

Tạo sổ đăng ký Giá trị nhiều chuỗi với tên Môi trường:

Tiếp theo, chỉnh sửa các giá trị cho sổ đăng ký, đặt mỗi dòng thành định dạng Khóa = Giá trị , trong đó Khóa là tên biến môi trường và Giá trị là giá trị của nó.

Sau đó, dịch vụ Telegraf sẽ thiết lập các biến môi trường bắt buộc.

Nhược điểm của việc sử dụng sổ đăng ký Môi trường là khó quản lý ACL và ngăn người dùng trái phép đọc giá trị. Do đó, nếu có thể, chúng tôi khuyên bạn nên viết thông tin đăng nhập vào hệ thống tệp và sử dụng ACL cho tệp cấu hình - vì ACL cho tệp cũng có thể được kiểm tra bằng các công cụ như Windows Explorer.

Tại thời điểm này, máy chủ Windows, máy tính để bàn hoặc máy tính xách tay của chúng tôi hiện đang gửi các chỉ số hiệu suất và dữ liệu giám sát khác tới [các] cơ sở dữ liệu InfluxDB của chúng tôi và có thể được xem từ Data Explorer . InfluxDB cũng có thể hiển thị bất kỳ thông tin nào bằng Trang tổng quan .

Đọc thêm

Giám sát cơ sở dữ liệu PostgreSQL của bạn với Telegraf và InfluxDB

Thu thập số lượng tiến trình đang chạy với Telegraf

Thiết lập Kubernetes

Grafana là một bộ mã nguồn mở sử dụng trong việc phân tích các dữ liệu thu thập được từ server và hiển thị một cách trực quan dữ liệu thu thập được ở nhiều dạng khác nhau.

Về tính năng thì trên mạng có khá nhiều nên mình sẽ không nói thêm nữa mà bắt tay vào hướng dẫn cài đặt và cấu hình chi tiết.

Bước 1: Cập nhật hệ thống

Bước 2: Cài đặt InfluxDB, Telegraf và Grafana

InfluxDB v1.6.0

wget https://dl.influxdata.com/influxdb/releases/influxdb-1.6.0.x86_64.rpm

yum y localinstall influxdb1.6.0.x86_64.rpm

systemctl start influxdb

systemctl enable influxdb

Telegraf v1.7.1

wget https://dl.influxdata.com/telegraf/releases/telegraf-1.7.2-1.x86_64.rpm

yum y localinstall telegraf1.7.21.x86_64.rpm

systemctl start telegraf

systemctl enable telegraf

Grafana 5.2.2

wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.2.2-1.x86_64.rpm

yum y install initscripts fontconfig

yum y localinstall grafana5.2.21.x86_64.rpm

systemctl daemonreload

systemctl enable grafanaserver.service

systemctl start grafanaserver.service

Sau khi đã cài đặt xong, các bạn truy cập vào địa chỉ IP:3000 để đăng nhập Grafana.

Tài khoản mặc định admin/admin

[Đối với các server con còn lại các bạn chỉ cần cài đặt InfluxDB và Telegraf]

Tiến hành cấu hình InfluxDB và Telegraf trên tất cả các server:

– Thiết lập username & password trong InfluxDB

1

2

3

4

5

6

7

8

9

10

11

12

# influx

> show databases;

name: databases

name

_internal

telegraf

> use telegraf

Using database telegraf

> CREATE USER “influx” WITH PASSWORD ‘influx_pass’ WITH ALL PRIVILEGES

> exit

# systemctl restart influxdb

– Cấu hình Telegraf

cp /etc/telegraf/telegraf.conf /etc/telegraf/telegraf.conf.org

vi /etc/telegraf/telegraf.conf

Tìm các phần sau và bỏ dấu # phía trước

# [[inputs.net]]

# [[inputs.netstat]]

Tìm đến [[outputs.influxdb]] và sửa theo dạng như sau

[[outputs.influxdb]]

...

database = “telegraf”

...

## HTTP Basic Auth

username = “influx”

password = “influx_pass”

Khởi động lại Telegraf

systemctl restart telegraf

Bước 3: Add data source

Vào Home Dashboard -> Add data source

– Điền thông số cho “Data source” với username=”influx” & password=”influx_pass” tạo ở bước trên để grafana lấy được dữ liệu trên influxdb.

Chọn Save & Test, kết quả phải trả về như bên dưới thì mới được nhé

Nếu bị Network Error: Bad Gateway[502] các bạn cần kiểm tra lại port đã mở hay chưa.

Nếu bạn lười mở port thì cách đơn giản nhất đó chính là disable firewall

systemctl stop firewalld

systemctl disable firewalld

Các bạn cứ add hết server các bạn có để quản lý cho dễ ?

Sau khi add xong sẽ hiển thị danh sách các server như sau

Bước 4: Tạo Dashboard

– Quay trở lại “Home Dashboard” -> Chọn “New dashboard

– Chọn Graph

+ Ví Monitor CPU server [sẽ update thêm các ví dụ sau]

Điền thông số theo mẫu sau:

Sau khi làm xong 1 cái gì đó, các bạn nhớ bấm lưu lại nhé ?

Sẽ có khá nhiều thông số cho các bạn tìm hiểu, rất nhiều cái hay mà mình cũng chưa biết và đang tìm cách hiển thị.

Mọi người cùng comment bên dưới để chia sẻ và thảo luận nhé.

Chúc các bạn thành công.

Theo: expertvn.com

Video liên quan

Chủ Đề