Zabbix 是一个企业级的、开源的、分布式的监控套件,能够监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。在目前生产环境中使用也是相当多,已成为了 Linux 运维从业人员的必学工具。
接下来,就一起来看看如何使用 Zabbix 自带的模版监控 MySQL 数据库吧!
该实践案例来自实验楼《楼+之Linux运维与DevOps实战》,所有实践操作均是在实验楼提供的在线环境完成。
1.在已安装 Zabbix 的环境中,启动相应的服务。
sudo service mysql start
sudo service zabbix-server start
sudo service zabbix-agent start
sudo service apache2 start
然后访问 http://localhost/zabbix
就会跳转到首页,如下所示:
顺序点击屏幕上的 Configuration -> Templates,我们在搜索框中输入 MySQL 先查看一下系统是否存在 MySQL 模板。结果如下所示,可以看到存在一个名为 Template DB MySQL 的模板。
点击 Name 为 Template DB MySQL 的模板查看详情,进入详情页面再点击 Items 查看:
2. 添加监控脚本
由于 zabbix-agent 没有直接提供对 MySQL 监控的 key,所以我们需要自定义 key 来应用这个模板。
根据前面看到的默认模板,也就是每个 Name 对应的 key,可以把 key 归为以下 3 类:
mysql.status[var]: 这个时候的 key 就取决于其中的参数 mysql.ping mysql.version 我们尝试来编写一个 key 的脚本。
在 MySQL 中可以执行命令 show status 来查看性能参数,然后取出对应的值:
进入 mysql
mysql -uroot
查看性能参数
show status
将这个脚本命名为 monitor_mysql.sh。执行如下命令新建脚本文件: