Zabbix 分佈式zabbix-proxy主動模式

 

zabbix proxy代理概述


zabbix proxy 可以代替 zabbix server 收集性能和可用性數據,然後把數據彙報給 zabbix server,並且在一定程度上分擔了zabbix server 的壓力.

此外,當所有agents和proxies報告給一個Zabbix server並且所有數據都集中收集時,使用proxy是實現集中式和分佈式監控的最簡單方法。

zabbix proxy 使用場景:

  • 監控遠程區域設備

  • 監控本地網絡不穩定區域

  • 當 zabbix 監控上千設備時,使用它來減輕 server 的壓力

  • 簡化分佈式監控的維護

 

分佈式監控


zabbix proxy 可以代替 zabbix server 收集性能和可用性數據,然後把數據彙報給 zabbix server,並且在一定程度上分擔了zabbix server 的壓力,此外,當所有agents和proxies報告給一個Zabbix server並且所有數據都
集中收集時,使用proxy是實現集中式和分佈式監控的最簡單方法。

 

應用場景


監控遠程區域設備
監控本地網絡不穩定區域
當 zabbix 監控上千設備時,使用它來減輕 server 的壓力
簡化分佈式監控的維護
注意:zabbix_proxy的數據庫必須與zabbix_server的數據庫分開。不過可以同時在server端創建zabbix數據庫與zabbix_proxy數據庫,記得授權即可。 


 

 實戰部署


實驗環境:
監控端:192.168.179.102
代理端:192.168.179.103
被監控端:192.168.179.104

 

代理端:192.168.179.103 zbbix proxy安裝與配置


這裏使用yum安裝,在192.168.179.103執行下列命令 

安裝proxy和連接mysql數據庫的組件
[root@localhost ~]# yum install zabbix40-proxy.noarch   zabbix40-proxy-mysql.x86_64  zabbix40-dbfiles-mysql.noarch -y

因爲zabbix proxy是會收集agent的數據,所以也需要數據庫 

[root@localhost ~]# yum install mariadb mariadb-server mariadb-devel -y
[root@localhost ~]# systemctl start  mariadb

 創建數據庫,導入表結構,對於Zabbix proxy 數據庫, 只需要導入 schema.sql (不需要 images.sql 和 data.sql)

MariaDB [(none)]> create database zabbix_proxy charset utf8;
MariaDB [(none)]> grant all on zabbix_proxy.* to "zabbix"@localhost identified by "123456";
MariaDB [(none)]> flush privileges;

[root@localhost ~]# mysql -uzabbix -p123456 zabbix_proxy < /usr/share/zabbix-mysql/schema.sql 
MariaDB [(none)]> use zabbix_proxy;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [zabbix_proxy]> show tables;
+----------------------------+
| Tables_in_zabbix_proxy     |
+----------------------------+
| acknowledges               |
| actions                    |
| alerts                     |
| application_discovery      |
| application_prototype      |
| application_template       |
| applications               |

修改配置文件/etc/zabbix_proxy.conf

[root@localhost ~]# vim /etc/zabbix_proxy.conf 
############ GENERAL PARAMETERS #################

### Option: ProxyMode
#       Proxy operating mode.
#       0 - proxy in the active mode
#       1 - proxy in the passive mode
#
# Mandatory: no
# Default:
# ProxyMode=0

ProxyMode=0             #0爲主動, 1爲被動
Hostname=proxy-123      #代理服務器名稱,需要與zabbix server添加代理時候的proxy name是一致的!
Server=192.168.179.102  #zabbix server服務器的地址或主機名 
DBHost=localhost        #數據庫服務器地址
DBUser=zabbix
HeartbeatFrequency=60   #心跳間隔檢測時間,默認60秒,範圍0-3600秒, 被動模式不使用
ConfigFrequency=60      #間隔多久從zabbix server 獲取監控信息
DataSenderFrequency=3   #數據發送時間間隔,默認爲1秒,範圍爲1-3600秒,被動模式不使用
ProxyLocalBuffer=3      #數據同步到server,數據還會保存多久,單位小時
ProxyOfflineBuffer=24   #未提交的數據保存多長時間

[root@localhost ~]# systemctl start zabbix-proxy

 

被監控端:192.168.179.104 zabbix agent安裝與配置


[root@localhost ~]# yum install zabbix40-agent.x86_64  -y

[root@localhost ~]# vim /etc/zabbix_agentd.conf 
Server=192.168.179.103 #這裏填寫proxy的地址,因爲是由proxy來收集數據的 

[root@localhost ~]# systemctl start zabbix-agent

 

接下來就可以在zabbix server的web端設置了 添加代理


 這個名字要和配置文件裏面Hostname=proxy-123保持一致,而且默認是主動模式

接下來添加主機,由proxy收集數據 

 

 查看proxy是否配置成功


查看代理proxy的日誌 

[root@localhost ~]# tail -f /var/log/zabbixsrv/zabbix_proxy.log 
  1958:20200626:095136.398 cannot send proxy data to server at "192.168.179.102": proxy "proxy-123" not found
  1958:20200626:095137.400 cannot send proxy data to server at "192.168.179.102": proxy "proxy-123" not found
  1958:20200626:095138.411 cannot send proxy data to server at "192.168.179.102": proxy "proxy-123" not found
  1958:20200626:095139.414 cannot send proxy data to server at "192.168.179.102": proxy "proxy-123" not found
  1950:20200626:095230.510 received configuration data from server at "192.168.179.102", datalen 3516
  1950:20200626:095330.832 received configuration data from server at "192.168.179.102", datalen 3516
  1950:20200626:095431.139 received configuration data from server at "192.168.179.102", datalen 3516
  1950:20200626:095531.487 received configuration data from server at "192.168.179.102", datalen 13032
  1970:20200626:095533.006 Zabbix agent item "vfs.fs.inode[/,pfree]" on host "192.168.179.104" failed: first network error, wait for 15 seconds
  1950:20200626:095631.794 received configuration data from server at "192.168.179.102", datalen 13032
  1950:20200626:095732.090 received configuration data from server at "192.168.179.102", datalen 13032
  1950:20200626:095832.322 received configuration data from server at "192.168.179.102", datalen 13032
  1950:20200626:095932.488 received configuration data from server at "192.168.179.102", datalen 13032
  1950:20200626:100032.786 received configuration data from server at "192.168.179.102", datalen 13032
  1985:20200626:100117.090 enabling Zabbix agent checks on host "192.168.179.104": host became available
  1950:20200626:100132.967 received configuration data from server at "192.168.179.102", datalen 13032
#proxy代理端獲取被監控端的鍵值
[root@localhost ~]# zabbix_get -s 192.168.179.104 -k system.uname
Linux localhost.localdomain 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64

 可以看到數據變綠了,proxy配置成功

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章