搭建了Nginx集群后,需要继续深入研究的就是日常Nginx监控。
Nginx如何监控?相信百度就可以找到:nginx-status
通过Nginx-status
实时获取到Nginx监控数据后,如何和现有监控系统集成?一个很好的解决方案:Nginx Telegraf Influxdb Grafana
。
即通过Telegraf监控插件定时收集Nginx的监控状态,存储到时序数据库Influxdb中,然后通过Grafana展现即可。
Nginx启用nginx-status功能
源码编译安装的nginx,那么需要在编译的时候加上对应的模块
代码语言:javascript复制./configure --with-http_stub_status_module
使用./configure --help
能看到更多的模块支持。然后编译安装即可。
如果是直接apt-get install
安装的 nginx,那么使用命令来查看是否支持stub_status
这个模块。
如下命令:nginx –V
看看是否有 --with-http_stub_status_module
这个模块。
修改Nginx配置文件:在Server章节中增加:
代码语言:javascript复制location /nginx-status {
allow 127.0.0.1; //允许的IP
deny all;
stub_status on;
access_log off;
}
Reload 重启 Nginx,查看Nginx-Status
。
输出信息的说明:
代码语言:javascript复制active connections – 活跃的连接数量
server accepts handled requests — 总共处理了11989个连接 , 成功创建11989次握手, 总共处理了11991个请求
reading — 读取客户端的连接数.
writing — 响应数据到客户端的数量
waiting — 开启 keep-alive 的情况下,这个值等于 active – (reading writing), 意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留连接.
Telegraf安装配置Nginx监控
关于Telegraf的安装,请参考官方介绍:https://www.influxdata.com/time-series-platform/telegraf/
代码语言:javascript复制wget https://dl.influxdata.com/telegraf/releases/telegraf-1.4.3-1.x86_64.rpm
sudo yum localinstall telegraf-1.4.3-1.x86_64.rpm
然后,在配置文件teldgraf.conf
中配置Influxdb
连接
增加对Nginx的监控
配置完成,重启telegraf服务即可。
Grafana集成Nginx监控
Grafana中支持Influxdb
数据源,配置上上个步骤的Influxdb数据源之后,我们定制Nginx监控图表:
- 数据源:Influxdb
- FROM:nginx
- SELECT:field(accepts)
展现效果:
以上我们通过Nginx Telegraf Influxb Grafana,实现了Nginx的监控,非常方便。
来源:cnblogs.com/tianqing/p/7745436.html