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监控多得多

相关推荐
lpruoyu1 小时前
【Docker进阶-06】docker-compose & docker swarm
运维·docker·容器
China_Yanhy1 小时前
入职 Web3 运维日记 · 第 8 日:黑暗森林 —— 对抗 MEV 机器人的“三明治攻击”
运维·机器人·web3
艾莉丝努力练剑1 小时前
hixl vs NCCL:昇腾生态通信库的独特优势分析
运维·c++·人工智能·cann
酉鬼女又兒2 小时前
每天一个Linux命令_printf
linux·运维·服务器
虾说羊2 小时前
docker容器化部署项目流程
运维·docker·容器
Trouvaille ~2 小时前
TCP Socket编程实战(三):线程池优化与TCP编程最佳实践
linux·运维·服务器·网络·c++·网络协议·tcp/ip
大大大反派2 小时前
CANN 生态中的自动化部署引擎:深入 `mindx-sdk` 项目构建端到端 AI 应用
运维·人工智能·自动化
WHD3062 小时前
苏州勒索病毒加密 服务器数据解密恢复
运维·服务器
蜡笔小炘3 小时前
LVS -- 持久链接(Persistent Connection)实现会话粘滞
运维·服务器
JoySSLLian3 小时前
手把手教你安装免费SSL证书(附宝塔/Nginx/Apache配置教程)
网络·人工智能·网络协议·tcp/ip·nginx·apache·ssl