天天看点

基于rhel7.2的Zabbix平台搭建和部署(四)

基于rhel7.2的Zabbix平台搭建和部署(四)

一、实现zabbix添加监测项,添加对Linux主机的监控、

说明:先在“配置”-“主机”里添加主机监控,监控os资源:内存,cpu,io,负载,带宽等.

(1)登录zabbix,先在“配置”-“主机”里单击”创建主机”:

<a href="https://s3.51cto.com/wyfs02/M01/97/FA/wKiom1k2DYaC4JMTAAEiCzoKajQ149.jpg" target="_blank"></a>

(2)在“主机”标签,填写相关信息

<a href="https://s5.51cto.com/wyfs02/M00/97/FB/wKioL1k2Dcyi6hzeAAFyj30Hz78517.jpg" target="_blank"></a>

注:这个主机名字必须和hostname的一模一样,这里用的ip就是被监控主机的ip。

<a href="https://s4.51cto.com/wyfs02/M02/97/FA/wKiom1k2Dc2BAxE_AACstxzVbyY388.jpg" target="_blank"></a>

其它选项默认即可。

(3)在“模板”标签,填写相关信息

<a href="https://s5.51cto.com/wyfs02/M02/97/FA/wKiom1k2Dyqh2_OjAADoXoHHwlI123.jpg" target="_blank"></a>

<a href="https://s4.51cto.com/wyfs02/M02/97/FA/wKiom1k2Dyyjz67XAAK2pGfa3ds038.jpg" target="_blank"></a>

<a href="https://s3.51cto.com/wyfs02/M00/97/FD/wKioL1k2GO6ioTElAADQKvuX_vg978.jpg" target="_blank"></a>

<a href="https://s3.51cto.com/wyfs02/M02/97/FC/wKiom1k2GPDR6sa4AADb0GhFBPg561.jpg" target="_blank"></a>

至此,Zabbix监控Linux主机设置完成,如下图所示:

<a href="https://s4.51cto.com/wyfs02/M01/97/FD/wKioL1k2GTSyyxx6AAF_SilBRLQ902.jpg" target="_blank"></a>

(4)过一段时间后,可以来观察监控图效果出来了没有

二、添加对Linux主机的mysql的监控

说明:zabbix3.0 server已自带mysql的模板了,只需配置好agent客户端,然后在web端给主机增加模板就行了。

第一步:首先在客户端的mysql里添加权限,即本机使用zabbix账号连接本地的mysql(在zabbix_agent客户端上操作)

[root@mysql ~]# mysql -uroot -p123456

mysql&gt; grant all on *.* to zabbix@'localhost' identified by '123456';

Query OK, 0 rows affected, 1 warning (0.08 sec)

mysql&gt; flush privileges;

Query OK, 0 rows affected (0.00 sec)

mysql&gt; exit

Bye

<a href="https://s3.51cto.com/wyfs02/M02/98/44/wKiom1k5QESB6iHmAABhdf0wlT4078.png" target="_blank"></a>

第二步:在zabbix_agent服务目录下创建.my.cnf 连接文件(注意有个“.”)

说明:zabbix安装目录是/usr/local/zabbix

[root@mysql ~]# cd /usr/local/zabbix/etc/

[root@mysql etc]# vim .my.cnf

<a href="https://s5.51cto.com/wyfs02/M01/98/44/wKiom1k5Q3bC1JZyAAC09cbXsQM919.jpg" target="_blank"></a>

注意:

⑴如果在数据库grant授权时,针对的是localhost,这个.my.cnf里面就不用加host参数了【就如上面的配置】

⑵如果grant授权时针对的是本机的ip(如192.168.1.9),那么在.my.cnf文件里就要加上host参数进行指定了

即在.my.cnf文件就要加上:

host=192.168.1.9

socket=/usr/local/mysql/mysql.sock

user=zabbix

password=123456

第三步:配置mysql的key文件

说明:这个可以从zabbix3.2安装时的解压包里拷贝过来

从zabbix_server服务端安装时解压目录/usr/src/zabbix-3.2.3/conf/zabbix_agentd/userparameter_mysql.conf  拷贝到zabbix_agent客户端上的/usr/local/zabbix/etc/zabbix_agentd.conf.d/ 目录下。

[root@mysql ~]# cd /usr/local/zabbix/etc/zabbix_agentd.conf.d/

[root@mysql zabbix_agentd.conf.d]# cp /usr/src/zabbix-3.2.3/conf/zabbix_agentd/userparameter_mysql.conf  ./

[root@mysql zabbix_agentd.conf.d]# ls

userparameter_mysql.conf

第四步:查看 userparameter_mysql.conf 文件,看到类似HOME=/var/lib/zabbix 的路径设置,把路径全都替换为/usr/local/zabbix/etc/,也就是上面的.my.cnf文件所在的目录路径。

另外,注意userparameter_mysql.conf 文件里的mysql命令路径(提前做好mysql的系统环境变量,以防mysql命令不被系统识别)。

<a href="https://s3.51cto.com/wyfs02/M02/98/45/wKioL1k5R4bi9pn7AACSyxnr26w980.jpg" target="_blank"></a>

<a href="https://s3.51cto.com/wyfs02/M00/98/44/wKiom1k5R4eQYURWAAB5ILGo75U306.jpg" target="_blank"></a>

<a href="https://s4.51cto.com/wyfs02/M00/98/45/wKioL1k5R4jQ4E9ZAAE8xErG1iA712.jpg" target="_blank"></a>

<a href="https://s1.51cto.com/wyfs02/M01/98/44/wKiom1k5R4my0c2LAABwUUsd3UE579.jpg" target="_blank"></a>

第五步:重启zabbix_agent服务

[root@mysql ~]# systemctl stop zabbix_agentd

[root@mysql ~]# netstat -lnp |grep zabbix_agentd

[root@mysql ~]# systemctl start zabbix_agentd

tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      3295/zabbix_agentd

<a href="https://s4.51cto.com/wyfs02/M02/98/45/wKiom1k5SE3DjdWtAAAsRSsATPE582.png" target="_blank"></a>

第六步:接着在zabbix_server服务端进行命令行测试

[root@zabbix ~]# /usr/local/zabbix/bin/zabbix_get -s 192.168.100.120 -p 10050 -k "mysql.status[Uptime]"

sh: mysql: command not found

<a href="https://s3.51cto.com/wyfs02/M00/98/45/wKioL1k5STWjGoFNAAARujHBFg4991.png" target="_blank"></a>

以上命令有报错!说找不到mysql这个命令!

解决方法如下:

在userparameter_mysql.conf中关于mysql命令前面添加绝对路径(在zabbix_agent上操作)

[root@mysql ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/userparameter_mysql.conf

修改三个地方

重启服务(客户端)

tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      4403/zabbix_agentd

再次回到zabbix_server服务端进行命令行测试:

[root@zabbix ~]# /usr/local/zabbix/bin/zabbix_get -s 192.168.100.120 -p 10050 -k"mysql.status[Uptime]"

10158

<a href="https://s3.51cto.com/wyfs02/M01/98/47/wKiom1k5X5ORSCibAAAPfMv7yHA294.png" target="_blank"></a>

注明1:如果出现类似这一串key的数字,就说明配置ok,服务端能监控到客户端的mysql数据了!

成功了之后在监控界面增加主机对应的MySQL模板就ok了。

注明2:

zabbix_get命令介绍

参数说明:

-s--host:指定客户端主机名或者IP(被监控客户端)

-p--port:客户端端口,默认10050

-I--source-address:指定源IP,写上zabbix server的ip地址即可,一般留空,服务器如果有多ip的时候,你指定一个。

-k--key:你想获取的key

zabbix_get获取数据:

获取负载

[root@zabbix ~]# /usr/local/zabbix/bin/zabbix_get -s 192.168.100.120 -p 10050 -k"system.cpu.load[all,avg15]"

获取主机名

[root@zabbix ~]# /usr/local/zabbix/bin/zabbix_get -s 192.168.100.120 -p 10050 -k"system.hostname"

mysql

<a href="https://s1.51cto.com/wyfs02/M00/98/47/wKiom1k5YtCDOog4AAAPCbWTT24486.png" target="_blank"></a>

第七步:登录zabbix监控界面,在“配置”-“模板”里可以看到自带的mysql监控模板

<a href="https://s5.51cto.com/wyfs02/M00/98/47/wKiom1k5ZJ_CC2iWAANuJt3IaNw343.jpg" target="_blank"></a>

第八步:在相应主机监控配置里添加mysql的监控模版(zabbix自带的)即可:

选中:server-192.168.100.120这个主机!

<a href="https://s2.51cto.com/wyfs02/M02/98/48/wKiom1k5Z2qSwGBkAABrCGluxsI025.png" target="_blank"></a>

<a href="https://s5.51cto.com/wyfs02/M00/98/48/wKiom1k5aJCxe0wRAABRk92iczc072.png" target="_blank"></a>

<a href="https://s5.51cto.com/wyfs02/M02/98/48/wKioL1k5aOPyXt0fAABwpTtCG_k243.png" target="_blank"></a>

第九步:mysql监控项效果图

监控mysql的操作状态:在zabbix前端可以实时查看各种SQL语句每秒钟的操作次数。

<a href="https://s5.51cto.com/wyfs02/M00/98/48/wKiom1k5a0azDotnAAE6Oy-k6jI236.png" target="_blank"></a>

     本文转自品鉴初心51CTO博客,原文链接:http://blog.51cto.com/wutengfei/1933635,如需转载请自行联系原作者

继续阅读