13/08/2024

Monitor MongoDB Với Grafana Và Prometheus Trên Ubuntu 20.0.4

Prometheus là một nền tảng cảnh báo và giám sát nguồn mở nhằm thu thập và lưu trữ các số liệu trong dữ liệu chuỗi thời gian.
Grafana là một ứng dụng web nguồn mở để phân tích và trực quan hóa tương tác. Nó cho phép bạn nhập dữ liệu từ nhiều nguồn dữ liệu
truy vấn dữ liệu này và hiển thị nó trên các biểu đồ có thể tùy chỉnh để dễ dàng phân tích.
Cũng có thể đặt cảnh báo để bạn có thể được thông báo nhanh chóng và dễ dàng về hành vi không mong muốn.
Việc sử dụng chúng cùng nhau cho phép bạn thu thập, giám sát, phân tích và trực quan hóa dữ liệu từ phiên bản MongoDB
Ở bài viết này mình sẽ hướng dẫn các bạn cài đặt Prometheus sử dụng làm nguồn dữ liệu và sử dụng Grafana để giám sát Mongodb

Bước 1: Nhập khóa GPG của MongoDB

  – sudo apt update
  –  sudo apt install wget curl gnupg2 software-properties-common apt-transport-https ca-certificates lsb-release

   – curl -fsSL https://www.mongodb.org/static/pgp/server-5.0.asc|sudo gpg –dearmor -o /etc/apt/trusted.gpg.d/mongodb.gpg

Bước 2: Thêm kho lưu trữ MongoDB trên Ubuntu 20.04

  – echo “deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse” | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list

Bước 3: Install MongoDB 5.0 trên Ubuntu 20.04

  – sudo apt update
  – sudo apt install mongodb-org

Bước 4: Khởi động MongoDB 5.0 trên Ubuntu 20.04

  – sudo systemctl restart mongod

  – systemctl status mongod

Bước 5 : Cài đặt Prometheus

   – Tạo thư mục chứa prometheus bằng lệnh sau:
   – sudo mkdir -p /etc/prometheus

   – sudo mkdir -p /var/lib/prometheus

Bước 6 : Tải  và giải nén gói cài đặt Prometheus

   – wget https://github.com/prometheus/prometheus/releases/download/v2.31.0/prometheus-2.31.0.linux-amd64.tar.gz

   – tar -xvf prometheus-2.31.0.linux-amd64.tar.gz

   – cd prometheus-2.31.0.linux-amd64

  

Bước 6 : Di chuyển prometheus và promtool sang thư mục /usr/local/bin/

   – sudo mv prometheus promtool /usr/local/bin/

Bước 7 :  Di chuyển tất cả các file còn lại sang /etc/prometheus/

Bước  8 : Kiểm tra version của Prometheus

Bước 9 : Tạo user và add vào group hệ thống cho prometheus

  – sudo groupadd –system prometheus

  – sudo useradd -s /sbin/nologin –system -g prometheus prometheus

  – sudo chown -R prometheus:prometheus /etc/prometheus/ /var/lib/prometheus/
  – sudo chmod -R 775 /etc/prometheus/ /var/lib/prometheus/

Bước 10 : Tao file service cho Prometheus

   – sudo nano /etc/systemd/system/prometheus.service

   – Thêm vào nội dung sau:

 [Unit]
  Description=Prometheus
  Wants=network-online.target
  After=network-online.target
  [Service]
  User=prometheus
   Group=prometheus
   Restart=always
   Type=simple
    ExecStart=/usr/local/bin/prometheus \
    –config.file=/etc/prometheus/prometheus.yml \
    –storage.tsdb.path=/var/lib/prometheus/ \
    –web.console.templates=/etc/prometheus/consoles \
    –web.console.libraries=/etc/prometheus/console_libraries \
    –web.listen-address=0.0.0.0:9090
    [Install]
    WantedBy=multi-user.target

Bước 11 : Khởi động Prometheus

   – sudo systemctl start prometheus

   – sudo systemctl enable prometheus

   – sudo systemctl status prometheus

 Bước 12   : Mở Port truy cập cho Prometheus và truy cập

   –  sudo ufw allow 9090

   – Truy cập vào  Prometheus bằng  http://your_server_ip:9090

Bước 13 : Cấu hình MongoDB Exporter

   – mkdir mongodb-exporter
   – cd mongodb-exporter

   – Tải gói : wget https://github.com/percona/mongodb_exporter/releases/download/v0.7.1/mongodb_exporter-0.7.1.linux-amd64.tar.gz

   – tar xvzf mongodb_exporter-0.7.1.linux-amd64.tar.gz
   – sudo mv mongodb_exporter /usr/local/bin/

Bước 14 : Tạo user authencation cho MongoDB bằng  các lệnh sau 

  – mongo

  – use admin

   – db.createUser({user: “test”,pwd: “testing”,roles: [{ role: “clusterMonitor”, db: “admin” },{ role: “read”, db: “local” }]})

   – exit

 Bước 15 tạo service cho MongoDB exporter :  

    – cd /lib/systemd/system/
    – sudo nano mongodb_exporter.service
    – Thêm vào nội dung sau

 [Unit]
Description=MongoDB Exporter
User=prometheus
[Service]
Type=simple
Restart=always
ExecStart=/usr/local/bin/mongodb_exporter
[Install]
WantedBy=multi-user.target

   – sudo systemctl daemon-reload
   – sudo systemctl start mongodb_exporter.service
   – sudo systemctl status mongodb_exporter.service

Bước 16 cấu  hình lại file cấu hình của Prometheus:

    – cd /etc/prometheus/
    – sudo nano prometheus.yml

   – sudo systemctl restart prometheus

 Bước 17 cấu hình Prometheus vào Grafana
     – Truy cập vào server Grafana với http://your_server_ip:3000

chọn  Prometheus

Điền thông tin server Prometheus

 Kết Quả :

Vậy là mình đã hướng dẫn xong các bạn cài đặt và cấu hình Prometheus với Grafana. Hy vọng với bài viết này sẽ giúp ích các bạn trong việc monitor một hệ thống dữ liệu MongoDB được tốt nhất
chúc các bạn cài đặt thành công