Ở phần trước mình đã giới thiệu về cách cài đặt prometheus trên CentOS 7, trong bài viết này mình sẽ giới thiệu cách giám sát máy ảo Linux bằng cách cài đặt exporter trên máy cần giám sát và scrape dữ liệu từ prometheus master.

Yêu cầu

  • Đã cài đặt prometheus như hướng dẫn ở phần 1

Mô hình thực hiện

Cấu hình giám sát máy ảo Linux

Bước 1: Cài đặt và cấu hình trên máy CentOS 7

Cập nhật hệ điều hành

yum install epel-release -y
yum update -y
yum install wget -y

Tắt Firewalld và Selinux

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
systemctl stop firewalld
systemctl disable firewalld

Cấu hình đồng bộ thời gian

timedatectl set-timezone Asia/Ho_Chi_Minh

yum -y install chrony
systemctl enable chronyd.service
systemctl restart chronyd.service
chronyc sources
timedatectl set-local-rtc 0

Khởi động lại máy

init 6

Lấy đường dẫn download exporter cho máy Linux tại trang chủ như các bước bên đưới

  • 1 – Click chuột phải vào đường dẫn download exporter cho hệ điều hành Linux
  • 2- Chọn Copy link address để sao chép đường dẫn download exporter

Download file exporter về máy

wget https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.1/node_exporter-1.0.0-rc.1.linux-amd64.tar.gz

Giải nén

tar -xzvf node_exporter-1.0.0-rc.1.linux-amd64.tar.gz

Tạo mới user cho node exporter

useradd -rs /bin/false nodeusr

Chuyển node_exporter tới thư mục /usr/local/bin

mv node_exporter-1.0.0-rc.1.linux-amd64/node_exporter /usr/local/bin/

Tạo mới file systemd cho node_exporter

vi /etc/systemd/system/node_exporter.service

Với nội dung như sau

[Unit]
Description=Node Exporter
After=network.target

[Service]
User=nodeusr
Group=nodeusr
Type=simple
ExecStart=/usr/local/bin/node_exporter

[Install]
WantedBy=multi-user.target

Lưu lại nội dung file và start node_exporter

systemctl daemon-reload
systemctl start node_exporter
systemctl enable node_exporter

Kiểm tra xem đã expose được metrics qua API hay chưa, truy cập http://10.10.10.183:9100/metrics

Bước 2: Thực hiện cấu hình trên Prometheus

Mở file prometheus.yml

vi /etc/prometheus/prometheus.yml

Và thay đổi nội dung cấu hình như sau

global:
  scrape_interval: 10s

scrape_configs:
  - job_name: 'prometheus_master'
    scrape_interval: 5s
    static_configs:
      - targets: ['localhost:9090']
  - job_name: 'node_exporter_centos'
    scrape_interval: 5s
    static_configs:
      - targets: ['10.10.10.183:9100']

Trong đó:

  • job_name: Tên của job
  • scape_intervals: Khoảng thời gian prometheus sẽ pull metrics từ máy CentOS 7
  • targets: Là mục tiêu (bao gồm host và port) mà prometheus tiến hành scrape dữ liệu

Khởi động lại prometheus

systemctl restart prometheus

Bước 3: Kiểm tra

Truy cập vào đường dẫn http://10.10.10.188:9090/graph

Chọn Status => Targets

Kiểm tra xem node exporter đã up hay chưa

Kiểm tra metrics bằng cách nhập thông tin vào ô query như sau, sau đó nhấn Excute

Nếu như đã có thông tin kết quả như sau

Chọn Graph để xem biểu đồ hiển thị

Tới đây là chúng ta đã tiến hành scape thành công metrics từ máy CentOS 7 được rồi đó.

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