簡介:
zabbix proxy 可以代替 zabbix server 收集性能和可用性數(shù)據(jù),然后把數(shù)據(jù)匯報給 zabbix server,并且在一定程度上分擔了zabbix server 的壓力.
zabbix-proxy使用場景:
1.監(jiān)控遠程區(qū)域設備
2.監(jiān)控本地網(wǎng)絡不穩(wěn)定區(qū)域
3.當 zabbix 監(jiān)控上千設備時,使用它來減輕 server 的壓力
4.簡化分布式監(jiān)控的維護

實驗架構

這里zabbix server端和zabbix agent已經(jīng)是安裝完成的,主要是安裝zabbix proxy
zabbix proxy安裝
1.前提是先關閉防火墻和selinux
2.安裝zabbix proxy,在192.168.45.102執(zhí)行以下命令
添加zabbix軟件倉庫
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
安裝zabbix-proxy
yum install -y zabbix-proxy
3.因為zabbix proxy是會手機agent的數(shù)據(jù),所以也需要數(shù)據(jù)庫
1.安裝mariadb
yum install -y mariadb mariadb-server
2.啟動和開機啟動mariadb
systemctl start mariadb
systemctl enable mariadb
3.進入數(shù)據(jù)庫進行配置和賬號密碼設置
mysql -uroot
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 'password';
MariaDB [(none)]> \q
4.導入表結構,對于Zabbix proxy 數(shù)據(jù)庫, 只需要導入 schema.sql (不需要 images.sql 和 data.sql)
zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix_proxy -ppassword zabbix_proxy
5.配置zabbix-proxy
編輯配置文件vim /etc/zabbix/zabbix_proxy.conf
ProxyMode=0 #0為主動, 1為被動
Server=192.168.45.101 #zabbix server服務器的地址或主機名
Hostname=my_proxy #代理服務器名稱, 需要與zabbix server添加代理時候的proxy name是一致的!
DBHost=localhost #數(shù)據(jù)庫服務器地址
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=password
DBPort=3306
下面是一些常用的配置參數(shù),非必要
ProxyLocalBuffer=3 #數(shù)據(jù)同步到server,數(shù)據(jù)還會保存多久,單位小時
ProxyOfflineBuffer=24 #未提交的數(shù)據(jù)保存多長時間
HeartbeatFrequency=60 #心跳間隔檢測時間, , 默認60秒, 范圍0-3600秒, 被動模式不使用
ConfigFrequency=5 #間隔多久從zabbix server 獲取監(jiān)控信息
DataSenderFrequency=5 #數(shù)據(jù)發(fā)送時間間隔, 默認為1秒, 范圍為1-3600秒, 被動模式不使用
StartPollers=10 #啟動的線程數(shù), 與客戶端的數(shù)據(jù)保持一致
6.啟動已經(jīng)安裝好的zabbix-agent,發(fā)送數(shù)據(jù)給zabbix-proxy,并配置zabbix-agent(IP:192.168.45.103這臺主機)
在IP:192.168.45.103這臺主機上編輯配置文件vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.45.102 #這里填寫proxy的地址,因為是由proxy來收集數(shù)據(jù)的
Hostname=192.168.45.103 #這里填被監(jiān)控的主機名字(我這里就直接寫的zabbix-agent主機的ip地址)
7.啟動和開機啟動zabbix-proxy和zabbix-agent
在安裝了zabbix-proxy的IP:192.168.45.102的主機上
systemctl start zabbix-proxy
systemctl enable zabbix-proxy
在安裝了zabbix-agent的IP:192.168.45.103的主機上
systemctl start zabbix-agent
systemctl enable zabbix-agent
8.接下來就是在zabbix-server的web端設置并添加代理了








注意:有時候會沒有獲取到數(shù)據(jù),這個是因為proxy啟動了,但是zabbix 的server端沒有創(chuàng)建代理,解決方法重啟一下zabbix proxy就可以了,也有可能是因為防火墻打開的或者防火墻沒有放開10050端口所致
重啟zabbix-proxy
systemctl restart zabbix-proxy
關閉防火墻
systemctl stop firewalld
放開10050端口和10051端口
zabbix-server放開10051端口
firewall-cmd --zone=public --remove-port=10051/tcp 重啟后失效
firewall-cmd --zone=public --remove-port=10051/tcp --permanent 重啟后不失效(永久失效)
zabbix-proxy放開10051端口
firewall-cmd --zone=public --remove-port=10051/tcp 重啟后失效
firewall-cmd --zone=public --remove-port=10051/tcp --permanent 重啟后不失效(永久失效)
zabbix-agent放開10050端口
firewall-cmd --zone=public --remove-port=10050/tcp 重啟后失效
firewall-cmd --zone=public --remove-port=10050/tcp --permanent 重啟后不失效(永久失效)