SIEM/Log Management TÌM HIỂU PROMETHEUS VÀ HỆ SINH THÁI EXPORTER

TÌM HIỂU PROMETHEUS VÀ HỆ SINH THÁI EXPORTER

​

1. Kiến trúc Prometheus và luồng vận hành

Prometheus là hệ thống giám sát theo mô hình Pull-based: máy chủ Prometheus định kỳ gửi HTTP request tới endpoint /metrics của các đối tượng đích (targets) để thu thập chỉ số chuỗi thời gian (time-series data).

2. Cài đặt và cấu hình

Quá trình tạo file cấu hình prometheus.yml cho Prometheus. Cấu hình thiết lập chu kỳ thu thập dữ liệu và kiểm tra metric mỗi 15 giây. Prometheus được cấu hình với hai scrape job: một job thu thập metric của chính Prometheus tại localhost:9090, và một job sử dụng Node Exporter tại node-exporter:9100 để thu thập các chỉ số tài nguyên máy chủ như CPU, RAM và Disk.


1790871659825.png

Hình 1. file prometheus.yml​

File docker-compose.yml dùng để triển khai hệ thống giám sát bằng Docker. Cấu hình gồm hai container chính là Prometheus và Node Exporter. Prometheus sử dụng cổng 9090, lưu trữ dữ liệu metric và đọc cấu hình từ prometheus.yml, trong khi Node Exporter sử dụng các thư mục hệ thống như /proc, /sys và /rootfs để thu thập thông tin tài nguyên máy chủ. Hai dịch vụ được kết nối thông qua mạng Docker mon-net, giúp Prometheus có thể thu thập metric từ Node Exporter.



1790871685985.png


Hình 2. File docker-compose.yml​

Quá trình triển khai thành công hệ thống giám sát Prometheus Stack bằng Docker Compose trên máy chủ Linux. Câu lệnh sudo docker compose up -d đã khởi chạy thành công 19/19 tác vụ, bao gồm việc tải các Docker Image (Prometheus v2.54.0 và Node Exporter v1.8.2), tạo lập mạng nội bộ, volume lưu trữ dữ liệu và kích hoạt các container hoạt động ở chế độ chạy ngầm.

1790871696459.png


Hình 3. Hệ thống Prometheus Stack​


Giao diện quản lý Targets trên Prometheus Web UI. Kết quả hiển thị cho thấy cả hai mục tiêu giám sát là node-exporter và prometheus đều đang ở trạng thái UP (hoạt động bình thường). Hệ thống ghi nhận các thông số kỹ thuật quan trọng như địa chỉ endpoint (cổng 9100 và 9090), thời gian quét cuối cùng (Last Scrape) và thời gian thực thi (Scrape Duration), xác nhận rằng Prometheus đã kết nối và thu thập dữ liệu thành công từ các dịch vụ

1790871705665.png


Hình 4. Giao diện Targets trên Prometheus Web UI​

Quá trình cập nhật và kiểm tra trạng thái hoạt động của hệ thống giám sát. Câu lệnh docker compose up -d đã tải và khởi chạy thành công dịch vụ Grafana (phiên bản 11.2.0), đồng thời hệ thống ghi nhận 15/15 tác vụ hoàn tất. Kết quả từ lệnh docker compose ps xác nhận cả 3 container (grafana, node-exporter, prometheus) đều đang ở trạng thái Up (hoạt động ổn định). Bảng kết quả cũng liệt kê chi tiết các cổng kết nối (ports) tương ứng của từng dịch vụ, cụ thể là Grafana (3000), Node Exporter (9100) và Prometheus (9090).

1790871716873.png


Hình 5. Trạng thái hoạt động của hệ thống giám sát

​

Giao diện Dashboard Node Exporter Full trên nền tảng Grafana. Đây là kết quả trực quan hóa dữ liệu được thu thập từ Prometheus. Giao diện hiển thị các thông số giám sát tài nguyên hệ thống của máy chủ (instance node-exporter:9100) trong 24 giờ qua, bao gồm: Mức độ sử dụng CPU (36.4%), Tải hệ thống (Sys Load), Bộ nhớ RAM (38.6%), Swap và Dung lượng ổ đĩa (Root FS - 32.9%). Bên cạnh đó, các biểu đồ bên dưới cung cấp cái nhìn chi tiết theo thời gian về hiệu năng CPU, mức tiêu thụ bộ nhớ và lưu lượng mạng, giúp người quản trị dễ dàng theo dõi và đánh giá sức khỏe của hệ thống.


1790871726835.png

Hình 6. Dashboard Node Exporter​
 
Back
Top