Zabbix分布式开源监控系统(六)——监控Httpd和Nginx

实验基于上一篇,已经监控了server2和server3.
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第1张图片
zabbix监控httpd服务

httpd是zabbix自带的监控模块

1、 在server2上安装apache,开启服务

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

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第2张图片

在这里插入图片描述

在web界面上进行设置,添加http监控模板:

配置 —>主机 —> server2 —> 模板 —>选择 —> Template App HTTP Service—> 添加 —>更新

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第3张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第4张图片

在这里插入图片描述

可以看到server2主机的触发器多了一个httpd服务的触发器,是端口的触发器,zabbix是通过端口来检测httpd服务的

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第5张图片

zabbix监控nginx

在监控主机server3上部署nginx服务,下载安装包并解压,安装依赖性软件编译安装,注释掉debug日志。

root@server3 ~]# yum install gcc pcre-devel zlib-devel -y
[root@server3 ~]# tar zxf nginx-1.17.4.tar.gz
[root@server3 ~]# cd nginx-1.17.4
[root@server3 nginx-1.17.4]# ./configure --help | grep stub
  --with-http_stub_status_module     enable ngx_http_stub_status_module
[root@server3 nginx-1.17.4]# vim auto/cc/gcc 
[root@server3 nginx-1.17.4]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module
[root@server3 nginx-1.17.4]# make && make install

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第6张图片
在这里插入图片描述

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第7张图片
在这里插入图片描述

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第8张图片
修改nginx配置文件,向nginx配置文件中添加用于检测nginx客户端状态的模块,以及开启nginx服务

[root@server3 nginx]# vim /usr/local/nginx/conf/nginx.conf
 48         location /status {
 49                 stub_status on;    #开启该模块
 50                 access_log off;    #关闭日志记录
 51                 allow 127.0.0.1;   #白名单 只允许本机访问
 52                 deny all;
 53         }
 

在这里插入图片描述
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第9张图片

注意:–with-http_stub_status_module是,nginx客户端连接状态模块
如果直接安装nginx,是不带这个模块的。

本机curl 127.0.0.1/status

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第10张图片
注释

Active connections: 1 				##活跃的连接数
server accepts handled requests
 1   1   1
#接收到的请求数(不一定回复)    #握手的次数       #处理的连接数请求数(通常和握手次数一样)         
Reading: 0 Writing: 1 Waiting: 0 
##正在读的   正在写的   没读没写的长链接

1.监控nginx.active

修改server3的配置文件/etc/zabbix/zabbix_agentd.d/userparameter_nginx.conf,创建nginx的监控项

[root@server3 ~]# cd /etc/zabbix/zabbix_agentd.d/
[root@server3 zabbix_agentd.d]# ls
userparameter_mysql.conf
[root@server3 zabbix_agentd.d]# cp userparameter_mysql.conf userparameter_nginx.conf    #将mysql服务的监控模版给nginx服务复制一份
[root@server3 zabbix_agentd.d]# vim userparameter_nginx.conf     #编辑配置文件
UserParameter=nginx.active,curl -s http://localhost/status | grep Active | awk '{print $3}'     #获取活跃连接数,nginx.active为健值,获得的连接数为value值
[root@server3 zabbix_agentd.d]# systemctl restart zabbix-agent   #修改完成重启服务。

==注意:
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第11张图片

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

在web界面,server3添加nginx的监控
【选择server3主机】——>【创建监控项】

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第12张图片

监控项名称可自定义,健值必须和server3配置文件中的一致

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第13张图片

在这里插入图片描述

创建图形,将已经添加的监控项导入

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第14张图片
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第15张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第16张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第17张图片

我们会发现有乱码情况。Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第18张图片

web界面字体的调整

[root@server1 ~]# cd /usr/share/zabbix/fonts/
[root@server1 fonts]# ls
graphfont.ttf simkai.ttf
[root@server1 fonts]# cd ..
[root@server1 zabbix]# cd include/
[root@server1 include]# vim defines.inc.php 
:%s/graphfont/simkai/g    #将graphfont替换为simkai

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第19张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第20张图片

此时,刷新web页面,就发现没有乱码了。

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第21张图片

zabbix_get 是 zabbix 服务端的一个命令,用于检测 agent 端的配置是否正确,可以很方便地知道 key 是否能正常获取到数据,在测试自定义监控的时候特别有用

在server1下载软件zabbix-get,来获取server3的活跃连接数

[root@server1 include]# yum install zabbix-get -y
[root@server1 include]# zabbix_get -s 172.25.2.3 -p 10050 -k "nginx.active"

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第22张图片

在这里插入图片描述

2.监控nginx.accept
编辑nginx的监控文件userparameter_nginx.conf,将要获取的健值对加入

[root@server3 zabbix_agentd.d]# vim userparameter_nginx.conf 
UserParameter=nginx.active,curl -s http://localhost/status | grep Active | awk '{print $3}'
UserParameter=nginx.accept, curl -s http://localhost/status | awk NR==3 |awk '{print $1}'
[root@server3 zabbix_agentd.d]# systemctl restart zabbix-agent

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第23张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第24张图片

在这里插入图片描述

创建监控项

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第25张图片

在这里插入图片描述
新建的监控项添加到原来的nginx_active的图形中,将三个监控项放在同一个坐标图形里面可以对比
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第26张图片
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第27张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第28张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第29张图片
3.监控nginx.request
在这里插入图片描述
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第30张图片

在这里插入图片描述

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第31张图片
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第32张图片

切换不同类型的图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第33张图片
Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第34张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第35张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第36张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第37张图片

Zabbix分布式开源监控系统(六)——监控Httpd和Nginx_第38张图片

你可能感兴趣的:(Zabbix)