Các bạn là một IT sysadmin thì việc giám sát hệ thống hay gọi tắt là monitor là việc không thể bỏ qua. Khi ứng dụng được triển khai lên production là luôn phải theo dõi, giám sát, theo dõi các thông tin hệ thống (phần cứng, Logs, CPU, RAM, disks, IO,...) xác định những thời điểm, khoảng thời gian ảnh hưởng xấu tới hiệu suất của ứng dụng mục đích là đảm bảo ứng dụng luôn hoạt động ổn định. Bài viết hôm nay mình chia sẻ các bạn cách giám sát hệ thống đơn giản với Prometheus và Grafana.
1. Tổng quan
1.1 Prometheus
Prometheus là giải pháp open-source được dùng để giám sát hệ thống thông qua các daemon cài sẵn trên các node, qua đó thu thập các thông tin cần thiết. Prometheus giao tiếp với node qua giao thức http/https và lưu trữ data theo dạng time-series database (TSDB).
Time series database (TSDB) là những database được lưu trữ theo các mốc thời gian. Nghĩa là mỗi dữ liệu luôn được gắn với một mốc thời gian nhất đinh từ đó tạo thành chuỗi dữ liêu theo thời gian từ đó giúp chúng ta có thể xem lại dữ liệu cho một khoảng thời gian 1 giờ hay 1 tiếng.
- Prometheus sẽ thực hiện quá trình kéo (pull) các thông số/số liệu (metric) từ các job (exporter).
- Prometheus sẽ lưu trữ các dữ liệu thu thập được ở local máy chủ.
- Prometheus sẽ chạy các rule để xử lý các dữ liệu theo nhu cầu cũng như kiểm tra thực hiện các cảnh báo mà bạn mong muốn.
1.2 Grafana
2. Cài đặt Prometheus Grafana
Sau khi thông não chút lí thuyết về Prometheus Grafana bây giờ mình đi tiến hành cài thôi!! 🤓🤯
Trong bài viết này mình hướng dẫn các bạn cài Prometheus Grafana bằng docker đơn giản và nhanh gọn lẹ (P/S có nhiều cách cài Prometheus Grafana các bạn lên hỏi anh GG là ra cả núi nhé 😜)
Các bạn vào đây clone repo về và lưu ý mình 2 file chính đó là docker-compose.yml
và prometheus.yml
Đầu tiên là VPS hoặc máy ảo các bạn chưa cài docker thì các bạn phải cài docker vì mình đang cài trên docker. Bạn nào chưa biết docker là gì thì xem hướng dẫn ở đây
2.1 Cài docker
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo usermod -aG docker $USER
newgrp docker
(Note: Ở đây mình dùng VPS hệ điều hành (OS) Ubuntu 20.04LTS. Nền tảng khác các bạn cũng làm tương tự nhé)
2.2 Cài đặt Prometheus Grafana
Các bạn tạo một folder prometheus
sau đó copy file prometheus.yml
clone từ repo ở trên vào.
mkdir -p /etc/prometheus
cp prometheus.yml /etc/prometheus
Xem qua file docker-compose.yml
để ý biến môi trường nếu các bạn không dùng domain thì các bạn comment dòng biến môi trường này lại.
Chạy lệnh sau để cài đặt
docker-compose up -d
Sau khi cài đặt xong các bạn chạy lệnh sau để kiểm tra
docker-compose ps
Các bạn quan sát thấy có 4 container được tạo ra cadvitor, grafana, node_exporter, prometheus như hình trên là OK rồi nhé Để ý container grafana đang dùng port 3000. Vào trình duyệt Chorme, Firefox... đăng nhập IP VPS của các bạn và port 3000 của grafana. User và password mặc định là admin / admin các bạn đổi lại password mới sau đó nếu muốn.
- Bước đầu tiên các bạn thêm cho mình một data source để lưu lại trước vào cấu hình sau
- Tiếp đến các bạn load mẫu dasdboard ID hoặc dạng file json từ trang chủ của grafana ở đây. Muốn ID nào bỏ vào ô tìm kiếm nhoé.
Ở đây mình lấy ID 1860
- Sau khi load lên các bạn có một dasdboard như này
Các thông tin CPU, Mem, Disk... được thể hiện cụ thể và chi tiết các bạn click vào để xem chi tiết từng option.
Video cụ thể mình để bên dưới các bạn tham khảo thêm
3. Tổng kết
Việc giám sát hệ thống khá quan trọng đặc biệt khi các bạn triển khai ứng dụng lên môi trường production. Hi vọng qua bài viết này các bạn có được thêm một công cụ để giám sát hệ thống của mình. Prometheus Grafana còn nhiều điều để khai phá nữa đây mới chỉ là bước đầu hẹn gặp các bạn ở các bài viết sau. Các bạn có đóng góp ý kiến để lại bình luận bên dưới nhoé. Chúc các bạn thành công.!
Website không bao giờ chứa bất kỳ quảng cáo nào, mọi đóng góp để duy trì phát triển cho website (donation) xin vui lòng gửi về STK 90.2142.8888 - Ngân hàng Vietcombank Thăng Long - TRAN VAN BINH
=============================
Nếu bạn muốn tiết kiệm 3-5 NĂM trên con đường trở thành DBA chuyên nghiệp thì hãy đăng ký ngay KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE, được Coaching trực tiếp từ tôi với toàn bộ kinh nghiệm, thủ tục, quy trình, bí kíp thực chiến mà bạn sẽ KHÔNG THỂ tìm kiếm trên Internet/Google giúp bạn dễ dàng quản trị mọi hệ thống Core tại Việt Nam và trên thế giới, đỗ OCP.
- CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
- Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
2 khóa học online qua video giúp bạn nhanh chóng có những kiến thức nền tảng về Linux, Oracle, học mọi nơi, chỉ cần có Internet/4G:
- Oracle cơ bản: https://bit.ly/admin1_1200
- Linux: https://bit.ly/linux_1200
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội
=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty