Zabbix——通过Zabbix分布式监控平台添加服务监控选项(http,nginx,mysql)

一.添加http服务监控项

实验如下所示:

在server2上面:

[root@server2 zabbix]# yum install -y httpd
[root@server2 zabbix]# systemctl start httpd
[root@server2 zabbix]# systemctl enable httpd
[root@server2 zabbix]# systemctl status httpd

在这里插入图片描述

在这里插入图片描述

在浏览器添加http的监控项:http是zabbix自带的监控模板

  • 依次进行选择:配置->主机->server2->模板->链接指示器->Template App HTTP Service->添加->更新

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

二.添加nginx服务监控项

实验步骤如下所示:

在server3上面:

第一步:源码编译nginx

[root@foundation27 Desktop]# scp -r nginx-1.15.8.tar.gz  root@172.25.27.3:/mnt

在这里插入图片描述

[root@server3 mnt]# cd
[root@server3 ~]# cd /mnt
[root@server3 mnt]# ls
4.0  nginx-1.15.8.tar.gz
[root@server3 mnt]# tar zxf nginx-1.15.8.tar.gz 
[root@server3 mnt]# yum install -y gcc pcre-devel  zlib-devel

在这里插入图片描述

[root@server3 mnt]# cd nginx-1.15.8/
[root@server3 nginx-1.15.8]# ls
auto     CHANGES.ru  configure  html     man     src
CHANGES  conf        contrib    LICENSE  README
[root@server3 nginx-1.15.8]# cd auto/cc
[root@server3 cc]# ls
acc  bcc  ccc  clang  conf  gcc  icc  msvc  name  owc  sunc
[root@server3 cc]# vim gcc
将debug日志注销掉

在这里插入图片描述
在这里插入图片描述

[root@server3 cc]# cd ..
[root@server3 auto]# cd ..
[root@server3 nginx-1.15.8]# ./configure --prefix=/usr/local/nginx  --with-http_stub_status_module
[root@server3 nginx-1.15.8]# make && make install

在这里插入图片描述
在这里插入图片描述

[root@server3 nginx-1.15.8]# cd /usr/local/nginx/
[root@server3 nginx]# ls
conf  html  logs  sbin
[root@server3 nginx]# ln -s /usr/local/nginx/sbin/nginx /usr/sbin/

在这里插入图片描述

第二步:编辑nginx配置文件并启动服务

[root@server3 nginx]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@server3 nginx]# nginx
[root@server3 nginx]# cd conf/
[root@server3 conf]# vim nginx.conf
    location /status{
               stub_status  on;        #此模块主要用于查看nginx的一些状态信息
               access_log  off;         #关闭日志记录
               allow 127.0.0.1;             #只允许本机访问
               deny all;
}


[root@server3 conf]# nginx -t
[root@server3 conf]# nginx -s reload

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
第三步:监控连接数

通过访问http://127.0.0.1/status,会发现此时连接数等较小,此时需要再次访问本机即可依次增加连接数

在这里插入图片描述
注意:

  • (1)此处查看连接数时不可以输入127.25.66.3,即本机的ip

获取连接数,将连接数用命令提取出来

[root@server3 conf]# curl -s http://localhost/status  | grep Active | awk '{print $3}'

在这里插入图片描述

cd /etc/zabbix/
cd zabbix_agentd.d/
cp userparameter_mysql.conf userparameter_nginx.conf
vim userparameter_nginx.conf 
在里面写入:
UserParameter=nginx.active,curl -s http://localhost/status  | grep Active | awk '{print $3}'
#获取连接数(nginx.active为key值,获得的连接数为value值)
systemctl restart zabbix-agent

在这里插入图片描述

在这里插入图片描述

注意:复制过来这份文件原本里面的文件内容要删除
在这里插入图片描述

在这里插入图片描述

在server1中安装安装包(此安装包用于server端到agent端获取数据)**

[root@server1 4.0]# yum install -y zabbix-get-4.0.5-1.el7.x86_64.rpm      #查看server1是否可以成功获取server3的连接数
[root@server1 4.0]# zabbix_get -s 172.25.27.3  -p 10050 -k"nginx.active"

在这里插入图片描述
在这里插入图片描述
第四步:在浏览器中进行以下操作,实现可以通过监控查看连接数

点击配置->主机->server3

在这里插入图片描述

点击监控项->创建监控项

在这里插入图片描述
在监控项中填写名称,并填写正确的键值,之后点击添加

在这里插入图片描述
点击图形->创建图形

在这里插入图片描述

填写信息后,选择之前的建立的监控项

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

选择预览,会发现显示以下界面

在这里插入图片描述

我们在浏览器设置完毕后,发现监控了,但是监控项太少了,所以我们进行以下设置

第五步:nginx服务增加监控项

curl -s http://localhost/status |awk NR==3 | awk '{print $1}'
curl -s http://localhost/status |awk NR==3 | awk '{print $2}'
curl -s http://localhost/status |awk NR==3 | awk '{print $3}'

在这里插入图片描述

在server3编辑配置文件

vim userparameter_nginx.conf
在里面添加:
UserParameter=nginx.accept,curl -s http://localhost/status  | awk NR==3 | awk '{print $1}'
UserParameter=nginx.request,curl -s http://localhost/status  | awk NR==3 | awk '{print $3}'
systemctl restart zabbix-agent

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在sever1中获取server3中的数据

在这里插入图片描述

在浏览器中进行以下操作,实现可以通过监控查看请求数

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
我们为了让实验效果更明显,在物理机用ab命令进行压力测试

在这里插入图片描述

在去查看:

在这里插入图片描述

也可以修改修改图形类型观察效果

在这里插入图片描述

在这里插入图片描述

第六步:补充——修改字体
我们会发现此时在图中查看字体是乱码的,所以需要进行修改(字体没有是因为字符集的问题)

下载我们喜欢的字体到/usr/share/zabbix/fonts目录下

[root@foundation27 Desktop]# scp simkai.ttf root@172.25.27.1:/usr/share/zabbix/fonts

在这里插入图片描述

root@server1 fonts]# cd ../include/
[root@server1 include]# vim defines.inc.php 
65 define('ZBX_GRAPH_FONT_NAME',           'simkai'); 
110 define('ZBX_FONT_NAME', 'simkai');

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

然后在浏览器刷新,发现字体不再是乱码了

在这里插入图片描述

三.添加mysql服务监控

实现步骤如下所示:

server1:

第一步:在浏览器中添加mysql自带的监控模块,并启动mysql服务

点击配置->主机->zabbix server

在这里插入图片描述
点击模板->链接指示器中的选择->群组(选择Templates/Databases)->Template DB MYSQL

在这里插入图片描述

在这里插入图片描述

此时去部署数据库:

[root@server1 zabbix]# cd zabbix_agentd.d/
[root@server1 zabbix_agentd.d]# ls
userparameter_mysql.conf
[root@server1 zabbix_agentd.d]# ll userparameter_mysql.conf 
-rw-r--r-- 1 root root 1531 Feb 25 17:42 userparameter_mysql.conf
[root@server1 zabbix_agentd.d]# cat userparameter_mysql.conf 

在这里插入图片描述

[root@server1 zabbix_agentd.d]# ll -d /var/lib/zabbix
ls: cannot access /var/lib/zabbix: No such file or directory
[root@server1 zabbix_agentd.d]# mkdir /var/lib/zabbix
[root@server1 zabbix_agentd.d]# cd /var/lib/zabbix
[root@server1 zabbix]# ll /var/lib/mysql/mysql.sock 
srwxrwxrwx 1 mysql mysql 0 Aug  1 10:00 /var/lib/mysql/mysql.sock
[root@server1 zabbix]# vim .my.cnf

在这里插入图片描述

[root@server1 zabbix]# vim .my.cnf
[mysql]
user = zabbix
password = westos
socket = /var/lib/mysql/mysql.sock

[mysqladmin]
user = zabbix
password = westos
socket = /var/lib/mysql/mysql.sock
[root@server1 zabbix]# systemctl restart zabbix-agent

在这里插入图片描述
在这里插入图片描述

此时刷新,会看到zabbix server中的监控项变为102个,而且模板中也有Template DB MYSQL

在这里插入图片描述

第二步:访问数据库,使在页面中有数据显示
在这里插入图片描述在这里插入图片描述
在浏览器中查看

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述但是我们觉得mysql自带的模块监控项太少了,所以我们将通过添加模块增加监控项

第三步:增加mysql模块

向zabbix监控中导入模块监控mysql的模板percona(开源的mysql分析工具)

[root@foundation27 ~]# scp -r percona-zabbix-templates-1.1.8-1.noarch.rpm root@172.25.27.1:/mnt

在这里插入图片描述

[root@server1 ~]# cd /mnt
[root@server1 mnt]# ls
4.0           nginx-1.15.8.tar.gz
nginx-1.15.8  percona-zabbix-templates-1.1.8-1.noarch.rpm
[root@server1 mnt]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm

在这里插入图片描述

[root@server1 mnt]# cd /var/lib/zabbix/percona/templates
[root@server1 templates]# ls
userparameter_percona_mysql.conf
zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml
[root@server1 templates]# wc -l userparameter_percona_mysql.conf     
190 userparameter_percona_mysql.conf
[root@server1 templates]# cp userparameter_percona_mysql.conf  /etc/zabbix/zabbix_agentd.d/
[root@server1 templates]# cd /var/lib/zabbix/percona/scripts
[root@server1 scripts]# ls
get_mysql_stats_wrapper.sh  ss_get_mysql_stats.php
[root@server1 scripts]# vim ss_get_mysql_stats.php    #可以直接在这个里面修改mysql用户和密码 
[root@server1 scripts]# vim ss_get_mysql_stats.php.cnf   #也可以直接在这个里面修改mysql用户和密码,我就是在这个里面写入的
 [root@server1 scripts]# systemctl restart zabbix-agent.service

在这里插入图片描述

第一种:写入用户和密码(未采用)

在这里插入图片描述
在这里插入图片描述

第二种:写入用户和密码(我采用的)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

[root@server1 scripts]# /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg  #测试脚本是否可以正确执行,看是否可以取出值
[root@server1 scripts]# cd /tmp/
[root@server1 tmp]# ls
[root@server1 tmp]# rm -fr localhost-mysql_cacti_stats.txt    #删除

在这里插入图片描述

在这里插入图片描述
注意,这个文件删除是因为要服务自己生成

第四步:在浏览器中进行以下操作

点击配置->模板->选择链接的模板

在这里插入图片描述
将xml文件导入并选择聚合图形(不选聚合图形不会显示在同一个界面中,不方便)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 点击模板,将Templates/Databases取消链接,因为要导入新的mysql模块,所以一定要将旧的取消链接
  • 选择群组为Percona Templates中的Template Percona MySQL Server
  • 将模块添加成功后,会显示以下的结果,在最后点击更新

在这里插入图片描述
更新后的页面如下,此时查看监控项发现是293个,且模块中也有新添加的模块

在这里插入图片描述

点击Zabbix server后出现以下界面,发现此时有很多mysql模块

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值