zabbix-prxoy是一個代理服務器,它收集監控到的數據,先存放數據庫,而後再傳送到zabbix-server;因此代理須要一個單獨的數據庫node
zabbix-prxoy的做用:mysql
一、當監控設備過多時,用於分擔zabbix-server監控壓力sql
二、針對不一樣的網絡環境,能夠組成分佈式監控數據庫
環境:已安裝MySQL 5.7.31服務器
zabbix5.0 :https://cdn.zabbix.com/zabbix/sources/stable/5.0/zabbix-5.0.2.tar.gz網絡
[root@swarm-node2 local]# useradd -s /sbin/nologin zabbix
yum install unixODBC-devel net-snmp-devel libevent-devel libxml2-devel libcurl-devel -y
[root@swarm-node2 local]# tar -zxf zabbix-5.0.2.tar.gz
./configure --prefix=/usr/local/zabbix-proxy --enable-proxy --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 --with-unixodbc
--prefix=/usr/local/zabbix-proxy # 編譯安裝路徑curl
--enable-prxoy # 啓動proxy端分佈式
--with-mysql=/usr/local/mysql/bin/mysql_config #編譯鏈接mysql相關依賴包,並指定mysql_config的路徑url
--with-net-snmp #啓動snmp相關,用於snmp監控設備spa
--with-libcurl #啓動curl相關
--with-libxml2 #啓動xml相關
--with-unixodbc #啓動odbc相關用於監控數據庫
確認無誤後就開始make && make install
[root@swarm-node2 zabbix-5.0.2]# make && make install
數據庫文件在zabbix-5.0.2/database/mysql 中
proxy只須要導入schema.sql便可
mysql> create database proxy character set UTF8 collate utf8_bin; Query OK, 1 row affected (0.00 sec) mysql> mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | proxy | | sys | +--------------------+ 5 rows in set (0.00 sec) mysql> mysql> mysql>
mysql> mysql> use proxy; Database changed mysql> source /usr/local/zabbix-5.0.2/database/mysql/schema.sql;
Server=192.168.137.128 #指定zabbix-server的ip地址 DBHost=localhost #如下都是數據庫信息 DBName=proxy DBUser=root DBPassword=123.com DBSocket=/usr/local/mysql/mysql.sock DBPort=3306
[root@swarm-node2 zabbix-proxy]# /usr/local/zabbix-proxy/sbin/zabbix_proxy -c /usr/local/zabbix-proxy/etc/zabbix_proxy.conf
[root@swarm-node2 zabbix-proxy]# echo '/usr/local/mysql/lib/' > /etc/ld.so.conf.d/mysql.conf [root@swarm-node2 zabbix-proxy]# ldconfig -v
啓動成功
agent代理程序名稱:爲zabbix-proxy配置文件中的Hostname
系統代理程序模式:選擇主動式