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