2021-01-02

监控nginx
首先在受控端上安装nginx这个就不说了吧
直接跳转关键部分~
1 安装完nginx之后在nginx主配置文件里的server下写入

location /nginx_status {
           stub_status on;
           access_log off;
           allow 192.168.1.0/24;

保存并退出,然后重载nginx服务,然后去访问
在这里插入图片描述
在/etc/zabbix/zabbix.agend.d/下写nginx脚本格式为shell脚本

#!/bin/bash
HOST="本机的IP"
PORT="80"

    function ping {
        /sbin/pidof nginx | wc -l
    }

    function active {
        /usr/bin/curl "http://$HOST:$PORT/nginx_status/" 2>/dev/null| grep 'Active' | awk '{print $NF}'
    }
    function reading {
        /usr/bin/curl "http://$HOST:$PORT/nginx_status/" 2>/dev/null| grep 'Reading' | awk '{print $2}'
    }
    function writing {
        /usr/bin/curl "http://$HOST:$PORT/nginx_status/" 2>/dev/null| grep 'Writing' | awk '{print $4}'
    }
    function waiting {
        /usr/bin/curl "http://$HOST:$PORT/nginx_status/" 2>/dev/null| grep 'Waiting' | awk '{print $6}'
    }
    function accepts {
        /usr/bin/curl "http://$HOST:$PORT/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $1}'
    }
    function handled {
        /usr/bin/curl "http://$HOST:$PORT/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $2}'
    }
	function requests {
        /usr/bin/curl "http://$HOST:$PORT/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $3}'
    }
    $1

保存退出之后给这个脚本执行权限,并重启服务

然后在受控端上吧zabbix主配置文件里的UnsafeUserParameters=1 改为1
在这里插入图片描述
改完之后保存退出
在/etc/zabbix/zabbix.agend.d/下创建一个主配置文件
名字随便起,但后缀为conf

UserParameter=nginx.status[*],/etc/zabbix/zabbix_agentd.d/nginx_status.sh $1

写完之后保存退出

 zabbix_get -s IP -p 10050 -k nginx.status[accepts]

这个命令在主控制端上测试你在受控端上写的脚本
如果返回值为1或者其他数字就是成功了
(zabbix_get这个默认是没有装的,装的时候为zabbix-get)
完成之后,去zabbix模板创建监控项就可以了

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值