mysql监控服务器配置_使用Zabbix监控MySQL服务器方法

从Zabbix 2.2开始,Zabbix官方已经支持了MySQL监控,但是MySQL监控默认是不可用的,需要经过额外的设置才可以使用。Kaijia将Zabbix换到了新的服务器时候性能绰绰有余,于是决定充分发挥剩余的内存和SSD性能,把MySQL、Apache、PHP-FPM等的监控也开起来

首先要确定Zabbix服务有MySQL的监控模板。MySQL模板默认包含在了Zabbix 2.2中,但如果是从较旧版本的Zabbix升级而来的话可能这个模板并没有导入。这种情况的话需要访问Zabbix官方的Wiki页面下载此模板Template_App_MySQL-2.2.0.xml然后在Zabbix服务器的前端Web界面的组态

接下来就是被监控端(需要安装Zabbix Agent)的设置了

怎么安装Zabbix Agent我就简单说明下好了将zabbix源码文件下载到/tmp/install目录下

./configure --enable-agent

make install

vi /usr/local/etc/zabbix_agentd.conf文件

Server=192.168.153.181#Zabbix Server轮询Agent

ListenPort=10050

ListenIP=0.0.0.0

ServerActive=192.168.153.181#Agent主动请求Zabbix Server

首先要建立一个MySQL帐户用于Zabbix Agent登录获取MySQL状态,这个帐户不需要任何权限当然可以登录被监控端的MySQL新建一个帐户。

GRANT USAGE ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY '密码';

FLUSH PRIVILEGES;

修改mysql配置文件 vim /etc/my.cnf (yum默认安装的mysql,配置文件就在/etc/my.cnf)

[client]

port = 3306

socket = /var/lib/mysql/mysql.sock

default-character-set=utf8

[mysqld]

port = 3306

socket = /var/lib/mysql/mysql.sock

skip-locking

key_buffer_size = 256M

max_allowed_packet = 1M

table_open_cache = 256

sort_buffer_size = 1M

read_buffer_size = 1M

read_rnd_buffer_size = 4M

myisam_sort_buffer_size = 64M

thread_cache_size = 8

query_cache_size= 16M

thread_concurrency = 8

default-character-set=utf8

log-bin=mysql-bin

binlog_format=mixed

server-id = 1

[mysqldump]

quick

max_allowed_packet = 16M

#将一下配置内容放到/var/lib/zabbix更好一些

[mysql]

host=localhost

user=zabbix

password=zabbix

socket=/var/lib/mysql/mysql.sock

no-auto-rehash

[myisamchk]

key_buffer_size = 128M

sort_buffer_size = 128M

read_buffer = 2M

write_buffer = 2M

[mysqlhotcopy]

interactive-timeout

#将一下配置内容放到/var/lib/zabbix更好一些

[mysqladmin]

host=localhost

user=zabbix

password=zabbix

socket=/var/lib/mysql/mysql.sock

这里推荐将以下配置,创建一个文件.my.cnf放到/var/lib/zabbix目录下【推荐这种方法】

因为在/usr/local/etc/zabbix_agentd.conf.d/userparameter_mysql.conf文件中指定了目录

UserParameter=mysql.size[*],echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema='$1'")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name='$2'");" | HOME=/var/lib/zabbix mysql -N

UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive

UserParameter=mysql.version,mysql -V

[mysql]

host=localhost

user=zabbix

password=zabbix

socket=/var/lib/mysql/mysql.sock

[mysqladmin]

host=localhost

user=zabbix

password=zabbix

socket=/var/lib/mysql/mysql.sock

修改zabbix agent配置

vim /usr/local/etc/zabbix_agentd.conf (源码安装的,没有设置--prefix,配置文件目录就在这个)

拷贝userparameter_mysql.conf 文件到/usr/local/etc/zabbix_agentd.conf.d/目录下(具体安装路径请根据实际情况修改)

# cp /tmp/install/zabbix-2.2.9/conf/zabbix_agentd/userparameter_mysql.conf /usr/local/etc/zabbix_agentd.conf.d/userparameter_mysql.conf

拷贝服务脚本,放到/etc/rc.d/init.d  使得可以让chkconfig管理服务

cp /tmp/install/zabbix-2.2.9/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/

启动zabbix_agent服务(要先创建zabbix用户 Linux用户)

如果已经开启过了,就重启服务

service zabbix_agentd restart

最后别忘了开启防火墙10050端口

-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT

上图

217cfae77f6136a59f3b51878b69133a.png

参考文章

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值