Giám sát máy chủ Linux với Prometheus Node Exporter

167

Giám sát máy chủ Linux với Prometheus Node ExporterCuongquach.com | Nằm trong Series về việc làm chủ công cụ giám sát hệ thống/dịch vụ mang tên Prometheus. Trong bài viết này chúng ta sẽ tìm hiểu cách thức cài đặt một exporter mang tên Node Exporter trên máy chủ Linux, để Prometheus có thể giám sát các thông số cơ bản như : ram, cpu, network, disk, load,…

giam-sat-linux-voi-prometheus-node-exporter

Prometheus Node Exporter là gì ?

Trang GitHub: https://github.com/prometheus/node_exporter

Prometheus Node Exporter là một chương trình exporter viết bằng ngôn ngữ Golang. Exporter là một chương trình được sử dụng với mục đích thu thập, chuyển đổi các metric không ở dạng kiểu dữ liệu chuẩn Prometheus sang chuẩn dữ liệu Prometheus. Sau đấy exporter sẽ expose web service api chứa thông tin các metrics hoặc đẩy về Prometheus. (Xem lại bài viết : Prometheus là gì ? )

Node Exporter này sẽ đi thu thập các thông số về máy chủ Linux như : ram, load, cpu, disk, network,…. từ đó tổng hợp và xuất ra kênh truy cập các metrics hệ thống này ở port TCP 9100 để Prometheus đi lấy dữ liệu metric cho việc giám sát.

node exporter prometheus
node exporter prometheus

Mô hình lab cài đặt Prometheus Node Exporter

Chúng ta sẽ cài đặt Node Exporter trên một máy chủ Linux (ví dụ ip : 10.0.253.20) rồi từ đó thì máy chủ Prometheus (ví dụ ip: 10.0.253.179) sẽ tiến hành query HTTP đến web service (pull metric) của Node Exporter đang hoạt động ở port mặc định là 9100 TCP để lấy các metric về hệ thống.

lab node exporter prometheus
lab node exporter prometheus

Cài đặt Prometheus Node Exporter

Giờ bạn ssh đến máy chủ Linux mà bạn cần giám sát hệ thống máy chủ đó (ví dụ ip node : 10.0.253.20), sau đó chúng ta sẽ tiến hành cài đặt dịch vụ Prometheus Node Exporter trên máy chủ Linux đó.

Node exporter cũng được Prometheus hỗ trợ dạng binary để chạy mà không cần biên dịch source Go của Node Exporter làm gì hết, rất là tiện lợi nên bạn chỉ cần lên trang download của Prometheus mà down thôi : https://prometheus.io/download/

Download và giải nén file chứa binary node_exporter.

Kế đến ta tạo user trên hệ thống để chạy dịch vụ Node Exporter.

Khởi tạo file khởi động dịch vụ Prometheus Node Exporter trên Linux nền systemd (CentOS 7/Ubuntu 16.04+) nhé.

Khởi động dịch vụ Node Exporter nào.

Kiểm tra port Node Exporter đang lắng nghe, mặc định là TCP 9100.

Nếu bạn có sử dụng firewall trên Linux, thì nên mở rule cho port TCP 9100. Ví dụ với iptables.

Giờ thì Node Exporter đã chạy và theo nguyên tắc hoạt động thì Node Exporter sẽ xuất thông tin metric về hệ thống máy chủ Linux trên dịch vụ web với url ‘/metrics‘ và port mà nó đang lắng nghe. Bạn thử ‘curl‘ truy xuất url metrics là biết liền.

curl node exporter metrics
curl node exporter metrics

Cấu hình Target Node Exporter trên Prometheus Server

Giờ bạn cần khai báo máy chủ Linux đang chạy Node Exporter trong một Target trên Prometheus. Thêm địa chỉ IP của máy chủ Linux vào phần ‘targets‘ cùng port Node Exporter chạy 9100 TCP.

Khởi động lại dịch vụ Prometheus.

Giờ bạn truy cập trang quản lý Prometheus và vào mục ‘Targets‘ xem máy chủ Linux (10.0.253.20) mà ta vừa thêm vào đã có trạng thái (State) là ‘up‘ hay chưa ? Nếu là ‘up‘ thì tức Prometheus đã có thể pull metrics từ Node Exporter đang cài trên máy chủ Linux này, tức ta đã monitor được.

target trong prometheus
target trong prometheus

Kế đến bạn có thể thử sử dụng Prometheus query một số metric liên quan đến máy chủ LinuxNode Exporter có hỗ trợ . Một số metric mẫu có thể query thử như :

Trong hình là query thử với metric tên ‘node_load5‘.

query metric trên prometheus
query metric trên prometheus

Tổng kết

Vậy là bạn đã biết cách cài đặt dịch vụ Prometheus Node Exporter trên một máy chủ Linux. Từ đây Prometheus Server đã có thể giám sát máy chủ Linux thông qua cách pull metric từ web service Node Exporter listen trên port 9100.

Kế đến ở các bài viết khác, bạn sẽ học cách sử dụng Prometheus và Grafana để hiển thị dữ liệu monitor trên dashboard, rồi sử dụng Alertmanager để cấu hình các rule alert cảnh báo hệ thống.

Nguồn: https://cuongquach.com/

LEAVE A REPLY