一、場景說明:
我們這邊的環(huán)境用的是微服務(wù),每個程序都是有單獨的進程及單獨的端口號,但用jps查詢出來的結(jié)果有些還會有重名的情況,所以某些腳本不太適用本場景;
二、需求說明:
需使用zabbix-server監(jiān)控每個agent上的jvm進程(監(jiān)控項具體在模板中展示)
三、準備環(huán)境:
1.jvm.py腳本(非本人原創(chuàng),從github上直接copy的,此處附上github地址,可直接去目標地址查看相關(guān)說明)
2.https://github.com/qiueer/zabbix/blob/master/tomcat/usage.txt(zabbix/tomcat/{jvm.py|qiueer-template jmx generic.xml}模板和腳本地址)
3.jdk-8u201-linux-x64.tar.gz
4.iptables配置或關(guān)閉
四、正式安裝
1.在各個agent安裝jdk,且配置環(huán)境變量(首先上傳至指定目錄下), 每個agent都如下操作。
1
2
3
4
5
6
7
8
9
10
|
~]# tar zxvf jdk-8u201-linux-x64.tar.gz ~]# vim /etc/profile // 增加以下內(nèi)容 #java環(huán)境變量 export java_home=/usr/local/jdk1.8.0_201 export jre_home=${java_home}/jre export classpath=.:${java_home}/lib:${jre_home}/lib:$classpath export java_path=${java_home}/bin:${jre_home}/bin export path=$path:${java_path} ~]# source /etc/profile ~]# ln -s /usr/local/jdk1.8.0_201/bin/java /bin/java // 如果不做此鏈接,則無法獲取到j(luò)vm些許信息 |
2.上傳cmdline與jvm.py到指定目錄下測試(每個agent都需這么操作)
1
2
3
4
5
6
7
8
9
|
zabbix_agentd.d]# pwd /etc/zabbix/zabbix_agentd.d zabbix_agentd.d]# mkdir script script]# ll -rw-r--r-- 1 wenkai person 20124 sep 10 18:55 cmdline-jmxclient-0.10.3.jar // 上傳到/etc/zabbix/zabbix_agentd.d/script目錄 -rw-r-xr-x 1 root root 13941 sep 10 18:57 jvm.py script]# python jvm.py --list // 如果可查到j(luò)son格式的數(shù)據(jù)則說明腳本可用 script]# python jvm.py -b 'java.lang:type=memory' -k 'heapmemoryusage.committed' -p 30497 1020067840 |
3.配置web界面模板,將qiueer-template jmx generic.xml模板下載到本地后導(dǎo)入到zabbix中形成新的模板,模板中配有自動發(fā)現(xiàn)規(guī)則及各個監(jiān)控項以及觸發(fā)器;
4.當配置完成后等一段時間即可發(fā)現(xiàn)被監(jiān)控主機上的數(shù)據(jù),如下....
注意:模板中有些監(jiān)控項并不適用我們的服務(wù),此處可以停用。
總結(jié)
以上所述是小編給大家介紹的zabbix監(jiān)控多個jvm進程的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!原文鏈接:https://www.cnblogs.com/k-free-bolg/archive/2019/09/12/11511675.html