Giám sát MySQL/MariaDB với Zabbix Agent

Giám sát MySQL/MariaDB với Zabbix Agent với 2 bước vô cùng đơn giản..

Giới thiệu

Tiếp tục các Series về Zabbix, thì ở bài viết này mình sẽ hướng dẫn bạn cách Giám sát MySQL/MariaDB với Zabbix Agent trên máy chủ của mình vô cùng đơn giản. Nếu các bạn chưa xem qua các bài viết trước, các bạn có thể xem lại tại đây

Trước khi đi vào thiết lập giám sát MySQL/MariaDB, bạn cần đảm bảo rằng trên máy chủ cần giám sát MySQL/MariaDB đã cài đặt thành công Zabbix Agent . Nếu chưa cài đặt bạn có thể xem và cài đặt theo bài hướng dẫn bên dưới.

  • Hướng dẫn cài đặt Zabbix Agent trên Ubuntu 20.04

Hướng dẫn cấu hình

Bước 1: Cấu hình MySQL

  • Tạo User
AZDIGI Tutorial
mysql -uroot -p
Enter password:
GRANT USAGE ON *.* TO 'user'@'%' IDENTIFIED BY 'pass';
FLUSH PRIVILEGES;
QUIT;
  • Khai báo User/Password vừa tạo

Các bạn tiến hành tạo folder zabbix, và tiếp tục tạo thêm file .my.cnf bên trong folder zabbix theo 2 lệnh bên dưới:

AZDIGI Tutorial
mkdir /var/lib/zabbix
vi /var/lib/zabbix/.my.cnf

Tiếp đó bạn copy nội dung bên dưới vào file .my.cnf vừa tạo. Nhớ sửa lại đúng User/Pass của bạn

[client]
user = zbx_monitor
password = zabbix
  • Kiểm tra cấu hình

    Kiểm tra trong file /etc/zabbix/zabbix_agentd.conf đã có dòng bên dưới chưa (nếu chưa có thì thêm vào).

AZDIGI Tutorial
Include=/etc/zabbix/zabbix_agentd.d/*.conf

Tiếp đến bạn kiểm tra trong thư mục /etc/zabbix/zabbix_agentd.d/ sẽ có file tên userparameter_mysql.conf. Nếu chưa có, bạn cần tạo thủ công file này và thêm nội dung bên dưới vào:

# For all the following commands HOME should be set to the directory that has .my.cnf file with password information.

# Flexible parameter to grab global variables. On the frontend side, use keys like mysql.status[Com_insert].
# Key syntax is mysql.status[variable].
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/var/lib/zabbix mysql -N | awk '{print $$2}'

# Flexible parameter to determine database or table size. On the frontend side, use keys like mysql.size[zabbix,history,data].
# Key syntax is mysql.size[<database>,<table>,<type>].
# Database may be a database name or "all". Default is "all".
# Table may be a table name or "all". Default is "all".
# Type may be "data", "index", "free" or "both". Both is a sum of data and index. Default is "both".
# Database is mandatory if a table is specified. Type may be specified always.
# Returns value in bytes.
# 'sum' on data_length or index_length alone needed when we are getting this information for whole database instead of a single table
UserParameter=mysql.size[*],bash -c 'echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema=\"$1\"")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name=\"$2\"");" | HOME=/var/lib/zabbix mysql -N'

UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive
UserParameter=mysql.version,mysql -V
  • Khởi động lại Zabbix agent
AZDIGI Tutorial
sudo systemctl restart zabbix-agent

 

Bước 2: Thêm Host và Templates MySQL/MariaDB

Bây giờ bạn tiến hành thêm Host và add Templates MySQL/MariaDB vào máy chủ Zabbix. Tại giao diện Zabbix Server, bạn truy cập

Configuration >> Host >> Create Host

Thiếp lập giám sát máy chủ với Zabbix Server

Bây giờ các bạn cần điền các thông tin cần thiết như hình dưới

Giám sát MySQL/MariaDB với Zabbix Agent
Nhấn Add để cập nhật cấu hình.

Như hình bên dưới là bạn đã hoàn tất cấu hình

Giám sát MySQL/MariaDB với Zabbix Agent

Như vậy, ở bài viết này mình đã hướng dẫn các bạn cách cấu hình giám sát MySQL/MariaDB trên Zabbix một cách chi tiết nhất, để các bạn có thể dễ dàng theo dõi máy chủ của mình và xử lý nhanh chóng nếu có sự cố xảy ra. Hy vọng bài viết sẽ giúp ích cho các bạn, chúc các bạn thực hiện thành công.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *