设为首页 收藏本站
查看: 1118|回复: 0

[经验分享] zabbix全面监控mysql

[复制链接]

尚未签到

发表于 2015-11-23 11:06:14 | 显示全部楼层 |阅读模式
  怎么知道zabbix server是主动轮询收集信息还是被动接受zabbix agent的信息
zabbix_agent [TCP 主动轮询]
zabbix_sender [UDP 被动接受代理收集的系统信息]

  一、从网上下载相应脚本与XML定义文件。
  下载地址:http://www.zabbix.com/wiki/howto/monitor/db/mysql/extensive_mysql_monitoring_including_replication?s[]=mysql
  Template_MySQL_Server.xml
  Template_MySQL_Replication_Master.xml
  Template_MySQL_Replication_Slave.xml
  和执行脚本:mysql.php
  二、把mysql.php上传至配置文件目录/etc/zabbix/
  chmod 755 mysql.php
  三、修改mysql.php文件
  根据本机环境。
  第一行加入:#!/usr/bin/php
  在最后一行加入:?>
  关闭调试:define('DEBUG',true); 为 define('DEBUG',False);
  修改日志、数据文件路径:
  define('LOG',"/tmp/zabbix_".SYSTEM.".log");
define('DAT',"/tmp/zabbix_".SYSTEM.".dat");
define('UTIME',"/tmp/.zabbix_".SYSTEM.".utime");
define('DTIME',"/tmp/.zabbix_".SYSTEM.".dtime");
  修改:define('SYSTEM','mysql'.(DEBUG ? "-debug" : "")); 为:define('SYSTEM','mysql');
  打开系统日志功能://system("zabbix_sender -z $server -i ".DAT." >> ".LOG); 为:system("zabbix_sender -z $server -i ".DAT." >> ".LOG);
  

  注释file_put_contents(DAT,"$server $host 10051 ".SYSTEM.".$var $val\n",FILE_APPEND);且
  下面增加以下文字:
$cmd = "zabbix_sender -c $config_path -k ".SYSTEM.".$var -o $val -vv";
file_put_contents(DAT,"$cmd\n",FILE_APPEND);
exec($cmd);
  

  四、在zabbix_agentd.conf配置文件中加入
  UserParameter=mysql.daily,php /etc/zabbix/mysql.php daily 用户名 密码
UserParameter=mysql.live,php /etc/zabbix/mysql.php live 用户名 密码
  daily:每天执行一次。【由zabbix_server轮询发起,默认86640秒即一天 zabbix agent类型 UDP协议】
  live:按指定时间执行一次。【由zabbix_server轮询发起,默认120秒 zabbix agent类型 UDP协议】
  php :执行php文件
  /etc/zabbix/mysql.php:mysql.php文件所在的文件路径
  用户名 密码:登录mysql数据库的账户与密码
  重启zabbix_agentd
  

  切记修改/etc/profile 或者 /home/zabbix/.bash_profile 在文件尾部添加以下文字

  /home/zabbix/.bash_profile

  PATH=$PATH:$HOME/bin:/usr/local/webserver/mysql/bin:/usr/local/webserver/php/bin:/usr/local/webserver/zabbix_agents/bin
export PATH
  /etc/profile
  PATH=$PATH:/usr/local/webserver/mysql/bin:/usr/local/webserver/php/bin:/usr/local/webserver/zabbix_agents/bin
export PATH

mysql.php 监控文件里面的命令执行失败【/tmp下的日志文件属主权限、用户的.bash_profile是否导入 php zabbix_sender mys】

  

  问题:
Zabbix agent (active)  走 UDP 协议  NGINX 添加的 zabbix_agentd 服务后,且通过zabbix_get可以获取数据,但是无法入库。解决方法看下面大红字

  修改防火墙设置 vi /etc/sysconfig/iptables

  【zabbix-agent    10050/tcp               # Zabbix Agent
zabbix-agent    10050/udp               # Zabbix Agent
zabbix-trapper  10051/tcp               # Zabbix Trapper
zabbix-trapper  10051/udp               # Zabbix Trapper

-A INPUT -p tcp -s 110.80.20.XXX-m multiport --dports 10050,10051 -j ACCEPT
-A INPUT -p udp -s 110.80.20.XXXX-m multiport --dports 10050,10051 -j ACCEPT

  

  五、在zabbix web管理界面导入xml文件
  配置-导入/导出-浏览
  六、在主机内增加指定模板
  配置-主机-具体主机名-Link with Template-新增-刚导入的模板。
  模板分为三种:
  template MYSQL_server:监控项最全【下载文件有备注信息、且若干个tigger有重复会导致导入失败】
  由于监控的item很多所以必须修改 Timeout 系统最大值 30秒。默认3秒。范围 1-30秒 否则服务端测试时会
  Timeout while executing a shell script 当然如果项目在30秒无法发送完毕也将停止,所以导致发送不全面
  ### Option: Timeout
#       Spend no more than Timeout seconds on processing
#
# Mandatory: no
# Range: 1-30
# Default:
Timeout=30

  template MYSQL_Replication_Master:只监控主要参数,监控功能相对最少
  template MYSQL_Replication_Slave:主要针对性能方面的监控。
  七、测试监控是否成功
  删除 定时文件
  rm /tmp/.zabbix_mysql-debug.dtime;
  取的每天的监控数据
  php /etc/zabbix/mysql.php daily root *****
  取即时数据
  php /etc/zabbix/mysql.php live root *****
  查看日志
  cat /tmp/zabbix_mysql.log
  Info from server: "Processed 1 Failed 0 Total 1 Seconds spent 0.006261"
sent: 1; skipped: 0; total: 1
Info from server: "Processed 1 Failed 0 Total 1 Seconds spent 0.004047"
sent: 1; skipped: 0; total: 1
Info from server: "Processed 0 Failed 106 Total 106 Seconds spent 0.045790"
sent: 106; skipped: 0; total: 106
  看到上述为成功
  查看DAT的文件。上传的数据
  cat /tmp/zabbix_mysql.dat
  八、最后查看zabbix 的最新数据
  这时会看到新增加的监控项。
  接下去就是绘制图形。

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-142557-1-1.html 上篇帖子: zabbix2.4 图文安装配置攻略 下篇帖子: zabbix--飞信机器人报警
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表