新聞中心
本文主要針對 Zabbix 5.0 LTS 如何升級到 6.0 LTS 做一個探討。

為漢臺等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及漢臺網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都做網(wǎng)站、成都網(wǎng)站建設(shè)、漢臺網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
正文
本文環(huán)境
注意本文環(huán)境,有可能與您的環(huán)境有所出入,所以問題有可能不同!
- CentOS 7.9.2009
- Mariadb 10.3
- Zabbix LTS 5.0.20
- 虛擬機環(huán)境為 VMware
Zabbix 5.0.20
升級思路
系統(tǒng)升級 –> 數(shù)據(jù)庫升級 –> Zabbix Server 升級
停止相關(guān)服務(wù)
systemctl stop zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm mariadb
準(zhǔn)備工作
安裝 epel 源、yum-utils 工具
yum -y install epel-release
yum -y install yum-utils rpmconf
刪除重復(fù)/未使用的安裝包(可選)
rpmconf -a
package-cleanup --leaves
package-cleanup --orphans
安裝 dnf(C8 默認安裝工具,yum 的升級版)
yum -y install dnf
升級至 CentOS 8
dnf -y upgrade
如果是 CentOS 7.6 版本安裝會遇到報錯,原因是因為 Python 版本不匹配,需要升級 Pyhton 版本與安裝 dnf 相關(guān)組件
yum update -y python*
yum install -y dnf-data dnf-plugins-core libdnf-devel libdnf python2-dnf-plugin-migrate dnf-automatic
安裝 CentOS 8 的鏡像源(本文采用阿里的源),由于 CentOS 8 已經(jīng)停止技術(shù)支持了,所以需要采用 centos-valut 的 yum 源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
由于 CentOS 8 已經(jīng)停止支持了,以致源切換到了 centos-valut 下,本文采用將原有源備份成其他名字的方法
升級 epel 8 的源
dnf -y upgrade epel-release
移除舊內(nèi)核及沖突的軟件
rpm -e `rpm -q kernel`
rpm -e --nodeps sysvinit-tools
版本升級
dnf -y --releasever=8 --allowerasing --setopt=deltarpm=false distro-sync
首先遇到的問題是 CentOS 8 的源在更新的時候出現(xiàn)了失效
執(zhí)行下面的命令,繼續(xù)執(zhí)行更新
cd /etc/yum.repos.d/
mkdir bak
mv CentOS-Linux-* bak/
mv CentOS-Base.repo.rpmsave CentOS-Base.repo
由于本身 Zabbix 采用 all-in-one 的方式安裝的,所以會出現(xiàn)下圖的問題,此時需要增加 CentOS 8 的 mariadb 源,而 Zabbix 6.0 LTS 推薦的數(shù)據(jù)庫版本為 10.6,因此建議添加 10.6 的 yum 源
cat </etc/yum.repos.d/mariadb.repo
# MariaDB 10.6 CentOS repository list - created 2022-01-16 15:10 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
baseurl = https://mirrors.cloud.tencent.com/mariadb/yum/10.6/centos8-amd64
module_hotfixes=1
gpgkey=https://mirrors.cloud.tencent.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF
繼續(xù)執(zhí)行更新命令
此時會出現(xiàn)報錯,如下圖所示,主要原因為在 7 版本和 8 版本軟件名稱發(fā)生了變化,例如 Centos7 里的 python3-rpmconf 到了 8 會變成 python36-rpmconf
由于這些軟件有一些依賴關(guān)系,卸載后會導(dǎo)致 RPM 無法正常使用,所以處理的時候不能夠直接卸載,而是刪除包信息,不卸載軟件(注意根據(jù)報錯調(diào)整,你的版本也許不是這個)
rpm -e --justdb python36-rpmconf-1.0.22-1.el7.noarch rpmconf-1.0.22-1.el7.noarch
rpm -e --justdb yum-3.4.3-168.el7.centos.noarch yum-utils-1.1.31-54.el7_8.noarch python2-dnf-plugin-migrate-4.0.2.2-3.el7_6.noarch yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch
操作完上面的步驟后繼續(xù)升級命令
升級完成
完成升級后查看版本
重啟服務(wù)器
reboot
查看內(nèi)核
安裝 CentOS 8 Minimal 相關(guān)組件
dnf groupupdate "Core" "Minimal Install" -y
Zabbix 部分
升級 Zabbix 源,本文采用清華源
cat </etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/6.0/rhel/8/\$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/non-supported/rhel/8/\$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
EOF
導(dǎo)入 GPG Key
curl https://mirrors.tuna.tsinghua.edu.cn/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.tuna.tsinghua.edu.cn/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
curl https://mirrors.tuna.tsinghua.edu.cn/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.tuna.tsinghua.edu.cn/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
升級相關(guān)組件
dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
啟動相關(guān)組件
systemctl start zabbix-server zabbix-agent nginx php-fpm
升級數(shù)據(jù)庫
mysql_upgrade -uroot -pxiaoyu123
systemctl restart mariadb
報錯解決
如果此時發(fā)現(xiàn)數(shù)據(jù)庫無法連接上,請檢查 firewalld 服務(wù)和 selinux 是否開啟(可選)
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
出現(xiàn)下面的問題,進入 zabbix 數(shù)據(jù)庫輸入以下命令即可解決
mysql -uroot -p
use zabbix
SET GLOBAL innodb_strict_mode=OFF;
exit
數(shù)據(jù)庫升級失敗
升級成功
修改 Zabbix Server 配置
vim /etc/zabbix/zabbix_server.conf
DBPassword=xiaoyu123
修改 Nginx 配置
需要將 ngnix.conf 里 server 塊 80 端口進行注釋,如下圖 1,其次將 conf.d 里的 zabbix.conf 的 80 端口取消注釋,如下圖 2
vim /etc/nginx/nginx.conf
vim /etc/nginx/conf.d/zabbix.conf
添加注釋
取消注釋
前端效果
結(jié)語
由于 CentOS 8 已經(jīng)進入到了 EOL 狀態(tài)了,建議使用其他發(fā)行版本,很多發(fā)行版本已經(jīng)提供了轉(zhuǎn)換工具,或者采用 ubuntu、debian 這樣的發(fā)行版本安裝新版的 Zabbix 。
分享文章:Zabbix隨筆:6.0LTS升級指南之一
轉(zhuǎn)載源于:http://www.5511xx.com/article/dpescjs.html


咨詢
建站咨詢
