zabbix proxy配置實戰案例
作者:尹正傑
版權聲明:原創作品,謝絕轉載!否則將追究法律責任。
一.zabbix proxy概述
上一篇博客我們分享了zabbix agent有兩種工作模式,即主動模式和被動模式,默認是被動模式,主動模式需要我們手動去配置,使用主動模式可以適當減輕zabbix server的負載,但當規模超過500個節點以后,盡管是主動模式也會很吃力了,此時需要引入zabbix proxy。
zabbix是一個分布式的監控系統,支持通過代理服務zabbix proxy收集zabbix agent的數據,然后把收集保存在本地數據庫並發送給zabbix server進行統一存儲和展示。
當企業的服務器超過500台以上后,盡管使用主動模式,zabbix server的負載依舊不小,此時,可以引入zabbix proxy來減輕zabbix server的負載。
引入zabbix proxy后,zabbix agent的監控數據不會直接發送給zabbix server,而是將監控數據發送給zabbix proxy,一個zabbix server可以配置多個zabbix proxy以減輕zabbix server的負擔,讓各個zabbix proxy分而治之。
生產環境中,如果使用zabbix proxy大多數場景是使用主動模式。zabbix proxy和zabbix server之間的功能對比:
輕量級:
zabbix proxy是輕量級服務;
zabbix server想必zabbix proxy來說是重量級;
圖形化:
zabbix proxy是沒有圖形界面展示的;
zabbix server帶圖形控制界面;
可以獨立工作:
zabbix proxy是可以獨立工作的,它可以獨立采集數據並存儲;
zabbix server也是可以獨立工作的,可以進行數據采集,存儲,分析,展示於一體;
易維護:
zabbix proxy是易於維護的,配置完成后基本無需管理;
zabbix server維護起來也不難;
獨立數據庫:
zabbix proxy可以保留部分數據,因為zabbix proxy的節點可以有多個,每個zabbix proxy監控的數據不盡相同,因此每個zabbix proxy保存的數據並不是整個監控系統的數據;
zabbix server保留指定時間內的所有數據;
報警通知:
zabbix proxy不支持報警通知,連最基本的發送郵件功能都不支持;
zabbix server支持郵件,短信,微信等告警機制。
二.創建zabbix proxy節點的數據庫
1>.試驗架構說明
proxy205.yinzhengjie.org.cn
zabbix proxy active
proxy205.yinzhengjie.org.cn
zabbix proxy
2>.zabbix proxy節點安裝mysql驅動
[root@proxy206.yinzhengjie.org.cn ~]# wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-3+bionic_all.deb [root@proxy206.yinzhengjie.org.cn ~]# [root@proxy206.yinzhengjie.org.cn ~]# dpkg -i zabbix-release_4.0-3+bionic_all.deb [root@proxy206.yinzhengjie.org.cn ~]# [root@proxy206.yinzhengjie.org.cn ~]# apt update [root@proxy206.yinzhengjie.org.cn ~]# [root@proxy206.yinzhengjie.org.cn ~]# apt -y install zabbix-proxy-mysql
3>.數據庫授權

[root@mysql202.yinzhengjie.org.cn ~]# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 5145 Server version: 10.1.44-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> MariaDB [(none)]> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | zabbix_server | +--------------------+ 4 rows in set (0.00 sec) MariaDB [(none)]>
MariaDB [(none)]> CREATE DATABASE zabbix_proxy_active CHARACTER SET utf8 COLLATE utf8_bin; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> MariaDB [(none)]> GRANT ALL PRIVILEGES ON zabbix_proxy_active.* TO zabbix_proxy_active@'172.200.3.%' IDENTIFIED BY 'yinzhengjie'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]>

MariaDB [(none)]> SHOW GRANTS FOR zabbix_proxy_active@'172.200.3.%'; +------------------------------------------------------------------------------------------------------------------------------+ | Grants for zabbix_proxy_active@172.200.3.% | +------------------------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'zabbix_proxy_active'@'172.200.3.%' IDENTIFIED BY PASSWORD '*BD0B1F48FDC55BD27555FC2F22FF29A68A25A1D7' | | GRANT ALL PRIVILEGES ON `zabbix_proxy_active`.* TO 'zabbix_proxy_active'@'172.200.3.%' | +------------------------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) MariaDB [(none)]>

MariaDB [(none)]> SELECT user,host FROM mysql.user; +---------------------+-------------+ | user | host | +---------------------+-------------+ | zabbix_proxy_active | 172.200.3.% | | zabbix | 172.200.5.% | | root | localhost | +---------------------+-------------+ 3 rows in set (0.00 sec) MariaDB [(none)]>

MariaDB [(none)]> SHOW DATABASES; +---------------------+ | Database | +---------------------+ | information_schema | | mysql | | performance_schema | | zabbix_proxy_active | | zabbix_server | +---------------------+ 5 rows in set (0.00 sec) MariaDB [(none)]> MariaDB [(none)]>
4>.測試proxy節點是否可以正常連接數據庫

[root@proxy205.yinzhengjie.org.cn ~]# mysql -u zabbix_proxy_active -h 172.200.5.202 -pyinzhengjie mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5473 Server version: 5.5.5-10.1.44-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04 Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> mysql> mysql> SHOW DATABASES; +---------------------+ | Database | +---------------------+ | information_schema | | zabbix_proxy_active | +---------------------+ 2 rows in set (0.00 sec) mysql> mysql> QUIT Bye [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#
5>.初始化數據庫
[root@proxy205.yinzhengjie.org.cn ~]# find / -name schema.sql.gz /usr/share/zabbix-proxy-mysql/schema.sql.gz [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# zcat /usr/share/zabbix-proxy-mysql/schema.sql.gz | mysql -u zabbix_proxy_active -h 172.200.5.202 -pyinzhengjie zabbix_proxy_active
6>.修改zabbix proxy服務的常用配置參數

[root@proxy205.yinzhengjie.org.cn ~]# grep ProxyMode= /etc/zabbix/zabbix_proxy.conf # ProxyMode=0 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (ProxyMode=)@\1@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ProxyMode= /etc/zabbix/zabbix_proxy.conf ProxyMode=0 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ^Server= /etc/zabbix/zabbix_proxy.conf Server=127.0.0.1 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's#(Server=)127.0.0.1#\1172.200.5.203#' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ^Server= /etc/zabbix/zabbix_proxy.conf Server=172.200.5.203 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ServerPort= /etc/zabbix/zabbix_proxy.conf # ServerPort=10051 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (ServerPort=)@\1@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ServerPort= /etc/zabbix/zabbix_proxy.conf ServerPort=10051 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ^Hostname= /etc/zabbix/zabbix_proxy.conf Hostname=Zabbix proxy [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@(Hostname=)Zabbix proxy@\1zabbix_proxy_yinzhengjie_active@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ^Hostname= /etc/zabbix/zabbix_proxy.conf Hostname=zabbix_proxy_yinzhengjie_active [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ListenPort= /etc/zabbix/zabbix_proxy.conf # ListenPort=10051 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (ListenPort=)@\1@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ListenPort= /etc/zabbix/zabbix_proxy.conf ListenPort=10051 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# hostname -i 172.200.3.205 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep SourceIP= /etc/zabbix/zabbix_proxy.conf # SourceIP= [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (SourceIP=)@\1172.200.3.205@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep SourceIP= /etc/zabbix/zabbix_proxy.conf SourceIP=172.200.3.205 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep LogType= /etc/zabbix/zabbix_proxy.conf # LogType=file [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (LogType=)@\1@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep LogType= /etc/zabbix/zabbix_proxy.conf LogType=file [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep DebugLevel= /etc/zabbix/zabbix_proxy.conf # DebugLevel=3 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (DebugLevel=)3@\14@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep DebugLevel= /etc/zabbix/zabbix_proxy.conf DebugLevel=4 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep DBHost= /etc/zabbix/zabbix_proxy.conf # DBHost=localhost [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (DBHost=)localhost@\1172.200.5.202@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep DBHost= /etc/zabbix/zabbix_proxy.conf DBHost=172.200.5.202 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ^DBName= /etc/zabbix/zabbix_proxy.conf DBName=zabbix_proxy [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's#(DBName=)zabbix_proxy#\1zabbix_proxy_active#' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ^DBName= /etc/zabbix/zabbix_proxy.conf DBName=zabbix_proxy_active [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ^DBUser= /etc/zabbix/zabbix_proxy.conf DBUser=zabbix [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's#(DBUser=)zabbix#\1zabbix_proxy_active#' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ^DBUser= /etc/zabbix/zabbix_proxy.conf DBUser=zabbix_proxy_active [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep DBPassword= /etc/zabbix/zabbix_proxy.conf # DBPassword= [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (DBPassword=)@\1yinzhengjie@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep DBPassword= /etc/zabbix/zabbix_proxy.conf DBPassword=yinzhengjie [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ProxyLocalBuffer= /etc/zabbix/zabbix_proxy.conf # ProxyLocalBuffer=0 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (ProxyLocalBuffer=)0@\1720@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ProxyLocalBuffer= /etc/zabbix/zabbix_proxy.conf ProxyLocalBuffer=720 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ProxyOfflineBuffer= /etc/zabbix/zabbix_proxy.conf # ProxyOfflineBuffer=1 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (ProxyOfflineBuffer=)1@\1720@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ProxyOfflineBuffer= /etc/zabbix/zabbix_proxy.conf ProxyOfflineBuffer=720 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep HeartbeatFrequency= /etc/zabbix/zabbix_proxy.conf # HeartbeatFrequency=60 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (HeartbeatFrequency=)60@\1120@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep HeartbeatFrequency= /etc/zabbix/zabbix_proxy.conf HeartbeatFrequency=120 [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ConfigFrequency= /etc/zabbix/zabbix_proxy.conf # ConfigFrequency=3600 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (ConfigFrequency=)3600@\1300@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ConfigFrequency= /etc/zabbix/zabbix_proxy.conf ConfigFrequency=300 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep DataSenderFrequency= /etc/zabbix/zabbix_proxy.conf # DataSenderFrequency=1 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (DataSenderFrequency=)1@\160@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep DataSenderFrequency= /etc/zabbix/zabbix_proxy.conf DataSenderFrequency=60 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep StartPollers= /etc/zabbix/zabbix_proxy.conf # StartPollers=5 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (StartPollers=)5@\130@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep StartPollers= /etc/zabbix/zabbix_proxy.conf StartPollers=30 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep JavaGateway= /etc/zabbix/zabbix_proxy.conf # JavaGateway= [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (JavaGateway=)@\1172.200.5.203@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep JavaGateway= /etc/zabbix/zabbix_proxy.conf JavaGateway=172.200.5.203 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep JavaGatewayPort= /etc/zabbix/zabbix_proxy.conf # JavaGatewayPort=10052 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (JavaGatewayPort=)@\1@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep JavaGatewayPort= /etc/zabbix/zabbix_proxy.conf JavaGatewayPort=10052 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep StartJavaPollers= /etc/zabbix/zabbix_proxy.conf # StartJavaPollers=0 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (StartJavaPollers=)0@\120@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep StartJavaPollers= /etc/zabbix/zabbix_proxy.conf StartJavaPollers=20 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep ListenIP= /etc/zabbix/zabbix_proxy.conf # ListenIP=0.0.0.0 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (ListenIP=)@\1@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ListenIP= /etc/zabbix/zabbix_proxy.conf ListenIP=0.0.0.0 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep "# CacheSize=8M" /etc/zabbix/zabbix_proxy.conf # CacheSize=8M [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i "s@# (CacheSize=)8@\1512@" /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ^CacheSize /etc/zabbix/zabbix_proxy.conf CacheSize=512M [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep StartDBSyncers= /etc/zabbix/zabbix_proxy.conf # StartDBSyncers=4 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (StartDBSyncers=)4@\110@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep StartDBSyncers= /etc/zabbix/zabbix_proxy.conf StartDBSyncers=10 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep HistoryCacheSize= /etc/zabbix/zabbix_proxy.conf # HistoryCacheSize=16M [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (HistoryCacheSize=)@\1512@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep HistoryCacheSize= /etc/zabbix/zabbix_proxy.conf HistoryCacheSize=512M [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep HistoryIndexCacheSize= /etc/zabbix/zabbix_proxy.conf # HistoryIndexCacheSize=4M [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (HistoryIndexCacheSize=)@\1128@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep HistoryIndexCacheSize= /etc/zabbix/zabbix_proxy.conf HistoryIndexCacheSize=128M [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ^Timeout= /etc/zabbix/zabbix_proxy.conf Timeout=4 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's#(Timeout=)4#\130#' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ^Timeout= /etc/zabbix/zabbix_proxy.conf Timeout=30 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep AllowRoot= /etc/zabbix/zabbix_proxy.conf # AllowRoot=0 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (AllowRoot=)@\1@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep AllowRoot= /etc/zabbix/zabbix_proxy.conf AllowRoot=0 [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#

[root@proxy205.yinzhengjie.org.cn ~]# grep "# User=" /etc/zabbix/zabbix_proxy.conf # User=zabbix [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# sed -r -i 's@# (User=)@\1@' /etc/zabbix/zabbix_proxy.conf [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# grep ^User= /etc/zabbix/zabbix_proxy.conf User=zabbix [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]#
7>.啟動zabbix proxy服務

[root@proxy205.yinzhengjie.org.cn ~]# ss -ntl State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 127.0.0.53%lo:53 0.0.0.0:* LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 128 [::]:22 [::]:* [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# systemctl start zabbix-proxy.service [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# ss -ntl State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 127.0.0.53%lo:53 0.0.0.0:* LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 128 0.0.0.0:10051 0.0.0.0:* LISTEN 0 128 [::]:22 [::]:* [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# systemctl list-unit-files | grep zabbix-proxy.service zabbix-proxy.service disabled [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# systemctl enable zabbix-proxy.service Synchronizing state of zabbix-proxy.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable zabbix-proxy [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# [root@proxy205.yinzhengjie.org.cn ~]# systemctl list-unit-files | grep zabbix-proxy.service zabbix-proxy.service enabled [root@proxy205.yinzhengjie.org.cn ~]#
8>.重復上述步驟
本實驗總共有兩個zabbix proxy,因此重復上述步驟即可,注意改動數據庫名稱喲~
三.zabbix webUI添加相應的配置信息
1>.點擊"創建代理"
2>.填寫zabbix proxy的信息
3>.zabbix proxy添加完成
4>.使用Zabbix proxy監控CentOS操作系統
博主推薦閱讀: https://www.cnblogs.com/yinzhengjie2020/p/12344057.html
5>.配置監控主機信息,需要指定zabbix proxy
6>.為agent指定主動模式的監控模板
自定義主動模式監控模板快速制作,博主推薦閱讀: https://www.cnblogs.com/yinzhengjie2020/p/12343243.html
7>.zabbix proxy監控的主機添加成功
8>.被動模式配置
如果出現問題請不要慌張,思考在哪一個步驟出現問題了,解決掉即可。
被動模式和主動模式步驟類似,需要注意以下幾點:
(1)數據庫名稱需要改變;
(2)數據庫的授權用戶一定要配置清除;
(3)在zabbix proxy配置文件中修改相應的數據庫配置信息,特別注意得改動ProxyMode的值為1;
(4)在zabbix webUI添加zabbix proxy信息,記得勾選被動模式;
(5)在創建的zabbix proxy后添加主機時記得選擇對應的proxy即可;
9>.zabbix 配置出錯常見解決方案
各組件版本不一致引發的問題:
問題描述:
zabbix server版本並不會向下兼容,如果你zabbix server使用的4.x以上版本,推薦zabbix proxy盡量選擇和zabbix server相同的版本,否則你會發現在配置zabbix server和zabbix proxy配置分布式監控系統時自然是失敗的;
zabbix server和zabbix java gateway版本也推薦設置成一致,否則你會發現在使用zabbix server監控類似於tomcat,redis時始終無法獲取監控的數據。
解決思路:
建議采用相同的安裝方式,可以使用yum方式安裝,也可以使用源碼方式或者二進制方式安裝均可。
基於yum方式安裝,請保存好rpm包,在擴容節點時注意版本問題,最好是有私有的yum倉庫,統一配置內網的私有倉庫,避免多次下載。
配置文件參數設置錯誤的問題:
問題描述:
這種情況大多數發生在zabbix agent的配置文件中,剛剛接觸zabbix 監控系統的小伙伴經常會出現配置文件出錯。
解決思路:
可以使用測試工具和日志來排查問題,比如zabbix_get工具,日志是運維排錯的基本功,千萬別忽略日志的重要性。