proxy被動模式實現
agent端配置
1、vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.3.207,192.168.3.200
#指定允許proxy到本機抓取數據,也需要允許server,server上的每個主機都關聯了一個模板,模板中有周期性檢測agent是否存活的監控項,所以需要允許server進行訪問
ListenPort=10050
ListenIP=0.0.0.0
StartAgents=3
Hostname=192.168.3.202
2、systemctl restart zabbix-agent
proxy端配置
1、vim /apps/zabbix-proxy/etc/zabbix_proxy.conf
ProxyMode=1
Server=192.168.3.200 #指定允許server到本機抓取數據
Hostname=zabbix-proxy-linux-passive
ListenPort=10051
DBHost=192.168.3.203
DBName=zabbix_passive
DBUser=zabbix_passive
DBPassword=linux
ProxyLocalBuffer=720
ProxyOfflineBuffer=720
StartPollers=5
HistoryCacheSize=16M
Timeout=30
CacheSize=16M
User=zabbix
2、systemctl restart zabbix-proxy
zabbix web上的配置
1、創建代理

2、指定代理模式為被動模式,指定代理的地址及端口;主動模式不需要proxy地址及端口,主動模式下,是proxy主動連接server

3、指定agent信息,並且指定使用proxy獲取agent數據

4、關聯一個模板

主動模式實現
proxy主動模式工作過程

agent會打開一個隨機端口向proxy的10051端口發起請求,請求監控項,proxy本身沒有監控項,所以proxy會把請求發送給server的10051端口,請求agent的監控項(通過agent配置文件中的hostname識別不同的agent),server會通過數據庫查找到agent對應的監控項,把監控項返還給proxy,proxy返還給agent,agent從而獲得了監控項,進行數據采集;
agent把采集到的數據發送給proxy,proxy會把數據臨時記錄到數據庫中,proxy根據配置文件中所設定的時間,把數據推送給server,server再把數據記錄到數據庫中;
主被動模式都是agent第一次獲得監控項后,后面會根據該監控項采集數據,當達到server或者proxy配置文件中設置的指定同步時間后,由proxy向server獲取最新的監控項,或由server把最新的監控項推送給proxy
數據庫端配置
1、mysql> create database zabbix_active character set utf8 collate utf8_bin;
2、mysql> grant all privileges on zabbix_active.* to zabbix_active@'192.168.3.%' identified by 'linux';
proxy端配置
1、root@test:~# vim /etc/zabbix/zabbix_proxy.conf
ProxyMode=0 #指定為主動模式
Server=192.168.3.200
ServerPort=10051
Hostname=zabbix-proxy-linux-active
DBHost=192.168.3.203
DBName=zabbix_active
DBUser=zabbix_active
DBPassword=linux
ProxyLocalBuffer=720
ProxyOfflineBuffer=720
HeartbeatFrequency=60
ConfigFrequency=30
DataSenderFrequency=30
StartPollers=5
HistoryCacheSize=16M
CacheSize=16M
Timeout=30
User=zabbix
2、systemctl restart zabbix-proxy
agent端配置
1、vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.3.200,192.168.3.207 #192.168.3.207可以不用寫
ServerActive=192.168.3.207 #必須指定agent主動到proxy的地址獲取監控項
Hostname=192.168.3.208
StartAgents=3
ListenIP=0.0.0.0
2、systemctl restart zabbix-agent
zabbix web配置
1、創建主動模式代理

2、創建主機時,指定代理為主動模式的代理即可;proxy使用主動模式,則server給agent關聯的模板,模板中的監控項也必須為主動模式,所以必須提前准備好一個主動模式的模板;如果agent設置的是主動模式,但是server給agent關聯的模板是被動模式,則agent的主動模式將失效,並且server會收不到agent數據,會報錯。
zabbix通過proxy獲取java的監控數據
(43)
zabbix proxy配置(主動模式)
1、vim /etc/zabbix/zabbix_proxy.conf
ProxyMode=0
Server=192.168.3.200
ServerPort=10051
Hostname=zabbix-proxy-linux-active
DBHost=192.168.3.203
DBName=zabbix_active
DBUser=zabbix_active
DBPassword=linuxConfigFrequency=30
JavaGateway=192.168.3.207 #java gateway地址;server不用再配置
JavaGatewayPort=10052
StartJavaPollers=3
2、systemctl restart zabbix-proxy
web界面的配置
1、創建一個主機,指定JMX接口,指定代理;如果只監控一個服務器的java服務的數據,則不需要安裝agent

2、關聯一個java模板
zabbix測試工具
/apps/zabbix-server/bin/zabbix_get -s 192.168.3.202 -p 10050 -k system.cpu.load[all,avg1]
#指定想要獲取數據的agent地址,-p指定端口,-k指定監控項的key