Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务

本实验是在Zabbix分布式监控(2)——Zabbix的API接口实验基础上进行的,已经配置好了zabbix-server和zabbix-agent主机,并关闭了自动注册。

文章目录

    • 实验环境
    • 一、配置zabbix监控httpd服务
    • 二、配置Zabbix监控nginx

实验环境

主机名 ip 服务 版本
server1 172.25.1.1 zabbix-server,zabbix-web,mariadb-server rhel7.3
server2 172.25.1.2 zabbix-agent rhel7.3
server3 172.25.1.3 zabbix-agent rhel7.3

一、配置zabbix监控httpd服务

在server2上
步骤一:安装apache并开启服务

yum install -y httpd
systemctl start httpd
systemctl enable httpd

Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第1张图片
在这里插入图片描述
步骤二:在zabbix-web界面设置
配置 —>主机 —> server2 —> 模板 —>选择 —> Template App HTTP Service—> 添加 —>更新
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第2张图片
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第3张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第4张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第5张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第6张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第7张图片
可以看到server2主机的触发器多了一个httpd服务的触发器,是端口的触发器,zabbix是通过端口来检测httpd服务的。

步骤三:测试,模拟apache故障

systemctl stop httpd

在这里插入图片描述
步骤四:在web界面查看
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第8张图片

二、配置Zabbix监控nginx

步骤一:在监控主机server3上源码安装nginx服务,关闭 debug

yum install gcc pcre-devel zlib-devel -y
tar zxf nginx-1.17.8.tar.gz 
cd nginx-1.17.8
vim auto/cc/gcc
  # debug
  #CFLAGS="$CFLAGS -g"
./configure --prefix=/usr/local/nginx --with-http_stub_status_module
make && make install

Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第9张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第10张图片
在这里插入图片描述
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第11张图片
步骤二:修改nginx配置文件,添加监控模块

vim /usr/local/nginx/conf/nginx.conf

 47         location /status {
 48                 stub_status on;  #开启该模块
 49                 access_log off; #关闭日志记录
 50                 allow 127.0.0.1; #白名单 只允许本机访问
 51                 deny all;  
 52         }

在这里插入图片描述
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第12张图片
步骤三:设置软链接并开启nginx服务

ln -s /usr/local/nginx/sbin/nginx /usr/sbin/
nginx -t
nginx

在这里插入图片描述
步骤四:在server3本机测试nginx服务是否部署成功

Active connections 活跃的连接数
accepts 接收到的请求数(不一定回复)
handled 确定建立三次握手的请求数
requests 处理的请求数
curl 127.0.0.1/status

在这里插入图片描述
抓取处理的活跃的连接数

curl -s http://localhost/status | grep Active | awk '{print $3}'

在这里插入图片描述
步骤五:修改server3的配置文件/etc/zabbix/zabbix_agentd.d/userparameter_nginx.conf,创建nginx的监控项

cd /etc/zabbix/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}'
systemctl restart zabbix-agent

Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第13张图片
步骤六:在web界面给server3添加nginx监控
给 server3 配置监控项
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第14张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第15张图片
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第16张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第17张图片
这里要注意:键值一栏,填的内容需要和配置文件中 UserParameter 定义的 key 值相同,否则无效

新建图形并添加监控项:
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第18张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第19张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第20张图片Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第21张图片
能看到有图形,但是发现汉字无法显示,是字体原因,配置字体
在server1上

cd /usr/share/zabbix/fonts #字体存放路径
mv /root/simkai.ttf .    #网上下载字体simkai.ttf
vim /usr/share/zabbix/include/defines.inc.php  #修改配置使新字体生效
 ## 搜索 FONT 关键字,发现使用的是 graphfont.ttf 字体
:%s/graphfont/simkai/g   #替换为 simkai

Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第22张图片查看已经替换了:
在这里插入图片描述
刷新web页面,字体正常
Zabbix分布式监控(3)——Zabbix监控httpd服务和nginx服务_第23张图片

你可能感兴趣的:(Linux企业实战)