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

相关推荐
Sayai6 分钟前
Elasticsearch 日志写入链路调优实战:ingest pipeline 补时间戳、时区偏移修复与按值类型路由(附 translog 实测)
大数据·运维·elasticsearch·搜索引擎·性能优化
chde2Wang23 分钟前
Hadoop集群无datanode进程
linux·运维·服务器
叼烟扛炮35 分钟前
Linux 学习笔记(十八):进程控制——优雅地退出与等待
linux·运维·服务器
时间售卖铺41 分钟前
MySQL DML 与 DQL 语句详解
运维·数据库·mysql·云原生
吴声子夜歌2 小时前
Docker入门与实战——常见问题总结
运维·docker·容器
是jin奥2 小时前
最新 FFmpeg 安装脚本:Linux x86_64
linux·运维·ffmpeg
全栈技术负责人2 小时前
AI 自动化单元测试技术方案
运维·单元测试·自动化
Shadow(⊙o⊙)2 小时前
仿muduo实现高并发服务器——EventLoop.hpp初步设计(未纳入超时管理模块)
运维·服务器
nlp研究牲2 小时前
Linux 常用命令速查手册:英文全称、中文释义、巧记方法与实战示例
linux·运维·php
众壹新能源科技3 小时前
逆变器半夜停机等备件48小时少发10万度电,备件安全库存怎么算
大数据·运维·安全