1. 程式人生 > >Ubuntu18.04搭建Zabbix3.4.2

Ubuntu18.04搭建Zabbix3.4.2

系統環境:

Zabbix-DB:

系統:ubuntu18.04 IP:172.17.0.2 DB:Mysql5.7.22

Zabbix-WEB:

系統:ubuntu18.04 IP:172.17.0.3 Apache:2.4.33 PHP:7.1.17


Zabbix-DB操作

建立資料庫zabbix,並且資料庫編碼使用utf8

mysql> create database zabbix character set utf8;
建立賬戶zabbix能從web連線到資料庫zabbix
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 
[email protected]
'172.17.0.3' IDENTIFIED BY 'ekjYBVNkwWW99'WITH GRANT OPTION;

Zabbix-WEB操作

下載zabbix安裝包

cd /usr/local/src/
wget https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.4.2/zabbix-3.4.2.tar.gz

解壓zabbix安裝包

tar -zxvf zabbix-3.4.2.tar.gz

建立使用者組zabbix,建立使用者zabbix,並且把使用者zabbix加入到使用者組zabbix中

groupadd zabbix
useradd zabbix -g zabbix -s /bin/false

匯入資料 按順序還原

mysql -u zabbix -p -h 172.17.0.2 zabbix < /usr/local/src/zabbix-3.4.2/database/mysql/schema.sql 
mysql -u zabbix -p -h 172.17.0.2 zabbix < /usr/local/src/zabbix-3.4.2/database/mysql/images.sql 
mysql -u zabbix -p -h 172.17.0.2 zabbix < /usr/local/src/zabbix-3.4.2/database/mysql/data.sql 

安裝zabbix

編譯時出現的幾個錯誤

configure: error: Invalid Net-SNMP directory - unable to find net-snmp-config
apt-get install libsnmp9-dev

configure: error: Unable to use libevent
apt-get install libevent-dev

編譯

./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/local/d/bin/mysql_config --with-net-snmp --with-libcurl
make && make install 

修改zabbix配置檔案

cat /usr/local/zabbix/etc/zabbix_server.conf
ListenPort=10051
LogFile=/usr/local/zabbix/logs/zabbix_server.log
LogFileSize=600
DebugLevel=3
DBHost=172.17.0.2
DBPort=3306
DBName=zabbix
DBUser=zabbix
DBPassword=ekjYBVNkwWW99
StartPollers=100
StartPollersUnreachable=60
StartTrappers=30
StartDiscoverers=30
ListenIP=0.0.0.0
CacheSize=256M
StartDBSyncers=50
HistoryCacheSize=128M
TrendCacheSize=64M
ValueCacheSize=128M
Timeout=30
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
LogSlowQueries=3000

修改php.ini

max_execution_time =300
max_input_time =600

安裝php的gettext模組

安裝php的模組有兩種方式:
一、重新編譯php,加上--with-gettext
二、動態安裝
1、下載同版本的php原包,解壓後進入ext目錄,目錄下便是模組
2、進入gettext目錄下執行:
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
3、在php.ini裡新增上gettext.so
extension = "gettext.so"
重啟apache


配置站點,複製站點目錄

cp -r /usr/local/src/zabbix-3.4.2/frontends/php /home/html/zabbix
啟動zabbix
/usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf #啟動zabbix服務端
/usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf  #啟動zabbix客戶端

錯誤
connection to database 'zabbix' failed: [1040] Too many connections
問題原因:Zabbix連線MySQL的請求比較多,而MySQL預設安裝時,最大連線數預設值為100,解決該問題的辦法就是把MySQL的最大連線數修改大一點,我改到1000.
然後重啟MySQL服務、Zabbix服務,問題解決
mysql>show variables like 'max_connections';(查可以看當前的最大連線數)
msyql>set global max_connections=1000;(設定最大連線數為1000,可以再次檢視是否設定成功)

開啟站點進行配置http://172.17.0.3/zabbix






預設賬號admin  密碼 zabbix


更改zabbix預設語言為簡體中文、替換監控影象上系統預設的中文字型

更改zabbix預設語言為簡體中文、替換監控影象上系統預設的中文字型
1、修改系統配置檔案,讓web頁面支援簡體中文顯示
vi /usr/local/nginx/html/zabbix/include/locales.inc.php #編輯修改
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false),
修改為
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => true),
:wq! #儲存退出
You are not able to choose some of the languages, because locales for them are not installed on the web server
dpkg-reconfigure locales  #檢視系統已經安裝的語言包
選擇 zh_CN.UTF-8 UTF-8 安裝
/etc/init.d/w restart
2、替換監控影象上系統預設的字型 #預設字型不支援中文,如果不替換,影象上會顯示亂碼
在Windows系統中的C:\Windows\Fonts目錄中複製出一箇中文字型檔案,例如msyh.ttf
把字型檔案msyh.ttf上傳到zabbix站點根目錄下fonts資料夾中
例如:/home/w/html/zabbix/fonts/
備份預設的字型檔案:DejaVusSans.ttf-bak
修改msyh.ttf名稱為DejaVusSans.ttf