Zabbix对第三方应用软件的监控,主要有两个工作难点:一个是编写自定义监控脚本;另一个是在编写模板并导入Zabbix web中,编写脚本这个要根据监控需求定制即可,而编写模板文件则相对来说有点难度,不过网上已经有很多已经写好的模板,可以直接拿来使用,所以,Zabbix对应用软件的监控其实并不难。
一、zabbix监控mysql应用实战
本次博文首先介绍的是Zabbix对Mysql的监控,这个是最简单的,因为Zabbix已经自带了Mysql监控的模板,我们只需编写一个监控Mysql的脚本即可。以下操作均在Zabbix代理端实现,具体步骤如下:
1) zabbix代理端安装mysql
由于mysql安装太浪费时间,本人提供一键安装mysql脚本,如下:
<代码> root@agent ~ # ls mysql * mysql-5.7.22-linux-glibc2.12-x86_64.tar。广州mysql.sh # sh mysql.sh root@agent ~ 启动MySQL。成功! mysql(警告):使用一个密码#指定连接使用的工具 如果[$ # - ne " 1 "); 回声“参数错误!” fi #获取数据 案例1美元 正常运行时间) 结果=' $ {MYSQL_CONN} |状态切- f2 - d”:“|削减f1 - d“T” echo $结果 ;; Com_update) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Com_update”| - d“|”f3的 echo $结果 ;; Slow_queries) 结果=' $ {MYSQL_CONN}状态|削减f5 - d”:“|削减f1 - d“O”的 echo $结果 ;; Com_select) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Com_select”| - d“|”f3的 echo $结果 ;; Com_rollback) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Com_rollback”| - d“|”f3的 echo $结果 ;; 问题) 结果=' $ {MYSQL_CONN}状态|削减f4 - d”:“|削减f1 - d“S”的 echo $结果 ;; Com_insert) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Com_insert”| - d“|”f3的 echo $结果 ;; Com_delete) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Com_delete”| - d“|”f3的 echo $结果 ;; Com_commit) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Com_commit”| - d“|”f3的 echo $结果 ;; Bytes_sent) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Bytes_sent”| - d“|”f3的 echo $结果 ;; Bytes_received) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Bytes_received”| - d“|”f3的 echo $结果 ;; Com_begin) 结果=' $ {MYSQL_CONN} extended-status | grep - w“Com_begin”| - d“|”f3的 echo $结果 ;; *) 回声”用法:$ 0(正常运行时间| Com_update | Slow_queries | Com_select | Com_rollback |问题| Com_insert | Com_delete | Com_commit | Bytes_sent | Bytes_received | Com_begin)” ;; esac 由于将用户名:密码信息写到脚本中不安全,所以将用户名:密码信息写文到/etc/my . cnf中所做件中 # vim/etc/my.cnf root@agent ~ (mysqladmin) 用户=zabbix 密码=zabbix # chmod + x/etc/zabbix/shell/check_mysql.sh root@agent ~ (root@agent ~) #乔恩zabbix。zabbix/etc/zabbix/shell/check_mysql.sh # sh/etc/zabbix/shell/check_mysql root@agent ~。sh正常运行时间 5260//代理端测试脚本能否使用代码>
3) zabbix代理端修改配置
<代码> root@agent ~ # vim/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf//将原本的UserParameter全部注释,添加以下内容 UserParameter=mysql.status [*],/etc/zabbix/壳/check_mysql。sh 1美元 UserParameter=mysql。萍,回家=/etc/usr/local/bin/mysqladmin萍| grep - c活着 UserParameter=mysql。版本,/usr/地方/bin/mysql - v (root@agent ~) # systemctl zabbix-agent重启 (root@zabbix ~) # zabbix_get - s 192.168.1.8 - p 10050 - k”mysql.status正常运行时间” 5372//zabbix服务器端测试能否获取到数据代码>
4) zabbix web界面引入模板
zabbix自带了mysql监控的模板,因此只需将模板链接到对应的主机即可!如下:
Zabbix监控Mysql、Apache、Nginx应用实战