Zabbix——监控Nginx

背景

在项目中使用Nginx之后,有时候我们需要知道Nginx具体的工作情况,这时候就需要使用zabbix进行Nginx的相关监控

这边我们有两种方法

  1. 使用普通的http请求的方式获取基本信息
  2. 如果使用了Nginx Plus,就可以通过Nginx Plus的接口获取更多的信息

普通方式

参考链接: https://www.zabbix.com/integrations/nginx#nginx_agent

确认nginx是否开启with-http_stub_status_module模块

nginx -V 2>&1 | grep -o with-http_stub_status_module

如果出现with-http_stub_status_module,说明已经开启了该module,即可进行下一步

配置nginx

在80端口对应的配置项里加入如下配置

        location = /basic_status {
                stub_status;
                allow 127.0.0.1;
                allow ::1;
                deny all;
        }

修改宏变量(可选)

默认情况下,不需要修改任何宏变量,因为他就是指向了localhost/basic_status

不过如果修改了端口或者location的话,需要修改对应的配置

Nginx Plus方式

这个方式比较厉害,能看到的东西非常多,但是有个巨大的问题,就是这不是免费的!

如果没有用这个的话,建议可以直接放弃

参考链接: https://www.zabbix.com/integrations/nginx#nginx_plus_http

配置/重启nginx

添加如下配置

保存并重启nginx

restart/reload nginx之后,我们可以尝试访问如下页面,可以看到是有数据传输的

http://<IP>:8080/dashboard.html#upstreams

绑定template

这一步非常简单,就把这个template绑定到对应的host上去即可

修改宏变量

我们需要把template中的这个宏改成如下格式

`<scheme>://<host>:<port>/<location>/`.

刷新即可

能看到已经自动添加了很多很多的监控项了,基本上每一个stream,每一个zone都有对应的监控,功能比单纯的status监控多得多

相关推荐
m0_748238783 小时前
Nginx 负载均衡详解
运维·nginx·负载均衡
EasyNVR3 小时前
EasyRTC:全平台支持与自研算法驱动的智能音视频通讯解决方案
运维·服务器·小程序·音视频·webrtc·p2p·智能硬件
柳鲲鹏4 小时前
Ubuntu编译ZLMediaKit
linux·运维·ubuntu
m0_748254095 小时前
Nginx WebSocket 长连接及数据容量配置
运维·websocket·nginx
安科瑞刘鸿鹏6 小时前
数据中心储能蓄电池状态监测管理系统 组成架构介绍
运维·服务器·数据库·物联网·能源
warton887 小时前
centos下使用pyenv管理python版本
linux·运维·python·centos
没事儿写两篇7 小时前
CentOS - 服务器装机可用的基本操作
运维·服务器
服务端相声演员7 小时前
CentOS环境变量配置+解析
linux·运维·centos
豆是浪个7 小时前
Linux(Centos 7.6)命令详解:less
linux·运维·服务器
网硕互联的小客服7 小时前
如何在在 CentOS 中配置 rsync 实现高效文件同步
linux·运维·服务器·安全·centos