使用Nginx+Telegraf+Influxb+Grafana构建高逼格Nginx集群监控系统!

平常生产环境搭建了Nginx集群后,就须要继续深刻研究的就是平常Nginx监控。html

Nginx如何监控?相信百度就能够找到:nginx-statusnginx

经过Nginx-status,实时获取到Nginx监控数据后,如何和现有监控系统集成?一个很好的解决方案:面试

Nginx+Telegraf+Influxdb+Grafanaredis

即经过Telegraf监控插件定时收集Nginx的监控状态,存储到时序数据库Influxdb中,而后经过Grafana展示便可。数据库

1、Nginx启用nginx-status功能微信

源码编译安装的nginx,那么须要在编译的时候加上对应的模块  架构

./configure --with-http_stub_status_module

使用 ./configure --help 能看到更多的模块支持。而后编译安装便可。运维

若是是直接 apt-get install 安装的 nginx,那么使用命令来查看是否支持 stub_status 这个模块。机器学习

以下命令: nginx –V 看看是否有 --with-http_stub_status_module 这个模块。学习

修改Nginx配置文件:在Server章节中增长:

location /nginx-status {
allow 127.0.0.1; //容许的IP
deny all;
stub_status on;
access_log off;
}

Reload 重启Nginx,查看Nginx-Status

输出信息的说明:

active connections – 活跃的链接数量
server accepts handled requests — 总共处理了11989个链接 , 成功建立11989次握手, 总共处理了11991个请求
reading — 读取客户端的链接数
writing — 响应数据到客户端的数量
waiting — 开启 keep-alive 的状况下,这个值等于 active – (reading+writing), 意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留链接.

2、Telegraf安装配置Nginx监控

关于Telegraf的安装,请参考官方介绍

https://www.influxdata.com/ti...

wget https://dl.influxdata.com/telegraf/releases/telegraf-1.4.3-1.x86_64.rpmsudo yum localinstall telegraf-1.4.3-1.x86_64.rpm

而后,在配置文件teldgraf.conf中配置Influxdb链接

增长对Nginx的监控

配置完成,重启telegraf服务便可。

3、Grafana集成Nginx监控

Grafana中支持Influxdb数据源,配置上上个步骤的Influxdb数据源以后,咱们定制Nginx监控图表:

数据源:Influxdb

FROM:nginx

SELECT:field(accepts)

展示效果:

以上咱们经过Nginx+Telegraf+Influxb+Grafana,实现了Nginx的监控,很是方便。

大家在平常实际生产环境对Nginx的状态监控使用的是何种技术?

欢迎留言分享你的经验。

做者:周国庆
原文: https://www.cnblogs.com/tianq...

最新整理的 2TB 技术干货:包括架构师实战教程、大数据、Docker容器、系统运维、数据库、redis、MogoDB、电子书、Java基础课程、Java实战项目、ELK Stack、机器学习、BAT面试精讲视频等。只需在「 民工哥技术之路」微信公众号对话框回复关键字:1024便可获取所有资料。

相关文章
相关标签/搜索