前言
zabbix proxy可以代替zabbix server檢索用戶端的資料,然後把資料彙報給zabbix server,并且在一定程度上分擔了zabbix server的壓力.zabbix proxy可以非常簡便的實作了集中式、分布式監控.
zabbix proxy使用場景:
- 監控遠端區域裝置
- 監控本地網絡不穩定區域
- 當zabbix監控上千裝置時,使用它來減輕server的壓力
- 簡化zabbix的維護
zabbix proxy僅僅需要一條tcp連接配接到zabbix server,是以防火牆上僅僅需要加上一條規則即可.zabbix proxy資料庫必須和server分開,否則資料會被破壞,畢竟這兩個資料庫的表大部分都相同。總之記住,資料庫分開即可。
proxy收集到資料之後,首先将資料緩存在本地,然後在一定得時間之後傳遞給zabbix server.這個時間由proxy配置檔案中參數ProxyLocalBuffer and ProxyOfflineBuffer決定.
備注:使用agent active模式,一定要記住在agent的配置檔案參數ServerActive加上proxy的IP位址.切記
zabbix分布式監控部署示範
zabbix伺服器端:10.220.5.13
zabbix代理伺服器端:10.220.5.138
zabbix被監控節點:10.220.5.139
配置代理伺服器端
第一步:下載下傳zabbix-proxy軟體
[root@proxy ~]# yum install zabbix-proxy-mysql -y
第二步:導入檔案到資料庫
[root@proxy ~]# rpm -ql zabbix-proxy-mysql
/usr/share/doc/zabbix-proxy-mysql-3.0.24/schema.sql.gz
[root@proxy ~]# cp /usr/share/doc/zabbix-proxy-mysql-3.0.24/schema.sql.gz ./
[root@proxy ~]# gunzip schema.sql.gz
第三步:登入資料庫
[root@proxy ~]# mysql -uroot -p123
MariaDB [(none)]> create database zabbix;
MariaDB [(none)]> use zabbix;
MariaDB [zabbix]> source /root/schema.sql
MariaDB [zabbix]> grant all on *.* to zabbix@localhost identified by '123';
第四步:修改配置檔案
[root@proxy ~]# grep -v -E '^#|^$' /etc/zabbix/zabbix_proxy.conf
ProxyMode=0 #開啟主動模式
Server=10.220.5.13 #指向主監控伺服器端
HostnameItem=system.hostname #主機名自動擷取
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix #代理節點自己的資料庫
DBUser=zabbix
DBPassword=123
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
第五步:重新開機
[root@proxy ~]# systemctl restart zabbix-proxy
配置被監控用戶端
第一步:下載下傳用戶端
[root@agent ~]# yum install zabbix-agent -y
第二步:配置用戶端檔案
用戶端不需要開啟serveractive,否則會一直嘗試給監控的主機點發資訊。
[root@agent ~]# grep -v -E '^#|^$' /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.220.5.138 #指向代理伺服器端
HostnameItem=system.hostname #主機名自動擷取
Include=/etc/zabbix/zabbix_agentd.d/
第三步:不要重新開機
配置完zabbix-proxy之後不要重新開機!!
等配置完zabbix網頁後再重新開機!!
配置zabbix的網頁端
第一步:添加主機
添加被監控節點的主機

點選建立主機
主機名稱可以随便填寫
這裡填寫的是被監控節點的IP位址
這裡的選擇無代理程式,現在也隻有這個選項
待會建立一個代理之後他會自動補上去
第二步:建立代理
點選建立代理
注意:
1.代理程式名稱代理伺服器的主機名,不需要在主機上面解析,但是一定確定是代理伺服器的主機名
現在代理伺服器端10.220.5.138的主機名
為proxy,是以下面的代理程式名稱就是proxy
2.選擇主動式
3.加入你想要代理的被監控節點。前提是這個被監控節點的server指向了代理伺服器節點
第三步:重新開機zabbix-proxy
代理伺服器端一定要在網頁端配置完成之後才能重新開機!
[root@proxy ~]# systemctl restart zabbix-proxy
第四步:檢視
可以發現原本server指向10.220.5.138代理伺服器端的被監控節點,現在也能被10.220.5.13監控了
名稱也變成 代理伺服器名稱:主機名