Zabbix监控之分布式监控zabbix_proxy

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix监控之分布式监控zabbix_proxy相关的知识,希望对你有一定的参考价值。

  1. Zabbix分布式监控

zabbix proxy 可以代替 zabbix server 检索客户端的数据,然后把数据汇报给 zabbix server,并且在一定程度上分担了zabbix server 的压力.zabbix proxy 可以非常简便的实现了集中式、分布式监控。

zabbix proxy 使用场景:
? 监控远程区域设备
? 监控本地网络不稳定区域
? zabbix 监控上千设备时,使用它来减轻 server 的压力
? 简化 zabbix 的维护

技术分享图片

Zabbix_proxy只需要一条tcp链接到zabbix_server,只需要配置一个防火墙规则。zabbix_proxy数据库必须和server分开,否则数据会被破坏。因为这两个数据库的表大部分相同。

Zabbix_proxy收集的所有数据在传输到服务器之前都存储在本地。然后再一定时间之后传递给zabbix_server。这个时间是由proxy配置文件中参数ProxyLocalBuffer and ProxyOfflineBuffer决定。

Zabbix_proxy是一个数据收集器。它不计算触发器,处理事件或发送警报。

备注:使用 agent active 模式,一定要记住在 agent 的配置文件参数 ServerActive 加上 proxy IP 地址。


2.分布式部署


(1)安装zabbix-proxy-mysql和mariadb
[[email protected] ~]# yum list|grep zabbix-proxy-mysql
[[email protected] ~]# yum install -y zabbix-proxy-mysql
[[email protected] ~]# yum install -y mariadb
[[email protected] ~]# systemctl enable mariadb.service
[[email protected] ~]# systemctl start mariadb.service

(2)创建zabbix_proxy库
[[email protected] ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 11579
Server version: 5.5.56-MariaDB MariaDB Server

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database zabbix_proxy CHARATER set utf8 COLLATE utf8_bin;

MariaDB [(none)]> grant all on zabbix_proxy.* to [email protected]'localhost' identified by 'zabbix';

MariaDB [(none)]> exit;
Bye

(3)导入数据库
[[email protected] ~]# rpm -ql zabbix-proxy-mysql
[[email protected] ~]# zcat /usr/share/doc/zabbix-proxy-mysql-3.0.8/schema.sql.gz |mysql -uzabbix -pzabbix zabbix_proxy
[[email protected] ~]# mysql -uzabbix -pzabbix -e "use zabbix_proxy;show tables;"

(4)修改zabbix_proxy配置文件
[[email protected] ~]# vim /etc/zabbix/zabbix_proxy.conf
ProxyMode=0    #使用主动模式,1为被动模式,默认为主动模式,web前端也配置主动模式
Server=192.168.56.11    #填写zabbix-server的ip地址
ServerPort=10051        #zabbix的端口
HostnameItem=system.hostname
DBHost=localhost
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=zabbix
Timeout=15

配置文件中没有配置的内容如下:(有需要可以配置)
# ProxyLocalBuffer=0
#数据保留的时间(小时为单位)
# ProxyOfflineBuffer=1
#连不上Server,数据要保留多久(小时为单位,默认1小时)
# DataSenderFrequency=1
#数据的发送时间间隔(默认是1秒)
# StartPollers=5
#启动的线程数
# StartIPMIPollers=0
#启动IPMI的线程数

(5)启动服务并检查端口
[[email protected] ~]# systemctl start zabbix-proxy.service
[[email protected] ~]# netstat -tulnp |grep 10051

(6)创建proxy
"Administration"-->"Proxies"-->"Create proxy"

技术分享图片


(7)修改agent的配置
[[email protected] ~]# grep "^[a-Z]" /etc/zabbix/zabbix_agentd.conf 
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
DebugLevel=5
Server=192.168.56.13        #指向zabbix_proxy    
ServerActive=192.168.56.13    #指向zabbix_proxy 
HostnameItem=system.hostname
HostMetadata=web
Timeout=15
Include=/etc/zabbix/zabbix_agentd.d/*.conf
[[email protected] ~]# systemctl restart zabbix-agent.service

技术分享图片

技术分享图片


以上是关于Zabbix监控之分布式监控zabbix_proxy的主要内容,如果未能解决你的问题,请参考以下文章

Zabbix分布式监控之Discovery自动发现配置

自动化运维工具之Zabbix分布式监控应用

运维监控之zabbix4.0(安装,自定义监控项)

分布式系统监视zabbix讲解十之监控tomcat--技术流ken

腾讯面试题-Zabbix监控之自动化与优化

Zabbix分布式监控