首頁 > 軟體

Zabbix3.0.0升級Zabbix3.2.1版本

2020-06-16 17:21:40

背景: 

近期公司的zabbix經常有已出的告警無法消除,必須重新啟動後才能消除告警的Bug。後來了解到這是zabbix3.0.0版本的一個bug,所以考慮把在用的zbbix版本升級至最新版本3.2.1。

zabbix3.0.0版本與zabbix3.2.1版本的升級很簡單,但是有許多小問題。比如兩個版本的資料庫表不一致的問題,所以一定要做好備份的操作。

zabbix伺服器相關目錄:

備份目錄:    /opt/backups/zabbix
zabbix主目錄:  /opt/apps/zabbix
伺服器端組態檔:/opt/conf/zabbix/zabbix_server.conf
前端頁面目錄: /opt/webapps/zabbix
服務啟動指令碼: /etc/init.d/zabbix_server

升級步驟:

1:官網下載zabbix安裝包zabbix-3.2.1.tar.gz,解壓,並在新的目錄中編譯安裝新版本。

# tar -zxvf zabbix-3.2.1.tar.gz
# cd zabbix-3.2.1
# ./configure --prefix=/opt/apps/zabbix.3.2 --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
# make install

2:停掉正在執行的zabbix服務,確保沒有新資料寫入資料庫。

# /etc/init.d/zabbix_server stop

3:備份原zabbix的資料庫資料,以及相關組態檔。

# mysqldump -h 127.0.0.1 -u zabbix -ppassword zabbix > /opt/backup/zabbix/zabbix_bak.sql
# cp -p /opt/conf/zabbix/zabbix_server.conf /opt/backup/zabbix/zabbix_server.conf.3.0
# cp -p /opt/webapps/zabbix/conf/zabbix.conf.php /opt/backup/zabbix/zabbix.conf.php.3.0

4:替換新版本的相關組態檔,參考舊組態檔設定服務。

# cp -p /opt/apps/zabbix.3.2/etc/zabbix_server.conf /opt/conf/zabbix/zabbix_server.conf
# grep -v "^#" zabbix_server.conf | grep -v "^$"
LogFile=/opt/logs/zabbix/zabbix_server.log
PidFile=/opt/logs/zabbix/zabbix_server.pid
DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=xxxxxxxx
DBPort=3306
JavaGateway=xx.xx.xx.xx
JavaGatewayPort=10052
StartJavaPollers=5
Timeout=4
AlertScriptsPath=/opt/apps/zabbix/share/zabbix/alertscripts
LogSlowQueries=3000

5:替換zabbix主目錄,用新的zabbix執行bin檔案啟動服務。

# mv /opt/apps/zabbix /opt/apps/zabbix.3.0
# mv /opt/apps/zabbix.3.2 /opt/apps/zabbix
複製相關的指令碼檔案:
# cp -rp /opt/apps/zabbix.3.0/share/zabbix/alertscripts/* /opt/apps/zabbix
# /etc/init.d/zabbix_server start

正常情況下,新的zabbix服務會自動更新mysql資料庫中的欄位,如果出現以下相關錯誤:

query failed: [1060] Duplicate column name 'exec_params' [alter table media_type add exec_params varchar(255) default '' not null]

則需要在mysql中刪除相關表的欄位後再重新啟動服務。

註:需刪除的欄位:media_type表中的exec_params欄位,hosts表中所有tls開頭的欄位。

這時登入zabbix頁面會提示資料庫版本不一致,那是因為前端頁面使用的zabbix資料庫版本與後端服務使用的版本不一致。需替換前端頁面為新版本頁面。

6:替換zabbix前端頁面。

# mv /opt/webapps/zabbix /opt/webapps/zabbix.3.0
# cp -rp /opt/src/frontends/php /opt/webapps/zabbix
# cp -p /opt/backup/zabbix/zabbix.conf.php.3.0 /opt/webapps/zabbix/conf/zabbix.conf.php

至此,zabbix升級完畢。

一些Zabbix相關教學集合

CentOS 7.2 安裝部署 Zabbix 3.0.4 詳解  http://www.linuxidc.com/Linux/2016-11/137671.htm

Ubuntu 14.04下Zabbix2.4.5 原始碼編譯安裝  http://www.linuxidc.com/Linux/2015-05/117657.htm

安裝部署分散式監控系統Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm

Zabbix基本設定及監控主機 http://www.linuxidc.com/Linux/2016-12/138504.htm

CentOS 7.0 x64下Zabbix 3.0 安裝筆記  http://www.linuxidc.com/Linux/2016-11/137044.htm

CentOS下Zabbix 3.0.4安裝部署 http://www.linuxidc.com/Linux/2017-01/139087.htm

CentOS 6.3下Zabbix監控MySQL資料庫引數 http://www.linuxidc.com/Linux/2013-05/84800.htm

64位元CentOS 6.2下安裝Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htm


IT145.com E-mail:sddin#qq.com