十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
下文给大家带来Zabbix是怎么样监控MySQL、MongoDB的,希望能够给大家在实际运用中带来一定的帮助,MYSQL涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用创新互联在行业内累计的经验来做一个解答。
专注于为中小企业提供网站制作、成都做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业镇安免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
公司的监控换成了zabbix,除了对系统的基本监控外,也想对mysql、mongodb进行监控,以在需要的时候直接查看mysql、mongodb的一些状态;因此研究了zabbix怎么监控mysql和mongodb;记录下这些笔记。
zabbix的安装和基本配置这里就不详说;直接进入怎么去监控mysql、mongodb;(在这过程中我大部分是参考的网上文章,本篇文章页仅供自己作为笔记使用,如果因此带给原文博主带来影响请谅解并且请给留言,我会立即删除本篇文章。)
-------------------------------------------------------------------------------------------
在zabbix中自带有mysql的模板,但是默认会不支持的,因为他本身获取不到模板中定义key的值,因此我们需要通过插件来帮助zabbix;zabbix的插件其实就是脚本,也就是说我们需要写一个脚本来帮助zabbix获取这些key的值;
首先在mysql中授权,因为zabbix实际是通过mysql用户查看mysql的一些信息;
mysql>grant all on mysql.* to zabbix@localhost identified by 'zabbix123456';
mysql>flush privileges;
其次在zabbix_agentd.conf 中添加插件
vim /usr/local/zabbix_agentd/etc/zabbix_agentd.conf
UserParameter=mysql.version,mysql -V
UserParameter=mysql.ping,mysqladmin -uzabbix -pzabbix123456 -S /var/lib/mysql/mysql.sock ping | grep -c alive
UserParameter=mysql.status[*],/usr/local/zabbix/script/checkmysqlperformance.sh $1
zabbix监控mysql的插件脚本已经上传到附件:获取mysql信息脚本
重启zabbix_agentd
killall zabbix_agentd
/usr/local/zabbix_agentd/sbin/zabbix_agentd start
查看agentd是否启动成功
ps axuf | grep zabbix_agentd
在zabbix中查看主机的mysql项目状态,如果变为已启用状态则稍等就能在图形中看到数据
至此,zabbix对mysql的监控就已经完成了,如果你还需要监控其他东西可以自己添加插件就行;
-------------------------------------------------------------------------------------------
zabbix 监控mongodb
zabbix中默认没有监控mongodb的模板,这样就需要自己添加模板了,添加模板我这里就以一个项目为例;
添加mongodb模板(创建模板在点击模板后的右上角)
组态-->模板-->创建模板-->mongodb monitor
添加监控项目(创建监控项在点击项目后的右上角)
组态-->模板-->项目-->创建监控项-->MongoDB.Status[connections,available]
最关键是的是填写键值
然后添加你想要的其他监控项,下面是我所有的监控项
监控项添加完毕之后还需要添加图形、触发器等,这些在这里就不详述;
上面监控mongodb的模板添加好之后就该添加zabbix插件了,让他来支持mongodb的监控
zabbix监控mongodb的模板已经上传到附件:zabbix_mongodb模板
在zabbix_agentd.conf中添加插件
vim /usr/local/zabbix_agentd/etc/zabbix_agentd.conf
UserParameter=MongoDB.Status[*],/usr/local/zabbix_agentd/script/mongdbmonitor.sh $1 $2
UserParameter=MongoDB.ping,ps axuf | grep mongod | grep -v "grep " | wc -l
mongdbmonitor.sh脚本内容
vim /usr/local/zabbix_agentd/script/mongdbmonitor.sh
#! /bin/bash
/bin/echo "db.serverStatus().$1" | /usr/local/mongodb/bin/mongo admin | grep -w "$2" | awk -F ':|,' '{print $2}'| sed 's/ //'
重启zabbix_agentd
killall zabbix_agentd
/usr/local/zabbix_agentd/sbin/zabbix_agentd start
查看agentd是否启动成功
ps axuf | grep zabbix_agentd
然后稍等会儿查看主机的mongodb监控状态,主机的状态应该都变为已启动
至此,zabbix对mongodb的监控已经配置完成,这样就可以看到mongodb的一些信息,供分析和监控查看;
看了以上关于Zabbix是怎么样监控mysql、mongodb的,如果大家还有什么地方需要了解的可以在创新互联行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,创新互联技术工程师在行业内拥有十几年的经验了。