NỘI DUNG
Tiếp tục bài viết về Zabbix, hôm này mình sẽ Hướng dẫn giám sát MySQL/MariaDB với Zabbix Agent. Mời các bạn thực hiện cũng mình nhé.
Bước 1: Cài đặt Zabbix Agent
Bước 2: Cấu hình MySQL/MariaDB
Tạo User
Bạn hãy tạo một user mới , ở đây mình tạo user có tên là monitor
. Và lưu ý ở phần password bạn hãy đặt passwd của bạn vào.
mysql -u root -p CREATE USER 'monitor'@'localhost' IDENTIFIED BY 'password'; GRANT USAGE ON *.* TO 'user'@'%' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; quit;
Tạo file .my.cnf
Bạnc ần tạo file .my.cnf
trong đường dẫn home của Zabbix là /var/lib/zabbix
, khai báo thông tin user như sau
mkdir -p /var/lib/zabbix vi /var/lib/zabbix/.my.cnf
Sau đó dán nội dung sau vào file .my.cnf
. Lưu ý hãy thay password bằng password đã tạo ở bước trên.
[client] user = monitor password = <password>
Bây giờ bạn hãy kiểm tra trong file /etc/zabbix/zabbix_agentd.conf
có dòng sau (đã bỏ comment chưa)
Include=/etc/zabbix/zabbix_agentd.d/*.conf
Tiếp đến bên trong thư mục /etc/zabbix/zabbix_agentd.d/
sẽ có file userparameter_mysql.conf
. Nếu chưa, bạn phải tạo lại file này và thêm nội dung sau.
#template_db_mysql.conf created by Zabbix for "Template DB MySQL" and Zabbix 4.2 #For OS Linux: You need create .my.cnf in zabbix-agent home directory (/var/lib/zabbix by default) #For OS Windows: You need add PATH to mysql and mysqladmin and create my.cnf in %WINDIR%\my.cnf,C:\my.cnf,BASEDIR\my.cnf https://dev.mysql.com/doc/refman/5.7/en/option-files.html #The file must have three strings: #[client] #user='zbx_monitor' #password='<password>' # UserParameter=mysql.ping[*], mysqladmin -h"$1" -P"$2" ping UserParameter=mysql.get_status_variables[*], mysql -h"$1" -P"$2" -sNX -e "show global status" UserParameter=mysql.version[*], mysqladmin -s -h"$1" -P"$2" version UserParameter=mysql.db.discovery[*], mysql -h"$1" -P"$2" -sN -e "show databases" UserParameter=mysql.dbsize[*], mysql -h"$1" -P"$2" -sN -e "SELECT COALESCE(SUM(DATA_LENGTH + INDEX_LENGTH),0) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='$3'" UserParameter=mysql.replication.discovery[*], mysql -h"$1" -P"$2" -sNX -e "show slave status" UserParameter=mysql.slave_status[*], mysql -h"$1" -P"$2" -sNX -e "show slave status"
Và bây giờ bạn hãy khởi động lại Zabbix agent
systemctl restart zabbix-agent
Bước 3: Thêm Host, Template monitor MySQL/MariaDB
Bây giờ bạn hãy thêm Templates MySQL vào host để bắt đầu monitor nhé. Nếu bạn chưa biết cách thêm, tạo host hãy tham khảo bài viết sau của mình.
Chúc bạn thực hiện thành công.