配置zabbix平台对数据库以及主从状态的监控

引言:明人不说暗话,今天分享下配置zabbix平台对数据库以及主从状态的监控

准备好zabbix监控平台(zabbix-server端)例10.12.153.235

配置zabbix平台对数据库以及主从状态的监控_第1张图片

db1客户端(zabbix-agent)例10.12.153.73

1.安装Zabbix存储库

# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm # yum clean all

2.安装 Zabbix agent

# yum install zabbix-agent -y

3.启动Zabbix agent进程,并设置开机自启

# systemctl start zabbix-agent # systemctl enable zabbix-agent

4.将客户端加入监控平台

配置zabbix平台对数据库以及主从状态的监控_第2张图片

5.确保已启动并数据库正常运行。

6.登录数据库配置

创建zabbix_proxy 库并设置字符集

mysql>create database zabbix_proxy character set utf8 collate utf8_bin;

创建用户zabbix和密码并设置登录范围(这里我们默认所有人可登录)

create user 'zabbix'@'%' identified by 'Aa@123456';

给zabbix用户授权

grant all privileges on zabbix_proxy.* to 'zabbix'@'%';

打开全局变量

set global log_bin_trust_function_creators = 1;

刷新

flush privileges;

7.编辑zabbix_agentd配置文件

vim /etc/zabbix/zabbix_agentd.conf

加入server端地址和proxy端地址

Server=10.12.153.235,10.12.153.188

ServerActive=10.12.153.235,10.12.153.188

8.重启zabbix_agentd服务

systemctl restart zabbix-agent

web1代理端(zabbix-proxy)例10.12.153.188

1.确保已启动并运行数据库。

2.安装Zabbix存储库

# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
# yum clean all

3.安装 Zabbix proxy

yum install zabbix-proxy-mysql -y

4.远程导入客户端的zabbix_proxy 库的架构和数据

zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix -pAa@123456 -h10.12.153.73 zabbix_proxy

5.配置完成后返回客户端

登录数据库关闭数据库全局变量

mysql>set global log_bin_trust_function_creators = 0;

6.编辑zabbix_proxy的配置文件 /etc/zabbix/zabbix_proxy.conf

vim /etc/zabbix/zabbix_proxy.conf

需要找到并修改的配置如下

ProxyMode=1 # 0为主动 1为被动

Server=服务端ip地址

SourceIP=发送采样信息的ip地址

Hostname= #主机名

ListenPort=10051 #proxy自己的监听端口

EnableRemoteCommands=1 #允许远程命令

LogRemoteCommands=1 #记录远程命令的日志

数据的配置

DBHost=数据库地址

DBName=zabbix_proxy

DBUser=zabbix

DBPassword=Aa@123456

ConfigFrequency=30 #多长时间,去服务端拖一次有自己监控的操作配置;为了实验更快的生效,这里设置30秒,默认3600s

DataSenderFrequency=1 #每一秒向server 端发一次数据,发送频度

修改完成后保存退出

7.启动Zabbix proxy进程并设置开机自启

systemctl start zabbix-proxy

systemctl enable zabbix-proxy

8.zabbix-proxy端添加到监控平台创建为agent代理

配置zabbix平台对数据库以及主从状态的监控_第3张图片

9.zabbix-proxy端创建为agent代理

配置zabbix平台对数据库以及主从状态的监控_第4张图片

配置db1客户端(server-agent)端端口监控项被Zabbix proxy端代理监控

配置zabbix平台对数据库以及主从状态的监控_第5张图片

测试成功后添加此监控项

配置zabbix平台对数据库以及主从状态的监控_第6张图片

配置监控主从状态

1.配置db1客户端(zabbix-agent)和db2客户端(zabbix-agent)例10.12.153.69做主从复制,db1客户端(zabbix-agent)为从库

配置zabbix平台对数据库以及主从状态的监控_第7张图片

2.db1客户端编写脚本读取两个Yes的值

vim mycat-status.sh

#!/bin/bash

SQL=$(mysql -uroot -p'Aa@123456' -e 'show slave status\G' 2>/dev/null |grep "Slave_SQL_Running"|awk 'NR==1{print $2}')

IO=$(mysql -uroot -p'Aa@123456' -e 'show slave status\G' 2>/dev/null |grep "Slave_IO_Running"|awk 'NR==1{print $2}')

if [ "$SQL" = "Yes" -a "$IO" = "Yes" ];then

echo 1

else echo 0

fi

3.db1客户端编写赋值

vim /etc/zabbix/zabbix_agentd.d/mycat-status.conf

赋值名mycat-status加上脚本路径

UserParameter=mycat-status,sh /opt/mycat-status.sh

保存退出

4.重启zabbix-agent

systemctl restart zabbix-agent

5.将db2客户端(zabbix-agent)主机加入监控平台

配置zabbix平台对数据库以及主从状态的监控_第8张图片

6.创建db1客户端(zabbix-agent)的监控项

配置zabbix平台对数据库以及主从状态的监控_第9张图片

测试成功后添加 配置zabbix平台对数据库以及主从状态的监控_第10张图片

ok,如需配置异常警告通知创建对应的触发器和动作就好啦!!!

配置zabbix平台对数据库以及主从状态的监控_第11张图片

希望能够帮助到大家!!!

你可能感兴趣的:(数据库,zabbix,linux,nginx,负载均衡,运维,服务器)