在監控大量服務器時,如果將所有的請求都發送到一個zabbix server上,將會對我們的zabbix server造成很大的壓力,我們在規劃多個區域或機房進行監控的時候,會考慮到使用zabbix proxy 來代理zabbix server 的部分功能。zabbix server 通過管理多個代理來對所有服務器進行監控。
zabbix proxy 安裝配置
zabbix proxy 的安裝配置也很簡單,如果有官方的yum 源,直接yum 安裝即可。需要注意的是,zabbix proxy 需要配置數據庫,對于受監控的客戶端來說,它就是一個zabbix server 的角色,只不過與他直接交互的不是zabbix server,而是zabbix proxy。
安裝zabbix proxy:yum?install?-y?zabbix-proxy-mysql??mariadb?mariadb-server
與配置server 相同,配置好數據庫后,需要導入數據表:create?database?zabbix_proxy?character?set?utf8?collate?utf8_bin;
grant?all?on?zabbix_proxy.*?to?zabbix_proxy@192.168.20.55?identified?by?'zabbix_proxy';
cd?/usr/share/doc/zabbix-proxy-mysql-3.0.13/
zcat?schema.sql.gz|?mysql?-h?192.168.20.55?-uzabbix_proxy?-pzabbix_proxy?zabbix_proxy
配置zabbix proxy:#?grep?'^[a-Z]'/etc/zabbix/zabbix_proxy.conf
Server=192.168.20.50???????????????????#?zabbix?server?IP?地址
Hostname=zabbix-proxy
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBHost=192.168.20.55????????????????????#?zabbix?proxy數據庫地址
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=zabbix_proxy
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
啟動zabbix proxy:systemctl?start?zabbix-proxy
web界面配置zabbix proxy
在web界面添加proxy:
選擇模式,添加proxy主機:
配置zabbix agent
連接zabbix proxy 的 zabbix agent 配置:#?grep?'^[a-Z]'/etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.20.55??????????????????????#?zabbix?proxy?地址
ServerActive=192.168.20.55
Hostname=agent1
Include=/etc/zabbix/zabbix_agentd.d/
啟動zabbix ?agent:
systemctl start zabbix-agent
在web 界面添加主機,修改主機為使用proxy, zabbix-proxy: