zabbix分布式監(jiān)控+jvm監(jiān)控+優(yōu)化

1.分布式監(jiān)控

配置分布式監(jiān)控步驟:

1.配源,安裝proxy 數據庫
2.配置zabbix-proxy
3.啟動proxy
4.配置zabbix-agent
5.登錄zabbix-web

注意:  zabbix-server 與 zabbix-proxy 需要版本一致

1.配源,安裝proxy  數據庫
[root@zabbix_proxy ~]# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
[root@zabbix_proxy ~]# yum install zabbix-proxy-mysql mariadb-server -y
[root@zabbix_proxy ~]# systemctl start mariadb
MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbix_proxy.* to zabbix_proxy@localhost identified by 'zabbix_proxy';

[root@zabbix_proxy ~]# zcat /usr/share/doc/zabbix-proxy-mysql-4.0.14/schema.sql.gz  | mysql -uzabbix_proxy -pzabbix_proxy zabbix_proxy


2.配置zabbix-proxy
[root@zabbix_proxy ~]# grep "^[a-Z]" /etc/zabbix/zabbix_proxy.conf 
....
Server=10.0.0.71
Hostname=sh_proxy
DBHost=localhost
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=zabbix_proxy
....

3.啟動proxy
[root@zabbix_proxy ~]# systemctl enable zabbix-proxy.service 
[root@zabbix_proxy ~]# systemctl start zabbix-proxy

4.配置zabbix-agent   不通區(qū)域的agent指向不同的proxy
    10.0.0.71   <--- 10.0.0.7       <---172.16.1.51
    10.0.0.71   <--- 10.0.0.8       <---172.16.1.41
5.登錄zabbix-web
    1.管理-->agent代理程序

2.zabbix監(jiān)控jvm? tomcat

配置JMX監(jiān)控的步驟:

1.安裝Zabbix-Java-Gateway。
2.配置zabbix_java_gateway.conf參數。
3.配置zabbix-server.conf參數。-->連接java-gateway
4.Tomcat應用開啟JMX協議。
5.ZabbixWeb配置JMX監(jiān)控的Java應用。

1.安裝Zabbix-Java-Gateway
[root@web01 ~]# yum install zabbix-java-gateway -y
[root@web01 ~]# systemctl restart zabbix-java-gateway
[root@web01 ~]# systemctl enable zabbix-java-gateway.service 

2.配置zabbix_java_gateway.conf參數
[root@web1 ~]# grep "^[a-Z]" /etc/zabbix/zabbix_java_gateway.conf 
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10052
START_POLLERS=5


3.配置zabbix-server指向zabbix-java-gateway
[root@zabbix-server ~]# vim /etc/zabbix/zabbix_server.conf 
JavaGateway=172.16.1.7
JavaGatewayPort=10052
StartJavaPollers=5     ##與zabbix_java_gateway.conf一致
[root@zabbix-server ~]# systemctl restart zabbix-server


4.啟動tomcat程序,開啟jmx協議
[root@web02 soft]# vim /soft/tomcat/bin/catalina.sh     #頭部添加即可
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false 
-Djava.rmi.server.hostname=172.16.1.8"

5.登錄zabbix-web添加一臺jmx的主機

---------------------------------------zabbix監(jiān)控tomcat總結--------------------------------------
zabbix ---> jmx ---> java(zabbix-agent)
1.Zabbix-Server找Zabbix-Java-Gateway獲取Java數據
2.Zabbix-Java-Gateway找Java程序獲取數據
3.Java程序返回數據給Zabbix-Java-Gateway
4.Zabbix-Java-Gateway返回數據給Zabbix-Server
5.Zabbix-Server進行數據展示

zabbix優(yōu)化

  1. Zabbix屬于寫多讀少的業(yè)務, 所以需要針對zabbix的MySQL進行拆分.
    1.LAMP -->拆分成LAP + MySQL
    2.MySQL盡量使用SSD固態(tài)盤
  2. 將Zabbix-Agent被動監(jiān)控模式, 調整為主動監(jiān)控模式.
  3. 使用zabbix-proxy分布式監(jiān)控, 在大規(guī)模監(jiān)控時用于緩解Zabbix-Server壓力
  4. 去掉無用監(jiān)控項, 增加監(jiān)控項的取值間隔, 減少歷史數據保存周期(由housekeeper進程定時清理)
    5)針對于Zabbix-server進程調優(yōu), 誰忙就加大誰的進程數量, 具體取決實際情況, 不是越大越好
    6)針對于Zabbix-server緩存調優(yōu), 誰使用的緩存多,就加大它的緩存值(zabbix cache usage圖表)
  5. 關注管理->隊列, 是否有被延遲執(zhí)行的監(jiān)控項
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容