Nội dung
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ấu hình
Bước 1: Cấu hình MySQL
- Tạo User
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:
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).
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
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
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
Như hình bên dưới là bạn đã hoàn tất cấu hình
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.
Các bạn có thể tham khảo thêm các hướng dẫn sử dụng khác tại link bên dưới:
Nếu các bạn cần hỗ trợ các bạn có thể liên hệ bộ phận hỗ trợ theo các cách bên dưới:
- Hotline 247: 028 888 24768 (Ext 0)
- Ticket/Email: Bạn dùng email đăng ký dịch vụ gửi trực tiếp về: support@azdigi.com.