Nginx 集群監(jiān)控系統(tǒng)——Nginx+Telegraf+Influxb+Grafana

搭建了Nginx集群后,需要繼續(xù)深入研究的就是日常Nginx監(jiān)控。
Nginx如何監(jiān)控?相信百度就可以找到:nginx-status
通過(guò)Nginx-status實(shí)時(shí)獲取到Nginx監(jiān)控?cái)?shù)據(jù)后,如何和現(xiàn)有監(jiān)控系統(tǒng)集成?一個(gè)很好的解決方案:Nginx+Telegraf+Influxdb+Grafana。
即通過(guò)Telegraf監(jiān)控插件定時(shí)收集Nginx的監(jiān)控狀態(tài),存儲(chǔ)到時(shí)序數(shù)據(jù)庫(kù)Influxdb中,然后通過(guò)Grafana展現(xiàn)即可。
Nginx啟用nginx-status功能
源碼編譯安裝的nginx,那么需要在編譯的時(shí)候加上對(duì)應(yīng)的模塊
./configure --with-http_stub_status_module
使用./configure --help能看到更多的模塊支持。然后編譯安裝即可。
如果是直接apt-get install安裝的 nginx,那么使用命令來(lái)查看是否支持stub_status這個(gè)模塊。
如下命令:nginx –V 看看是否有 --with-http_stub_status_module這個(gè)模塊。

修改Nginx配置文件:在Server章節(jié)中增加:
location /nginx-status {
allow 127.0.0.1; //允許的IP
deny all;
stub_status on;
access_log off;
}
Reload 重啟 Nginx,查看Nginx-Status。
輸出信息的說(shuō)明:
active connections – 活躍的連接數(shù)量
server accepts handled requests — 總共處理了11989個(gè)連接 , 成功創(chuàng)建11989次握手, 總共處理了11991個(gè)請(qǐng)求
reading — 讀取客戶端的連接數(shù).
writing — 響應(yīng)數(shù)據(jù)到客戶端的數(shù)量
waiting — 開(kāi)啟 keep-alive 的情況下,這個(gè)值等于 active – (reading+writing), 意思就是 Nginx 已經(jīng)處理完正在等候下一次請(qǐng)求指令的駐留連接.
Telegraf安裝配置Nginx監(jiān)控
關(guān)于Telegraf的安裝,請(qǐng)參考官方介紹:https://www.influxdata.com/time-series-platform/telegraf/
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連接
增加對(duì)Nginx的監(jiān)控
配置完成,重啟telegraf服務(wù)即可。
Grafana集成Nginx監(jiān)控
Grafana中支持Influxdb數(shù)據(jù)源,配置上上個(gè)步驟的Influxdb數(shù)據(jù)源之后,我們定制Nginx監(jiān)控圖表:
數(shù)據(jù)源:Influxdb FROM:nginx SELECT:field(accepts)
展現(xiàn)效果:

以上我們通過(guò)Nginx+Telegraf+Influxb+Grafana,實(shí)現(xiàn)了Nginx的監(jiān)控,非常方便。
鏈接:https://www.cnblogs.com/tianqing/p/7745436.html
(版權(quán)歸原作者所有,侵刪)

