zabbix監控一個機器上的多個java進程的jvm


一、監控安裝部署

1.1 JVM端口配置

(/bqhexin/tomcat/bin/catalina.sh)在安裝的tomcat路徑,找到catalina.sh文件。

vim編輯並添加:

catalina.sh.

CATALINA_OPTS="-Dcom.sun.management.jmxremote \

               -Dcom.sun.management.jmxremote.authenticate=false \

               -Dcom.sun.management.jmxremote.ssl=false \

               -Djava.rmi.server.hostname=host ip \  本機IP

               -Dcom.sun.management.jmxremote.rmi.port=12346

               -Dcom.sun.management.jmxremote.port=12345"

其中:

Host ip修改為本機器IP

當一台機器有多個tomcat實例時,在不相同的實例的catalina.sh配置不相同的jmxremote.rmi.port和jmxremote.port數值,但注意端口沖突問題

注:修改后重啟tomcat生效

 

1.2監控依賴包獲取以及說明:
 
(1)獲取包含監控依賴py腳本、jar包、程序包以及用戶自定義key配置文件的包文件(提供FTP下載方法)
(2)文件用途說明   
cmdline-jmxclient-0.10.3.jar:用於獲取內存池等監控數據依賴包;
jstat.py:用於獲取垃圾回收統計數據,如幸存區大小、年輕代大小、老年代大小、垃圾回收次數等數據腳本;
jvm.py:用於獲取堆內存、非堆內存、類加載、線程狀態等通用數據腳本;
tomcat.py:用於獲取session信息等數據腳本;
1.3監控配置步驟
(1)解壓之前獲取的包文件 tar –zxvf zabbix.tar.gz
(2)移動解壓包中的py腳本和cmdline-jmxclient-0.10.3.jar包到指定目錄(/.script/zabbix,若未創建,請自行創建),並增加腳本可執行權限(chmod +x /.script/zabbix/*.py)

   (3)安裝解壓包中的zabbix-sender-3.2.6-1.el6.x86_64.rpm

           #rpm -ivh zabbix-sender-3.2.6-1.el6.x86_64.rpm ,並檢查是否安裝成功,

           #rpm -qa | grep zabbix_sender

(4)修改jstat.py腳本的端口配置

第23行,默認8080(tomcat服務端口),請按需修改此端口,若有多個tomcat實例,多個服務端口以分隔符|隔開,如8080|8081

jvmport_cmd = "sudo netstat -tpnl|grep -oP '(?<=:)\d+.*\d+(?=/java)'|awk '{print $1,$NF}'|grep -E '8080'"

第24、25行,檢查配置的程序文件的路徑是否與當前機器的程序文件實際路徑相同,

武漢生產環境機器zabbix_agentd.conf文件路徑大部分如上所示,無需修改。

(5)移動用戶自定義key配置文件到zabbix用戶自定義key文件存放目錄目錄

#mv userparameter_tomcat.conf /etc/zabbix/zabbix_agentd.d/

(6)設置允許tty終端執行sudo命令

vi /etc/sudoers (最好用visudo命令)

注釋掉 Default requiretty 一行

#Default requiretty

約第55行,!visiblepw去掉!,修改為以下:

Defaults visiblepw

(7)修改/etc/zabbix/zabbix_agentd.conf

vim /etc/zabbix/zabbix_agentd.conf

修改Zabbix server的ip:

Server=10.40.1.26               #若已有其它IP,以逗號隔開,增加server端IP

ServerActive=10.40.1.26        #若已有其它IP,以逗號隔開,增加server端IP

Hostname=ZABBIX03-SRV          #修改客戶端的機器名,已有則不修改

增加配置文件路徑,約在第255行位置:

Include=/etc/zabbix/zabbix_agentd.d/

注:server IP為10.40.1.26,武漢生產環境機器大部分已配置Hostname、Include項,若已配置可省略。

增加允許agent以root采集數據,約第237行位置:

AllowRoot=1

二、驗證采集數據

獲取jmxport列表

獲取數據

python jvm.py -b 'java.lang:type=Memory' -k 'HeapMemoryUsage.committed' -p 12345

三、主機添加監控模板

需監控的主機添加以下三個模板

注:若只監控JVM,使用  JVM Generic Template和JVM Status Template 即可;若監控tomcat,則使用全部三個模板。

四、獲取值截圖展示


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM