1. 程式人生 > 實用技巧 >zabbix分散式架構

zabbix分散式架構

架構
zabbix分散式架構

yum install mysql-devel gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml -y

二、服務端安裝
1、安裝配置資料庫
yum -y install mariadb-server
2、資料庫開機自啟動
systemctl enable mariadb
3、啟動資料庫
systemctl start mariadb
4、初始化資料庫
mysql_secure_installation
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] Y
New password: password
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y

  • Dropping test database...
    ... Success!
  • Removing privileges on test database...
    ... Success!
    Reloading the privilege tables will ensure that all changes made so far
    will take effect immediately.
    Reload privilege tables now? [Y/n] Y
    ... Success!
    Cleaning up...
    All done! If you've completed all of the above steps, your MariaDB
    installation should now be secure.
    Thanks for using MariaDB!
    5、建立zabbix資料庫、使用者及密碼
    mysql -uroot -pPASSWORD -e "create database zabbix default character set utf8 collate utf8_bin;"
    mysql -uroot -pPASSWORD -e "grant all on zabbix.* to 'zabbix'@'%' identified by 'XXXXXX';"
    6、資料庫登入測試
    [[email protected] yum.repos.d]# mysql -uzabbix -pXXXXXX
    Welcome to the MariaDB monitor. Commands end with ; or \g.
    Your MariaDB connection id is 16
    Server version: 5.5.56-MariaDB MariaDB Server
    Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    MariaDB [(none)]> show databases;
    +--------------------+
    | Database |
    +--------------------+
    | information_schema |
    | zabbix |
    +--------------------+
    2 rows in set (0.00 sec)
    MariaDB [(none)]> use zabbix
    Database changed
    MariaDB [zabbix]> show tables
    -> ;
    Empty set (0.00 sec)

三、安裝zabbix伺服器端
1、安裝zabbix服務
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-get
2、匯入zabbix資料表結構
cd /usr/share/doc/zabbix-server-mysql-3.0.14
[[email protected] zabbix-server-mysql-3.0.14]# gzip -d create.sql.gz
[[email protected] zabbix-server-mysql-3.0.14]# cat create.sql | mysql -uzabbix -pXXXXXX zabbix
3、配置zabbix配置檔案
[[email protected] ~]# cp /etc/zabbix/zabbix_server.conf{,.bak}
[[email protected] ~]# vim /etc/zabbix/zabbix_server.conf
LogFileSize=1024
DBPassword=XXXXXX
CacheSize=1024M
定義時區
[[email protected] ~]# cp /etc/httpd/conf.d/zabbix.conf{,.bak}
[[email protected] ~]# vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai
4、開啟zabbix並設定為開機自啟動
[[email protected] ~]# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/z
abbix-server.service.[[email protected] ~]# systemctl start zabbix-server
[[email protected] ~]# systemctl status zabbix-server
● zabbix-server.service - Zabbix Server
Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-01-03 12:59:44 CST; 5s ago
Process: 2445 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 2447 (zabbix_server)
CGroup: /system.slice/zabbix-server.service
└─2447 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
Jan 03 12:59:44 systemd[1]: Starting Zabbix Server...
Jan 03 12:59:44 systemd[1]: zabbix-server.service: Supervising process 2447 which is not our chi...xits.
Jan 03 12:59:44 systemd[1]: Started Zabbix Server.
Hint: Some lines were ellipsized, use -l to show in full.
5、啟動http並設定開機自啟動
[[email protected] ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.ser
vice.[[email protected] ~]# systemctl start httpd
[[email protected] ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-01-03 13:00:33 CST; 5s ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 2479 (httpd)
Status: "Processing requests..."
CGroup: /system.slice/httpd.service
├─2479 /usr/sbin/httpd -DFOREGROUND
├─2481 /usr/sbin/httpd -DFOREGROUND
├─2482 /usr/sbin/httpd -DFOREGROUND
├─2483 /usr/sbin/httpd -DFOREGROUND
├─2484 /usr/sbin/httpd -DFOREGROUND
└─2485 /usr/sbin/httpd -DFOREGROUND
Jan 03 13:00:30 systemd[1]: Starting The Apache HTTP Server...
Jan 03 13:00:33 httpd[2479]: AH00558: httpd: Could not reliably determine the server's fully qua...ssage
Jan 03 13:00:33 systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.

四、進入web管理介面配置
http://172.16.65.149/zabbix
zabbix分散式架構

所有檢測均OK

zabbix分散式架構

zabbix分散式架構

zabbix分散式架構

zabbix分散式架構

zabbix管理網頁初始賬號密碼
Admin
zabbix

五、監控交換機配置
交換機SNMP配置
snmp-server community xxxxx ro
snmp-server community xxxxx rw
linux上安裝net-snmp net-snmp-tuils包測試snmp訪問
[[email protected] ~]# yum -y install net-snmp net-snmp-utils
snmpwalk -v 2c -c mflexnpm 10.100.0.46 1.3.6.1.2.1.2.2.1.10.1 檢視埠1的計數
[[email protected] ~]# snmpwalk -v 2c -c xxxxxx 10.100.0.46 1.3.6.1.2.1.2.2.1.10.1
IF-MIB::ifInOctets.1 = Counter32: 1998
在zabbix上將snmp的變數加入
管理-->一般-->巨集
zabbix分散式架構

zabbix分散式架構

  • zabbix_proxy安裝
    軟體安裝
    rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
    cat /etc/yum.repos.d/zabbix.repo
    yum -y install -y zabbix-proxy zabbix-proxy-mysql mariadb-server
    建立資料庫
    systemctl enable mariadb
    systemctl start mariadb
    mysql_secure_installation
    mysql -uroot -pPASSWORD -e "create database zabbix_proxy default character set utf8 collate utf8_bin;"
    mysql -uroot -pPASSWORD -e "grant all on zabbix_proxy.* to 'zabbix_proxy'@'%' identified by 'XXXXXX';"
    cd /usr/share/doc/zabbix-proxy-mysql-3.0.14
    zcat schema.sql.gz | mysql -uzabbix_proxy -pXXXXXX zabbix_proxy
    proxy配置檔案修改
    cp /etc/zabbix/zabbix_proxy.conf{,.bak}

[[email protected] ~]# grep '^[a-Z]' /etc/zabbix/zabbix_proxy.conf
Server=172.16.65.149
Hostname=XXXPRODPROXY
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=1024
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=XXXXXX
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
ConfigFrequency=60 #zabbix proxy從zabbix server取得配置資料的頻率
DataSenderFrequency=60 #zabbix proxy傳送監控到的資料給zabbix server的頻率
CacheSize=4G #解決記憶體溢位的問題,預設8M,把此引數調整至4G,加大存放hosts和items資料的快取
ProxyOfflineBuffer=10 #當zabbix proxy與server無法連線時保留資料庫的時間間隔,預設1小時,調整為10小時,防止這段時間監控資料丟失,設定太長的話,zabbix proxy重新推送資料到zabbix server會導致雙方伺服器的壓力增大
ProxyLocalBuffer=2 #zabbix_proxy在本地保留歷史資料的時間,2小時
HistoryCacheSize=512M #加大存放歷史資料的快取
[[email protected] ~]# grep '^[a-Z]' /etc/zabbix/zabbix_proxy.conf
Server=172.16.65.149
Hostname=XXXXPRODPROXY
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=1024
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=XXXXXX
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
ConfigFrequency=60
DataSenderFrequency=60
CacheSize=4G
ProxyOfflineBuffer=10
systemctl enable zabbix-proxy
systemctl start zabbix-proxy
ss -tnl | grep 10051

在zabbix-server新增proxy
zabbix分散式架構

server上新增解析
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.65.147 xxxxxODPROXY
172.16.2.178 xxxxPRODPROXY

zabbix分散式架構

zabbix分散式架構

zabbix分散式架構

新增測試交換機
10.1.12.8
zabbix分散式架構

新增對zabbix_proxy的監控
1、zabbix-agent的安裝
yum install -y zabbix-agent
2、修改zabbix_agentd.conf
[[email protected] zabbix]# cat /etc/zabbix/zabbix_agentd.conf | grep '^[a-Z]'
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=1024
Server=172.16.65.147
ServerActive=172.16.65.149
Hostname=XXXRODPROXY
Include=/etc/zabbix/zabbix_agentd.d/
[[email protected] ~]# cat /etc/zabbix/zabbix_agentd.conf | grep '^[a-Z]'
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=1024
Server=172.16.2.178
ServerActive=172.16.65.149
Hostname=XXXPRODPROXY
Include=/etc/zabbix/zabbix_agentd.d/

新增zabbix-proxy的host並使用zabbix-proxy模板
zabbix分散式架構

zabbix分散式架構

zabbix模板下載
http://www.zabbix.org/wiki/Zabbix_Templates
https://share.zabbix.com/network_devices/h3c-switch-chinese

zabbix server引數調整
/etc/zabbix/zabbix_server.conf
CacheSize=8G
TrendCacheSize=2G
ValueCacheSize=2G

轉載於:https://blog.51cto.com/voidyao000/2374730