zabbix分布式监控+jvm监控+优化

1.分布式监控

配置分布式监控步骤:

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   不通区域的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监控jvm? tomcat

配置JMX监控的步骤:

1.安装Zabbix-Java-Gateway。
2.配置zabbix_java_gateway.conf参数。
3.配置zabbix-server.conf参数。-->连接java-gateway
4.Tomcat应用开启JMX协议。
5.ZabbixWeb配置JMX监控的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监控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优化

  1. Zabbix属于写多读少的业务, 所以需要针对zabbix的MySQL进行拆分.
    1.LAMP -->拆分成LAP + MySQL
    2.MySQL尽量使用SSD固态盘
  2. 将Zabbix-Agent被动监控模式, 调整为主动监控模式.
  3. 使用zabbix-proxy分布式监控, 在大规模监控时用于缓解Zabbix-Server压力
  4. 去掉无用监控项, 增加监控项的取值间隔, 减少历史数据保存周期(由housekeeper进程定时清理)
    5)针对于Zabbix-server进程调优, 谁忙就加大谁的进程数量, 具体取决实际情况, 不是越大越好
    6)针对于Zabbix-server缓存调优, 谁使用的缓存多,就加大它的缓存值(zabbix cache usage图表)
  5. 关注管理->队列, 是否有被延迟执行的监控项

你可能感兴趣的:(zabbix分布式监控+jvm监控+优化)