精品专区-精品自拍9-精品自拍三级乱伦-精品自拍视频-精品自拍视频曝光-精品自拍小视频

網站建設資訊

NEWS

網站建設資訊

Zabbix監控Tomcat及Nginx-創新互聯

注:本篇博文是基于部署zabbix監控服務器的環境進行的。這里將開啟一臺client服務器(被監控端)用于測試。

成都創新互聯公司服務項目包括威遠網站建設、威遠網站制作、威遠網頁制作以及威遠網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,威遠網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到威遠省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!

博文大綱:
一、監控Tomcat
二、監控Nginx服務器

一、監控Tomcat

監控Tomcat需要用到zabbix_java_gateway這個組件(在zabbix2.0引入的功能),顧名思義就是:Java網關,類似于agentd,但是只用于Java方面。需要注意的是,它只能主動去獲取數據,而不能被動獲取數據。它的數據最終會提交到server端或proxy。

如果需要開啟監控Tomcat功能,在編譯zabbix server端時,需要添加--enable_java 參數。

1、Zabbix Server安裝zabbix_java_gateway程序

zabbix_java_gateway程序既可以安裝在zabbix server端,也可以安裝在被監控端,不過一般都是安裝在Zabbix server端,這里我就安裝在Zabbix Server端。

注:文中所有用到的源碼包都可以從我的網盤鏈接中下載

#執行下面命令前,請先下載我網盤鏈接中的對應rpm包
[root@zabbix ~]# rpm -ivh zabbix-java-gateway-3.2.1-1.el7.x86_64.rpm
#修改java_gateway配置文件
[root@zabbix ~]# cd /etc/zabbix/
[root@zabbix zabbix]# sed -i 's/# LISTEN_IP="0.0.0.0"/LISTEN_IP="0.0.0.0"/g' zabbix_java_gateway.conf 
[root@zabbix zabbix]# sed -i 's/# LISTEN_PORT=10052/LISTEN_PORT=10052/g' zabbix_java_gateway.conf 
[root@zabbix zabbix]# egrep -v '^$|^#' zabbix_java_gateway.conf 
#確定修改后的配置文件
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10052
PID_FILE="/var/run/zabbix/zabbix_java.pid"
TIMEOUT=3
#啟動java-gateway
[root@zabbix zabbix]# systemctl start zabbix-java-gateway.service 
#確定端口在監聽
[root@zabbix zabbix]# netstat -anpt | grep 10052
tcp6       0      0 :::10052                :::*                    LISTEN      3112/java           
#修改Zabbix-Server的配置文件
[root@zabbix zabbix]# cd /usr/local/zabbix/etc/
[root@zabbix etc]# sed -i 's/# JavaGateway=/JavaGateway=192.168.20.2/g' zabbix_server.conf
[root@zabbix etc]# sed -i 's/# JavaGatewayPort=10052/JavaGatewayPort=10052/g' zabbix_server.conf
[root@zabbix etc]# sed -i 's/# StartJavaPollers=0/StartJavaPollers=5/g' zabbix_server.conf
[root@zabbix etc]# /etc/init.d/zabbix_server restart    #重啟zabbix server

2、測試端配置Tomcat

啟動一臺IP為192.168.20.3的服務器作為Tomcat服務器,用于測試。

#安裝Tomcat
[root@tomcat ~]# rpm -qa | grep jdk       #查詢系統默認的JAVA包
java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
copy-jdk-configs-1.2-1.el7.noarch
java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64
[root@tomcat ~]# rpm -e java-1.8.0-openjdk-headless --nodeps        #卸載Java1.8
[root@tomcat ~]# rpm -e java-1.7.0-openjdk-headless --nodeps        #卸載Java1.7
[root@tomcat ~]# cd /usr/src
[root@tomcat src]# rz      #上傳我提供的兩個源碼包
[root@tomcat src]# ls         #源碼包如下
apache-tomcat-8.5.35.tar.gz  jdk-8u211-linux-x64.tar.gz
[root@tomcat ~]# tar zxf jdk-8u211-linux-x64.tar.gz -C /usr/local/   #解壓JDK到指定路徑
[root@tomcat src]# tar zxf apache-tomcat-8.5.35.tar.gz   #解壓Tomcat源碼包
[root@tomcat src]# mv apache-tomcat-8.5.35 /usr/local/tomcat   #將解壓后的目錄移動到指定目錄并命名為tomcat
[root@tomcat ~]# vim /etc/profile         #編輯環境變量,在配置文件末尾添加以下內容
export JAVA_HOME=/usr/local/jdk1.8.0_211
export JRE_HOME=/usr/local/jdk1.8.0_211/jre
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
[root@tomcat ~]# . /etc/profile       #重新加載環境變量
[root@tomcat ~]# java -version       #查看java版本
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
#開啟Tomcat的JMX遠程管理功能
[root@tomcat src]# vim /usr/local/tomcat/bin/catalina.sh
export JDK_JAVA_OPTIONS    #跳轉到306行,也就是該行,下面寫入以下內容
CATALINA_OPTS=" $CATALINA_OPTS  -Dcom.sun.management.jmxremote  -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.20.3  -Dcom.sun.management.jmxremote.authenticate=false"
#注:上面的IP為Tomcat本機的IP,端口“8888”可以自定義,不要沖突即可
[root@tomcat src]# /usr/local/tomcat/bin/startup.sh   #啟動Tomcat
#確定相關端口在監聽
[root@tomcat src]# netstat -anpt | grep 8080
tcp6       0      0 :::8080                 :::*                    LISTEN      3871/java           
[root@tomcat src]# netstat -anpt | grep 8888
tcp6       0      0 :::8888                 :::*                    LISTEN      3871/java

3、回到Zabbix-server進行JMX連接測試

注:該測試需要系統支持圖形化桌面,若沒有圖形化桌面,此驗證過程可以省略。

[root@zabbix ~]# jconsole    #執行此命令,此命令是Java-gateway提供的。

執行上面的命令后,會彈出下面提示框(輸入Tomcat的IP+JMX監聽端口,進行連接):

Zabbix監控Tomcat及Nginx

確保可以看到以下畫面即可:

Zabbix監控Tomcat及Nginx

4、登錄到Zabbix Server的web界面進行配置

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

稍等片刻,顯示如下即可:

Zabbix監控Tomcat及Nginx

可以進行以下操作,看到JVM虛擬機相關的信息:

Zabbix監控Tomcat及Nginx

二、監控Nginx服務器

自行安裝部署Nginx,這里我還將Nginx配置在Tomcat這臺主機上。部署Nginx可參考博文:搭建Nginx服務器及深度優化

1、在Nginx服務器上部署agent客戶端

#安裝zabbix-agent
[root@tomcat src]# tar zxf zabbix-3.2.1.tar.gz 
[root@tomcat src]# cd zabbix-3.2.1/
[root@tomcat zabbix-3.2.1]# ./configure --prefix=/usr/local/zabbix --enable-agent && make && make install
[root@tomcat zabbix-3.2.1]# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
[root@tomcat zabbix-3.2.1]# chmod +x /etc/init.d/zabbix_agentd 
#修改啟動腳本
[root@tomcat zabbix-3.2.1]# sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g' /etc/init.d/zabbix_agentd 
[root@tomcat zabbix-3.2.1]# sed -i 's/PIDFILE=\/tmp\/$BINARY_NAME.pid/PIDFILE=$BASEDIR\/logs\/$BINARY_NAME.pid/g' /etc/init.d/zabbix_agentd
[root@tomcat zabbix-3.2.1]# useradd -M -s /sbin/nologin zabbix
[root@tomcat ~]# mkdir -p /usr/local/zabbix/logs/
[root@tomcat ~]# chown -R zabbix:zabbix /usr/local/zabbix
[root@tomcat zabbix-3.2.1]# chkconfig --add zabbix_agentd
[root@tomcat zabbix-3.2.1]# chkconfig zabbix_agentd on
[root@tomcat zabbix-3.2.1]# systemctl start zabbix_agentd
[root@tomcat zabbix-3.2.1]# netstat -anpt | grep zabbix
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      97364/zabbix_agentd 
#修改agent配置文件
[root@tomcat zabbix-3.2.1]# cd /usr/local/zabbix/etc/
[root@tomcat etc]# sed -i 's/# PidFile=\/tmp\/zabbix_agentd.pid/PidFile=\/usr\/local\/zabbix\/logs\/zabbix_agentd.pid/g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/LogFile=\/tmp\/zabbix_agentd.log/LogFile=\/usr\/local\/zabbix\/logs\/zabbix_agentd.log/g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/Server=127.0.0.1/Server=192.168.20.2/g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/# ListenPort=10050/ListenPort=10050/g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/# ListenIP=0.0.0.0/ListenIP=0.0.0.0/g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/ServerActive=127.0.0.1/ServerActive=192.168.20.2/g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/Hostname=Zabbix server/Hostname=192.168.20.3/g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/# Timeout=3/Timeout=15/g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/# Include=\/usr\/local\/etc\/zabbix_agentd.conf.d\//Include=\/usr\/local\/zabbix\/etc\/zabbix_agentd.conf.d\//g' zabbix_agentd.conf
[root@tomcat etc]# sed -i 's/# UnsafeUserParameters=0/UnsafeUserParameters=1/g' zabbix_agentd.conf
[root@tomcat etc]# echo 'UserParameter=nginx.info[*],/usr/local/zabbix/scripts/nginx.sh  $1' >> zabbix_agentd.conf
[root@tomcat etc]# echo "UserParameter=nginx.ping[*],netstat -anput | grep -w 80 | grep -w LISTEN | wc -l" >> zabbix_agentd.conf
[root@tomcat etc]# egrep -v '^$|^#' zabbix_agentd.conf   #確定配置無誤
PidFile=/usr/local/zabbix/logs/zabbix_agentd.pid
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Server=192.168.20.2
ListenPort=10050
ListenIP=0.0.0.0
ServerActive=192.168.20.2
Hostname=192.168.20.3
Timeout=15
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
UnsafeUserParameters=1
UserParameter=nginx.info[*],/usr/local/zabbix/scripts/nginx.sh  $1
UserParameter=nginx.ping[*],netstat -anput | grep -w 80 | grep -w LISTEN | wc -l

2、在Nginx服務器上編寫Nginx腳本

注:此腳本可在我文章開頭的下載鏈接中獲得。

[root@tomcat etc]# mkdir /usr/local/zabbix/scripts/
[root@tomcat etc]# cd /usr/local/zabbix/scripts/
[root@tomcat scripts]# cat nginx.sh     #腳本如下,所有IP均為Nginx的IP

#!/bin/bash
case $1 in
index)
    RS=`curl -s -I 192.168.20.3/index.html |head -n1 |awk '{print $2}'`
    echo $RS
    ;;

WorkerProcesses)
    RS=`ps aux |grep nginx | grep -w worker |wc -l`
    echo $RS
    ;;

bps)
    RS=`ab -q -n 1000 -c 1000 http://192.168.20.3/index.html |grep Request | awk '{print $4}'`
    echo $RS
    ;;

Current)
    LINES=`cat /usr/local/nginx/logs/access.log |wc -l`
    sleep 1
    NOW_LINES=`cat /usr/local/nginx/logs/access.log |wc -l`
    echo $NOW_LINES $LINES | awk '{print $1 -$2}'
;;
IP)
    RS=`cat /usr/local/nginx/logs/access.log | awk '{print $1}' |sort -u | wc -l`
    echo $RS
    ;;

VirtualHost)
    RS=`cat /usr/local/nginx/conf/nginx.conf |grep -v '#' | grep server_name | wc -l`
    echo $RS
    ;;

MD5)
    RS=`md5sum /usr/local/nginx/conf/nginx.conf |awk '{print $1}'`
    echo $RS
    ;;

PV)
    RS=`wc -l /usr/local/nginx/logs/access.log | awk '{print $1}'`
    echo $RS
    ;;
esac
[root@tomcat scripts]#  /etc/init.d/zabbix_agentd restart   #重啟agent
#調整相應權限,需要所有用戶都可以執行netstat命令
[root@tomcat scripts]# chmod +s /usr/bin/netstat
[root@tomcat scripts]# chmod  +x  nginx.sh

3、配置Zabbix-Server Web界面

1、在配置web界面前,可現在Zabbix-Server端測試一下相關信息是否可以獲得,以便驗證腳本的正確性(同時ab壓力測試是必須要有的,Server端和Agent端都要裝該命令)。

[root@zabbix fonts]# yum -y install httpd-tools     #安裝ab壓力測試命令
[root@zabbix fonts]# ab -q -n 1000 -c 1000 http://192.168.20.3/index.html |grep Request | awk '{print $4}'
2117.31         #有信息返回則表示正常

配置Web界面:

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

1)配置應用集

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

2)配置監控項

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

監控Nginx總訪問量:

接下來每添加一個監控項,都要點擊下面的按鈕,為了簡單,以后就不截下面頁面的圖了。

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

獨立IP數

Zabbix監控Tomcat及Nginx

Nginx主頁的狀態

Zabbix監控Tomcat及Nginx

Nginx當前并發數

Zabbix監控Tomcat及Nginx

配置文件MD5值用來監控nginx配置文件是否被更改(注意圖中其信息類型)

Zabbix監控Tomcat及Nginx

當前吞吐量bps,并且讓其更新時間為60秒(注意其信息類型)

Zabbix監控Tomcat及Nginx

監控nginx工作進程的個數

Zabbix監控Tomcat及Nginx

監控Nignx虛擬主機的個數

Zabbix監控Tomcat及Nginx

3)創建觸發器

nginx服務意外停止工作觸發器
Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

創建Nginx主頁不可訪問的觸發器
Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

創建Nginx配置文件被修改觸發器
Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

4)添加被監控主機

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

5)查看Zabbix監控的數據

Zabbix監控Tomcat及Nginx

6)給監控nginx狀態添加映射(更加友好)

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx
Zabbix監控Tomcat及Nginx

確定已添加:
Zabbix監控Tomcat及Nginx

關聯到監控項

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

在Server端模擬并發,然后查看圖形檢測頁面:

[root@zabbix ~]# vim a.sh      #編寫腳本

#!/bin/bash
while true
do
ab -n 1000 -c 100 192.168.20.3/index.html &> /dev/null
done
[root@zabbix ~]# sh a.sh      #執行腳本

執行腳本后,圖形界面如下:

Zabbix監控Tomcat及Nginx

也可以自定義圖表,如下:
Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

Zabbix監控Tomcat及Nginx

另外有需要云服務器可以了解下創新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


分享名稱:Zabbix監控Tomcat及Nginx-創新互聯
文章分享:http://m.jcarcd.cn/article/cesjdj.html
主站蜘蛛池模板: 女同另类之国产女同 | 精品国产日韩无影视 | 精品国产一二三区 | 精品一级无 | 国产精品自拍大概率 | 欧美曰韩 | 区水蜜桃在线观看 | 日本中文字幕有码 | 日韩午夜影片 | 成人精品在线 | 日韩中文高清一 | 日产美产国产一区 | 岛国精品在线 | 欧美日韩看片 | 国产二三 | 日韩欧美中文在线 | 美乳一区 | 国产福利免费的网址 | 青青草色青伊人 | 日韩国产欧美经典 | 国产精品中文字幕组 | 激情视频在线观看 | 午夜国产精品精品 | 国内精品在线国内 | 欧美日韩在线 | 国产日产欧产综合 | 91成人精品亚洲高 | 欧美中文高清日韩 | 蜜桃臀aⅴ精品一 | 韩国午夜三级理论 | 日韩中文字幕在线 | 中文字幕在线影院 | 91伦理片 | 午夜福利体验区 | 国产在线视频自拍 | 潘甜甜国产福 | 青草青草久 | 日韩国产亚 | 九九六热 | 91国精品黄 | 日韩在线免费看网站 |