zabbix利用自带模板-监控mysql性能

环境:

zabbix3.4.4

mariadb 5.5.56

 

要求:  利用zabbix 自带的模板 监控mariadb 上的 并发连接数,慢查询数量,增删改查、请求流量带宽,mysql响应流量带宽等

(1)创建监控用户

grant all on *.* to zabbix@'localhost' identified by 'zabbix';

 

(2)编写check_mysql.sh脚本

用于获取mariadb 上的性能指标数据, 脚本如下

vim /usr/local/bin/chk_mysql.sh
#!/bin/bash
#-----------------------------------------------------------------------------------
#FileName: check_mysql.sh
#Revision: 1.0
#Date: 2019/08/23
#Author: fxkj
#Email:  root@fxkjnj.com
#website: www.fxkjnj.com
#Description:
#License: GPL
#---------------------------------------------------------------------------------
# 用户名
Mysql_user='zabbix'
# 密码
Mysql_password='zabbix'
# 主机地址/IP
Mysql_host='127.0.0.1'
# 端口
Mysql_port='3306'
#数据库连接
Mysql_comm="/usr/bin/mysqladmin -u$Mysql_user -p$Mysql_password -h$Mysql_host -P$Mysql_port"
#参数是否正确
if [ $# -ne "1" ];then
    echo "arg error!"
fi

#获取数据
case $1 in
Com_begin)
    $Mysql_comm extended-status | grep -w "Com_begin" | awk -F"|" '{print $3}';;
Bytes_received)
    $Mysql_comm extended-status | grep -w "Bytes_received" | awk -F"|" '{print $3}';;
Bytes_sent)
    $Mysql_comm extended-status | grep -w "Bytes_sent" | awk -F"|" '{print $3}';;
Com_commit)
    $Mysql_comm extended-status | grep -w "Com_commit" | awk -F"|" '{print $3}';;
Com_delete)
    $Mysql_comm extended-status | grep -w "Com_delete" | awk -F"|" '{print $3}';;
Com_insert)
    $Mysql_comm extended-status | grep -w "Com_insert" | awk -F"|" '{print $3}';;
Questions)
    $Mysql_comm extended-status | grep -w "Questions" | awk -F"|" '{print $3}';;
Com_rollback)
    $Mysql_comm extended-status | grep -w "Com_rollback" | awk -F"|" '{print $3}';;
Slow_queries)
    $Mysql_comm extended-status | grep -w "Slow_queries" | awk -F"|" '{print $3}';;
Com_select)
    $Mysql_comm extended-status | grep -w "Com_select" | awk -F"|" '{print $3}';;
Com_update)
    $Mysql_comm extended-status | grep -w "Com_update" | awk -F"|" '{print $3}';;
Uptime)
    $Mysql_comm extended-status | grep -w "Uptime" | awk -F"|" '{print $3}';;
esac

chmod +x  /usr/local/bin/chk_mysql.sh    #添加可执行权限


(3)修改agent配置文件

备注: 创建自定义key ,需要修改被监控端agent 的配置文件

vim /usr/local/zabbix_agentd.conf

把 UnsafeUserParameters=0   修改为 UnsafeUserParameters=1   (是否允许自定义KEY)

把 #Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf   修改为    Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf   (加载配置文件路径)

(4)创建自定义KEY

vim /usr/local/etc/zabbix_agentd.conf.d/mysql_status.conf
#获取mairadb性能指标,对应上面的check_mysql.sh脚本
UserParameter=mysql.status[*],/usr/local/bin/chk_mysql.sh $1
#获取mariadb版本
UserParameter=mysql.version,mysql -V
#获取mariadb运行状态
UserParameter=mysql.ping,mysqladmin -uzabbix -pzabbix -P3306 -h127.0.0.1 ping | grep -c alive

备注:请注意修改你的数据库信息,以及zabbix路径信息

(5)重启zabbix_agentd

killall zabbix_agentd
zabbix_agentd

(6)测试自定义key是否生效

[root@mysql ~]# zabbix_get -s 127.0.0.1 -k mysql.status[Bytes_received]          (任选一个 Template APP Mysql 中key 值测试 )
209

(7)给被监控主机 关联 Mysql 模板

模板是zabbix系统提供的,进入zabbix web后台,configuration–>hosts–>点击你的主机name–>选择template选项卡,选择模板“Template App MySQL”,最后点击update即可

(8) 查看数据

如果配置没有异常,那么可以在graph中查看到2张监控图,分别为请求流量带宽、响应流量带宽、ops,点击monitoring–>graphs–>选择你的主机

分别选择Graph“MySQL bandwidth”、“MySQL operations”,监控图分别如下(图片双击放大查看)

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/7380

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年2月24日 下午3:50
下一篇 2023年2月25日 下午5:20

相关推荐

  • CentOS 7 安装 JDK 11

    现在很多编译器和软件都开始要求使用 JDK 11 了。 因此我们希望在 CentOS 上安装 JDK 11。 运行下面的命令: 如果你的系统中还装有不同版本的 JDK 的话。你需要运行: 来选择默认的 JDK。 随后你就可以验证安装的 JDK 了。

    2023年3月11日
    2800
  • EFK 日志系统收集K8s日志 (二)

    上篇文章我们说过了EFK 日志系统收集K8s日志 之 容器标准输出日志,今天我们来谈谈 k8s中EFK收集服务日志 1、收集容器中日志文件 大致思路: 在Pod中增加一个容器运行日志采集器,使用emtyDir共享日志目录让日志采集器读取到业务容器的日志文件 PS: 收集容器中日志文件所需要的Pod Yaml 文件 在 https://github.com/f…

    2023年2月8日
    5200
  • Linux系统管理本地 Linux 用户和组

    Linux的用户UID 系统中的每个进程(运行程序)都作为一个特定用户运行。每个文件归一个特定用户所有。对文件和目录的访问受到用户的限制。与运行进程相关联的用户可确定该进程可访问的文件和目录。 用户的分类 root用户 用户系统中唯一,权限最大,可以操作任意命令 普通用户 权限较低,只能编辑自己的用户家目录,由root账户创建 虚拟用户 没有登录系统的权限,…

    2022年6月11日
    28200
  • MySQL5.7主从同步、读写分离

    MySQL5.7主从同步、读写分离 安装MySQL5.7 下载rpm包 安装 启动mysql查看密码 登录mysql 主从同步 关闭每台服务器的防火墙和selinux 主从服务器时间同步 主服务器使用本地时钟源 修改配置文件 开启ntpd 从服务器同步主服务器时间 安装ntp工具 启动ntp和主服务器进行时间同步 主服务器mysql配置 修改配置文件 重启m…

    2022年7月31日
    20900
  • Linux服务器疑似被入侵,教你怎么去排查

    随着开源产品的越来越盛行,作为一个Linux运维工程师,能够清晰地鉴别异常机器是否已经被入侵了显得至关重要,个人结合自己的工作经历,整理了几种常见的机器被黑情况供参考。 背景信息:以下情况是在CentOS 6.9的系统中查看的,其它Linux发行版类似。 1、入侵者可能会删除机器的日志信息,可以查看日志信息是否还存在或者是否被清空,相关命令示例: [root…

    2023年2月23日
    6600

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信