Hướng dẫn cài và sử dụng grafana

Cần có kiến thức cơ bản về docker như image, container docker-compose, volumes, port, service,... và có đọc trước một chút về Prometheus và Grafana. Có 2 cách cài đặt các service trong hệ thống Prometheus là cài bằng tay (download package hoặc build source code,...) hoặc dùng các container (docker).

Bài viết sử dụng docker để cài đặt.

OS: Centos 8

  • Cài đặt Prometheus và Grafana
  • Cài đặt SNMP Exporter (Prometheus) để giám sát các thiết bị mạng
  • Cài đặt Alert Manager (Prometheus) để gửi mail khi có cảnh báo

1. Tổng quan

Hệ thống Prometheus có 2 phần là Prometheus Server và các Node Exporter. Prometheus Server sẽ chủ động scrape các dữ liệu (metrics) được xuất ra bởi các Node Exporter. Các Exporter sẽ được cài trên các máy chủ cần giám sát và được cung cấp bởi bên thứ ba.

Do Prometheus không mạnh lắm về visualize các metrics, nên thông thường người ta sử dụng Grafana kèm theo Prometheus để visualize.

2. Pull Image

docker pull prom/prometheus

docker pull grafana/grafana

3. prometheus.yml

File này dùng để cấu hình các node (windows server, linux server,...) cần monitor (theo dõi). Các node trong file này được định nghĩa ở targets.

Sau khi cài exporter cho node nào đó thì phải thêm vào file này và start lại prometheus.

`global: scrape_interval: 10s scrape_configs:

  • job_name: prometheus scrape_interval: 5s static_configs:
  • targets:
  • 'localhost:9090'
  • job_name: windows-test scrape_interval: 5s static_configs:
  • targets:
  • '192.168.34.75:9182'
  • job_name: web scrape_interval: 5s static_configs:
  • targets:
  • '10.0.40.55:9182' labels: hostname: test-web type: windows`

4. Windows Exporter

Để export các Metrics (thông số) trên Windows cho Prometheus Server, thì cần có 1 Service gọi là Node Exporter. Trong Windows thì gọi là Windows Exporter. .

Service này chạy ở port 9182, nên phải ở port 9182 trên Firewall của Windows, và Firewall trong hệ thống mạng (nếu có). Link download exporter Trong đường dẫn có 2 định dạng, nếu chạy luôn thì dùng .exe, còn không thì dùng msi.

Nếu chọn .msi, thì run cmd với quyền admin, sau đó chạy lệnh dưới. msiexec /i C:\Prometheus\windows_exporter-0.18.1-amd64.msi ENABLED_COLLECTORS="ad,cpu,cs,logon,memory,logical_disk,os,service,system,process,tcp,net,textfile,thermalzone,iis" Nếu thành công thì khi vào http://localhost:9182/metrics sẽ thấy hiện lên các thông số

5. Run docker-compose

Tạo file docker-compose.yml có nội dung dưới đây

version: '3.7'

services:

` prometheus: image: prom/prometheus volumes:

  • /etc/prometheus-docker/prometheus.yml:/etc/prometheus/prometheus.yml ports:
  • 9090:9090 restart: always`

` grafana: image: grafana/grafana user: "0" ports:

  • 3000:3000 volumes:
  • /var/lib/grafana/data:/var/lib/grafana
  • /var/lib/grafana/provisioning:/etc/grafana/provisioning restart: always`

Sau đó run

docker-compose up -d

Kết quả:

Truy cập Grafana bằng [IP]:3000 với tài khoản mặc định là admin/admin, và truy cập Prometheus bằng [IP]:9090.

Hướng dẫn cài và sử dụng grafana

Hình ảnh sau của Prometheus Server sau khi chạy thành công

6. Grafana

Truy cập https://grafana.com/grafana/dashboards/ và tìm mã dashboard thích hợp.

Nếu không có dashboard nào ưng ý thì có thể tự tùy biến thêm. Trong ví dụ đã tìm được 2 mã 14510, 13866.

Nếu bạn là 1 devops chắc bạn không còn lạ gì với công cụ tên Grafana này rồi. Hoặc mới vào ngành vừa nghe qua và lên Google tìm? Đọc bài này nhé.

Grafana là gì

Grafana là một giao diện/dashboard theo dõi hệ thống (opensource), hỗ trợ rất nhiều loại dashboard và các loại graph khác nhau để người quản trị dễ dàng theo dõi.

Grafana là một nền tảng open-source chuyên phục vụ mục đích theo dõi và đánh giá các số liệu thu được. Theo định nghĩa như vậy chúng ta có thể thấy tính ứng dụng của Grafana rất rộng chứ không chỉ trong khối IT.

Hướng dẫn cài và sử dụng grafana

Grafana có thể truy xuất dữ liệu từ Graphite, Elasticsearch, OpenTSDB, Prometheus và InfluxDB. Grafana là một công cụ mạnh mẽ để truy xuất và biểu diễn dữ liệu dưới dạng các đồ thị và biểu đồ.

Bất kì lĩnh vực nào có thể thu được dữ liệu theo dòng thời gian đều có thể hiển thị tối ưu trên Grafana. Ngoài khả năng kết nối đa dạng với các nguồn dữ liệu, phần giao diện của công cụ này rất thân thiền với người dùng. Dễ dàng đưa ra thông tin và cảnh báo.

Việc xây dựng Dashboard nó là một phần quan trọng trong việc monotor của hệ thống. Grafana support rất nhiều giải pháp monitor khác nhau.

\>> Xem thêm: Zalo mini app là gì? Lợi ích của zalo mini app với doanh nghiệp

Cài đặt Grafana và cấu hình Grafana như thế nào ?

Từ khoá tìm trên Google: How to install and configure Grafana on CentOS 7

Hướng dẫn cài và sử dụng grafana

Bước 1 – Disable SELinux

getenforce

Sửa đổi cấu hình SELinux như sau

vi /etc/sysconfig/selinux  
# vim /etc/sysconfig/selinux  
# nano /etc/sysconfig/selinux  

# sử dụng trình chỉnh sửa file nào tuỳ vào sở thích và thói quen của bạn nhé. LPTech Mình thích xài vi hơn.

Reboot system

reboot

Bước 2 – cài đặt Grafana bằng YUM Repository

Sử dụng Yum để cài đặt các gói ứng dụng là đơn giản nhất, vì không cần biết quá nhiều lệnh, mọi thứ đã được đóng gói thành ứng dụng rồi, cứ việc gõ lệnh install là được. Ngoài ra bạn còn có thể sử dụng cách khác chuyên nghiệp hơn dành cho các chuyên gia hoặc Devops nhiều năm trong ngành là cài từ Source, kiểu download bộ opensource về rồi gõ lệnh build theo yêu cầu cá nhân ý, custom này nọ lọ chai.

Create a repo file:

vi /etc/yum.repos.d/grafana.repo  
# vim /etc/yum.repos.d/grafana.repo  
# nano /etc/yum.repos.d/grafana.repo  
# Xài cái nào tuỳ nhé, LPTech không viết đến khi chạy theo không được bảo LPTech không hướng dẫn có tâm nhé.

Add the following contents to file:

[grafana]  
name=grafana  
baseurl=https://packages.grafana.com/oss/rpm  
repo_gpgcheck=1  
enabled=1  
gpgcheck=1  
gpgkey=https://packages.grafana.com/gpg.key  
sslverify=1  
sslcacert=/etc/pki/tls/certs/ca-bundle.crt  
# Package make by LPTech.Asia - Don't remove this LINE

Bước 3 – Install Grafana - Cài Grafana đi thôi chờ chi

Nhập lệnh sau vào Terminal

sudo yum install grafana - y  
# -y là để nó không hỏi có đồng ý cài hay không thôi, nếu bạn đã biết chắc chắn sẽ cài thì hãy dùng còn không thì thôi nhé. LPTech không khuyến khích

Package cài đặt nó sẽ làm theo các bước sau nè:

  • Cài đặt thư viên vào /usr/sbin/grafana-server
  • Chép init.d script vào /etc/init.d/grafana-server
  • Cài đặt file mặt định vào /etc/sysconfig/grafana-server
  • Chép cái cấu hình file vào /etc/grafana/grafana.ini
  • Tạo và cài cái service vào Centos để mấy ông gõ lệnh như service hay systemctl (if systemd is available) name grafana-server.service
  • Cuối cùng là ghi log vào /var/log/grafana/grafana.log thôi

Bước 4 – Install additional font packages - Cài đặt bổ sung cần thiết nhé

Tiếp tục với các lệnh sau để cài đặt phông chữ loại miễn phí và phông chữ urw.

yum install fontconfig  
yum install freetype*  
yum install urw-fonts

Bước 5 – Enable Grafana Service

Kiểm tra trạng thái của dịch vụ

Hướng dẫn cài và sử dụng grafana
systemctl status grafana-server  

# hoặc  
service grafana-server status

Nếu dịch vụ không hoạt động, hãy khởi động nó bằng lệnh sau:

systemctl start grafana-server  
# hoặc  
service grafana-server start

Bật dịch vụ Grafana khi khởi động hệ thống - Startup á

systemctl enable grafana-server.service  
# hoặc  
chkconfig on grafana-server

Bước 6 – Modify Firewall - Tường lửa

Grafana xài port 3000 là port mặc định nên phải mở port này hoặc tắt luôn firewalld hay iptables nếu không biết cách làm nhé. LPTech cũng không xíu nha.

vi /etc/sysconfig/selinux  
# vim /etc/sysconfig/selinux  
# nano /etc/sysconfig/selinux  

# sử dụng trình chỉnh sửa file nào tuỳ vào sở thích và thói quen của bạn nhé. LPTech Mình thích xài vi hơn.

0

Bước 7 – Xài Grafana thôi chờ gì nữa

Sử dụng URL sau để truy cập giao diện web Grafana.

vi /etc/sysconfig/selinux  
# vim /etc/sysconfig/selinux  
# nano /etc/sysconfig/selinux  

# sử dụng trình chỉnh sửa file nào tuỳ vào sở thích và thói quen của bạn nhé. LPTech Mình thích xài vi hơn.

1

Hướng dẫn cài và sử dụng grafana

Còn phần cấu hình nữa, nhưng hướng dẫn luôn thì các bạn lại làm theo mà không động não. có giao diện rồi cứ mò thêm đi nhé, lên trang chủ của Grafana là https://grafana.com/ để đọc tài liệu nha, họ có cung cấp dịch vụ Cloud Grafan luôn khỏi cần cài chi cho mắc công nhé.