运维之道 | Zabbix自建mysql监控模板

Zabbix自建mysql监控模板

mysql数据库的模板,有如下特点:

  • 使用Zabbix Agent Trapper方式(主动发送采集数据到zabbix server,类似active模式)监控mysql数据库;
  • 支持对密码加密,避免配置文件里出现明文密码;
  • 支持SHOW /!50001 GLOBAL / STATUS和SHOW /!50001 GLOBAL / VARIABLES所有指标监控;
  • 支持mysql主从监控;
  • 支持自定义采集周期;

一、导入模板

1、下载模板,并解压
[root@localhost zabbix]#  wget https://dl.cactifans.com/zabbix/zabbix_template_mysql.tar.gz

[root@localhost zabbix]# ls
zbx_templates_mysql.xml  zbx_valuemaps_mysql.xml
2、将模板导入zabbix Server中
  • 在values mapping中导入zbx_valuemaps_mysql.xml
    在这里插入图片描述
  • 在Templates中导入zbx_templates_mysql.xml
    在这里插入图片描述
  • 导入数据后,可以看到Zabbix Agent Trapper模板
    在这里插入图片描述

MySQL作为中间件可以挂载到任何在zabbix server里的host上。监控脚本不一定部署在真实的数据库服务器之上,只要脚本通过远程方式能连接到数据库即可。
关联模版到需要挂载的host上即可。


二、配置插件

[root@localhost ~]# mkdir -p  /opt/mymon
[root@localhost ~]# wget https://dl.cactifans.com/zabbix/zabbix-mymon-0.0.1.x86_64.tar.gz
[root@localhost ~]# tar zxvf zabbix-mymon-0.0.1.x86_64.tar.gz -C /opt/mymon
[root@localhost mymon]# ls
control  mymon  mymon.json  var

插件结构
├── control //启动脚本
├── mymon //二进制程序
└── mymon.json //配置文件

使用mysql的root用户进行监控(主从监控需要)。
把密码写在明文的文件里不是被推荐的,因此脚本提供了一个使用AES加密算法加密数据库密码的工具,保证root密码的安全。

1、执行以下命令加密密码明文,将yourpassword替换为你的root密码。
[root@localhost mymon]#  /opt/mymon/mymon enc yourpassword
2、执行之后会看到进过加密后的密码密文,并记录下来
[root@localhost mymon]# /opt/mymon/mymon enc 123456
mer/HxX1Atkc8tuwq0Vu0bW7vhMLd3ex
3、修改配置文件mymon.json
[root@localhost mymon]# vi mymon.json 
{
"debug": false,
"interval": 60,
"slave": false,

"mysql": {
        "username": "root",
        "password": "mer/HxX1Atkc8tuwq0Vu0bW7vhMLd3ex",
        "host": "192.168.146.136",
        "port": 3306
    },
    
"zabbix":{
        "server": "192.168.146.136",
        "port": 10051,
        "hostname": "zabbix-server"
    }
}

配置文件说明:

step为采集周期,单位为秒
需要监控的mysql数据库信息配置

username为数据库的用户名,一般使用root用户
passoword为之前加密的密码密文
host为数据库主机ip
port为mysql端口

zabbix信息配置
server 为zabbix server的地址,如通过zabbix proxy 需要设置为zabbix proxy的地址
port zabbix server端口默认为10051
hostname为之前关联模版的主机名一致,如下图:
在这里插入图片描述


三、使用工具

1、修改好配置文件之后,可以启动插件,使用以下命令进行测试数据库是否能够连通
[root@localhost mymon]# ./mymon ping
2019/12/21 17:36:28 ping.go:60: Using config file: /opt/mymon/mymon.json  successfully!
1

可以看到使用的配置文件,如返回1,表示数据库连接正常,如返回2表示连接数据库异常,请检查用户权限及配置文件。

2、测试成功之后可以使用以下命令启动即可
[root@localhost mymon]# ./control start
mymon started..., pid=36208

常用命令:
./control start //启动应用
./control stop //停止应用
./control restart //重启应用
./control tail //查看日志

3、查询新增模板

Configuration → Templates → items
在这里插入图片描述
在这里插入图片描述


四、使用模板

1、新建主机在这里插入图片描述
2、主机配置模板

在这里插入图片描述

3、查看监控

在这里插入图片描述


源码下载:https://github.com/canghai908/zabbix-mymon
模版下载:https://dl.cactifans.com/zabbix/zabbix_template_mysql.tar.gz
脚本下载:https://dl.cactifans.com/zabbix/zabbix-mymon-0.0.1.x86_64.tar.gz

摘取至:老张监控技术 Zabbix开源社区(微信)

发布了97 篇原创文章 · 获赞 10 · 访问量 3395

猜你喜欢

转载自blog.csdn.net/VillianTsang/article/details/103646891
今日推荐