linux服务器监控zabbix,Linux监控之--使用ZABBIX监控web服务器
使用ZABBIX監(jiān)控web
服務(wù)器
實(shí)驗拓?fù)鋱D:
實(shí)驗思路:
nginx添加狀態(tài)統(tǒng)計模塊,編寫nginx對應(yīng)的狀態(tài)統(tǒng)計腳本。
zabbix-server
導(dǎo)入nginx模板,并對主機(jī)實(shí)現(xiàn)監(jiān)控。
實(shí)驗環(huán)境
角色
IP地址
操作系統(tǒng)版本
軟件包
Zabbix_server
192.168.0.158/24
Centos
6.5_X86_64
Zabbix3.0.4
Zabbix_agentd(nginx)
192.168.0.125/24
Centos
6.5_X86_64
Zabbix3.0.4
nginx1.11
實(shí)驗效果:
實(shí)驗步驟如下
一.安裝部署zabbix_server
(參考lamp+zabbix3.0.4 腳本一鍵安裝即可)
二.zabbix-agentd端的配置
1.創(chuàng)建運(yùn)行賬號
[root@centos6 ~]# useradd zabbix -s
/sbin/nologin
2.安裝依賴
[root@centos6 ~]# yum -y install gcc curl
上傳軟件包
3.編譯安裝agent
[root@centos6 ~]# tar zxf zabbix-3.0.4.tar.gz -C
/usr/src/
[root@centos6 ~]# cd
/usr/src/zabbix-3.0.4/
[root@centos6
zabbix-3.0.4]# ./configure --prefix=/usr/local/zabbix
--enable-agent
[root@centos6
zabbix-3.0.4]# make -j 4
[root@centos6
zabbix-3.0.4]# make install
4.配置客戶端
[root@centos6 ~]# vim
/usr/local/zabbix/etc/zabbix_agentd.conf
Server=192.168.0.158 #被動模式,允許哪臺zabbix服務(wù)器連接,如有DNS解析可填主機(jī)名
ServerActive=192.168.0.158 #主動模式,允許向哪臺zabbix服務(wù)器上報,如有DNS解析可填主機(jī)名
Hostname=192.168.0.125 #客戶端本機(jī)IP,如有DNS解析可填主機(jī)名
UnsafeUserParameters=1 #允許用戶自定義參數(shù)
EnableRemoteCommands=1 #允許執(zhí)行遠(yuǎn)程命令
5.創(chuàng)建init服務(wù)
[root@centos6
~]#
cp
/usr/src/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_agentd
/etc/init.d/
[root@centos6 ~]# ll
/etc/init.d/zabbix_agentd
-rwxr-xr-x.
1 root root 2170 Oct 7 22:10
/etc/init.d/zabbix_agentd
[root@centos6 ~]#
chkconfig zabbix_agentd on
[root@centos6 ~]# service
zabbix_agentd start
Starting
zabbix_agentd: /etc/init.d/functions: line 546:
/usr/local/sbin/zabbix_agentd: No such file or
directory
[FAILED]
[root@centos6 ~]# vim
/etc/init.d/zabbix_agentd
[root@centos6 ~]# service
zabbix_agentd start
關(guān)閉selinux
和iptables
如果遇到?jīng)]有數(shù)據(jù)的問題可能是mysql數(shù)據(jù)庫的問題
可以嘗試重新啟動服務(wù)
三.客戶端安裝nginx服務(wù)器
在zabbix
agentd客戶端上,查看nginx是否加載了--with-http_stub_status_module。因為zabbix監(jiān)控nginx是根據(jù)nginx的Stub
Status模塊,抓取Status模塊所提供的數(shù)據(jù)。假如以前沒開啟,現(xiàn)在想啟用StubStatus 模塊,在編譯nginx
的時候要加上參數(shù) --with-http_stub_status_module,執(zhí)行./configure &&
make就可以了,不用make install。不過,一般情況下都是安裝了的。
[root@centos6 ~]# yum -y
install pcre-devel zlib-devel lrzsz
[root@centos6 ~]# useradd
-s /sbin/nologin nginx -M
[root@centos6 ~]# tail -1
/etc/passwd
[root@centos6 ~]# tar zxf
nginx-1.11.2.tar.gz -C /usr/src/
[root@centos6 ~]# cd
/usr/src/nginx-1.11.2/
[root@centos6
nginx-1.11.2]# ./configure --prefix=/usr/local/nginx --user=nginx
--group=nginx --with-http_stub_status_module
--with-http_ssl_module
[root@centos6
nginx-1.11.2]# make -j 4 && make
install
nginx服務(wù)器的配置
[root@centos6 ~]# ln -s
/usr/local/nginx/sbin/nginx /usr/sbin/
[root@centos6 ~]# nginx
-t
nginx: the
configuration file /usr/local/nginx/conf/nginx.conf syntax is
ok
nginx:
configuration file /usr/local/nginx/conf/nginx.conf test is
successful
[root@centos6 ~]#
nginx
配置nginx狀態(tài)統(tǒng)計功能
在nginx的配置文件中,添加status配置。
location/nginx-status
{
stub_status on;
access_log?off;
}
[root@centos6 ~]# nginx
-t
[root@centos6 ~]# nginx
-s reload
驗證
參數(shù)解釋:
Activeconnections:對后端發(fā)起的活動連接數(shù);
server
accepts 4:nginx 總共處理了4個連接;
handled:成功創(chuàng)建了4次握手;
requests:總共處理了4請求。
Reading:nginx讀取客戶端的header數(shù);
Writing:
nginx 返回給客戶端的header數(shù);
Waiting:
nginx 請求處理完成,正在等待下一請求指令的連接。
在agentd上編寫監(jiān)控nginx的腳本(參考nginx.txt文檔)
并且設(shè)置屬主和屬組為zabbix,賦予執(zhí)行權(quán)限。
[root@centos6 ~]# mkdir
-p /data/log/zabbix/
[root@centos6 ~]# touch
/data/log/zabbix/webstatus.log
[root@centos6 ~]# vim
/usr/local/zabbix/nginx-status.sh
[root@centos6 ~]# chmod
o+x /usr/local/zabbix/nginx-status.sh
[root@centos6 ~]# chown
zabbix:zabbix /usr/local/zabbix/nginx-status.sh
修改nginx服務(wù)器上zabbix客戶端的zabbix_agentd.conf配置文件,然后重啟zabbix
agentd客戶端
[root@centos6
~]# vim
/usr/local/zabbix/etc/zabbix_agentd.conf
添加以下內(nèi)容
UserParameter=nginx.accepts,/usr/local/zabbix/nginx_status.sh
accepts
UserParameter=nginx.handled,/usr/local/zabbix/nginx_status.sh
handled
UserParameter=nginx.requests,/usr/local/zabbix/nginx_status.sh
requests
UserParameter=nginx.connections.active,/usr/local/zabbix/nginx_status.sh
active
UserParameter=nginx.connections.reading,/usr/local/zabbix/nginx_status.sh
reading
UserParameter=nginx.connections.writing,/usr/local/zabbix/nginx_status.sh
writing
UserParameter=nginx.connections.waiting,/usr/local/zabbix/nginx_status.sh
waiting
[root@centos6 ~]# service
zabbix_agentd restart
在zabbix
server 端進(jìn)行zabbix_get測試,取到數(shù)據(jù)了,說明沒問題。
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k
"nginx.connections.active"
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k
"nginx.connections.waiting"
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k
"nginx.connections.writing"
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k "nginx.accepts"
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k "nginx.requests"
使用瀏覽器訪問zabbix
導(dǎo)入模版(我的是xml文件)
(參考nginx-status.xml)
步驟:
configurationàTemplates
選擇導(dǎo)入模版
上傳nginx-status.xml文件(文件中的IP地址是這個環(huán)境中的沒錯,若切換IP則必須修改)
并導(dǎo)入
導(dǎo)入成功
選擇模版
選擇nginxstatus模版
添加關(guān)聯(lián)主機(jī) nginx
只是我的主機(jī)名
MonitoringàLatest data à選擇nginx主機(jī)—》filter過濾
查看監(jiān)控項的圖形
以上就是關(guān)于監(jiān)控nginx的實(shí)驗
完成
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的linux服务器监控zabbix,Linux监控之--使用ZABBIX监控web服务器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在linux下安装python3_【转】
- 下一篇: 2020科目一考试口诀_二级建造师考试科