前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Zabbix 随笔:6.0 LTS 升级指南(一)

Zabbix 随笔:6.0 LTS 升级指南(一)

作者头像
IT小白Kasar
发布2022-02-24 08:29:52
1.3K0
发布2022-02-24 08:29:52
举报
文章被收录于专栏:个人技术随笔个人技术随笔

本文主要针对 Zabbix 5.0 LTS 如何升级到 6.0 LTS 做一个探讨。

正文

本文环境

注意本文环境,有可能与您的环境有所出入,所以问题有可能不同!

  • CentOS 7.9.2009
  • Mariadb 10.3
  • Zabbix LTS 5.0.20
  • 虚拟机环境为 VMware
Zabbix 5.0.20
Zabbix 5.0.20

升级思路

系统升级 –> 数据库升级 –> Zabbix Server 升级

停止相关服务

代码语言:javascript
复制
systemctl stop  zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm mariadb

准备工作

安装 epel 源、yum-utils 工具

删除重复/未使用的安装包(可选)

安装 dnf(C8 默认安装工具,yum 的升级版)

升级至 CentOS 8

安装 CentOS 8 的镜像源(本文采用阿里的源),由于 CentOS 8 已经停止技术支持了,所以需要采用 centos-valut 的 yum 源。

升级 epel 8 的源

移除旧内核及冲突的软件。

版本升级 首先遇到的问题是 CentOS 8 的源在更新时候出现了失效

执行下面的命令,继续执行更新 由于本身 Zabbix 采用 all-in-one 的方式安装的,所以会出下图的问题,此时需要增加 CentOS 8 的 mariadb 源,而 Zabbix 6.0 LTS 推荐的数据库版本为10.6,因此建议添加 10.6 的 yum 源

继续执行更新命令此时会出现报错,如下图所示,主要原因为在 7 版本和 8 版本软件名称发生了变化,例如 Centos7里的 python3-rpmconf 到了 8 会变成 python36-rpmconf

由于这些软件有一些依赖关系,卸载后会导致 RPM 无法正常使用,所以处理的时候不能够直接卸载,而是删除包信息,不卸载软件(注意根据报错调整,你的版本也许不是这个)

操作完上面步骤后输入上面的升级命令。

完成升级后查看版本

此时内核版本号未变化,需要重启生效
此时内核版本号未变化,需要重启生效

重启服务器

代码语言:javascript
复制
reboot

查看内核

安装 CentOS 8 Minimal 相关组件

代码语言:javascript
复制
dnf groupupdate "Core" "Minimal Install" -y

Zabbix 部分

升级 Zabbix 源

代码语言:javascript
复制
cat <<EOF > /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

导入 GPG Key

代码语言:javascript
复制
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

升级相关组件

代码语言:javascript
复制
dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent

启动相关组件

代码语言:javascript
复制
systemctl start zabbix-server zabbix-agent nginx php-fpm 

升级数据库

代码语言:javascript
复制
mysql_upgrade -uroot -pxiaoyu123
systemctl restart mariadb

报错解决 如果此时发现数据库无法连接上,请检查 firewalld 服务和 selinux 是否开启(可选)

代码语言:javascript
复制
systemctl stop firewalld 
systemctl disable firewalld 
setenforce 0 

出现下面问题进入 zabbix 数据库输入以下命令即可解决

代码语言:javascript
复制
mysql -uroot -p
use zabbix
SET GLOBAL innodb_strict_mode=OFF;
exit
数据库升级失败
数据库升级失败
数据库升级成功
数据库升级成功

修改 Zabbix Server 配置

代码语言:javascript
复制
vim /etc/zabbix/zabbix_server.conf
DBPassword=xiaoyu123
添加数据库密码
添加数据库密码

修改 Nginx 配置 需要将 ngnix.conf 里 server 块 80 端口进行注释,如下图 1,其次将 conf.d 里的 zabbix.conf 的 80 端口取消注释,如下图 2。

代码语言:javascript
复制
vim /etc/nginx/nginx.conf
vim /etc/nginx/conf.d/zabbix.conf
去掉注释
去掉注释
添加注释
添加注释

前端效果

结语

由于 CentOS 8 已经进入到了 EOL 状态了,建议使用其他发行版本,很多发发行版本已经提供了转换工具,或者采用 ubuntu、debian 这样的发行版本安装新版的 Zabbix 。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-02-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 正文
    • 本文环境
      • 升级思路
        • 停止相关服务
          • 准备工作
            • Zabbix 部分
            • 结语
            相关产品与服务
            数据库
            云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档