2024年6月4日,Zabbix团队宣布Zabbix7.0 LTS版本正式发布。
随着Zabbix 7.0 LTS的正式发布,它将为企业提供提供比以往任何版本都更容易使用的具有各种开箱即用的企业级功能的一体化监控解决方案。
zabbix7.0新功能如下:
1.通过定义灵活的基于场景的多步骤监控网站和Web应用程序。
2.通过自动proxy负载均衡和高可用性功能,
按需扩展Zabbix环境并确保100%的可用性。
3.Zabbix proxy现在支持将所有采集的指标存储在内存中。
4.为了大幅提升指标轮询的速度和扩展性,
同步式poller进程已被异步式poller取代。
5.集中控制数据采集超时可以更好地处理较长数据采集时间间隔的指标和自定义检查。
6.引入了多种新的仪表板小部件,使您能够更全面地了解您监控的指标和基础架构。
7.网络自动发现支持并行检查,将主机和服务发现的速度提高了10到100倍。
8.开箱即用的多因子认证(MFA)支持提供了企业级安全性,
并为配置用户认证方法提供了更大的灵活性。
9.更灵活的资源发现和管理
10.Zabbix 7.0 LTS预装了许多最受欢迎的供应商和云提供商的新模板
详细内容请参阅官方文档:
https://www.zabbix.com/rn/rn7.0.0
接下来我们就来尝试从zabbix6.4升级到7.0
一、环境
我的zabbix是安装在虚拟机环境
系统:Rocky Linux8.9
zabbix版本:6.4
PHP版本:7.4.3
数据库版本:maridb 11.1.2
nginx版本:1.14.1
[root@localhost ~]# zabbix_server --version
zabbix_server (Zabbix) 6.4.10
Revision 4da16fb82f5 13 December 2023, compilation time: Dec 13 2023 12:16:44
[root@localhost ~]# php -v
PHP 7.4.33 (cli) (built: Dec 12 2023 14:40:21) ( NTS )
[root@localhost ~]# mariadb --version
mariadb from 11.1.2-MariaDB, client 15.2 for Linux (x86_64) using readline 5.1
[root@localhost ~]# nginx -v
nginx version: nginx/1.14.1
二、备份数据,在升级之前,最好先备份一下数据库,因为我是虚拟机环境,所以直接生成快照。备份数据库方法如下
1.停止zabbix服务
sudo systemctl stop zabbix-server
sudo systemctl stop zabbix-agent2
2.备份maridb数据库(备份时间有点长,需要5-10分钟,取决于服务器性能)
mysqldump -u [用户名] -p[密码] [数据库名] > [备份文件.sql]
mysqldump -u root -p123456 --all-databases > all_databases_backup.sql
三、升级zabbix-server、zabbix-agent、php版本。
1、登录zabbix官网
https://www.zabbix.com/cn/download
2、根据自己的系统版本选择Zabbix-server,这里我选择的是Zabbix7.0 LTS,Rocky Linux8,mysql,NGINX
3、如果不清楚自己使用的是Nginx还是Apache,可以使用以下命令。查看服务器是否安装了Apache),如图输入nginx -v回复了版本号nginx version: nginx/1.14.1,说明服务器使用了nginx
[root@localhost ~]# nginx -v
nginx version: nginx/1.14.1
[root@localhost ~]# apachectl -v
-bash: apachectl: 未找到命令
[root@localhost ~]#
[root@localhost ~]# httpd -v
-bash: httpd: 未找到命令
4、根据zabbix官网的链接,升级zabbix版本
5、安装zabbix源
[root@localhost ~]# rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/8/x86_64/zabbix-release-7.0-5.el8.noarch.rpm
[root@localhost ~]# dnf clean all
6、升级php版本为8.0
[root@localhost ~]# dnf module switch-to php:8.0
7、安装Zabbix server,Web前端,agent
[root@localhost ~]# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
到这一步操作就完成了,不需要执行初始化数据库
8、启动zabbix-server,zabbix-agent2
# 启动Zabbix server
sudo systemctl start zabbix-server
# 启动Zabbix agent2
sudo systemctl start zabbix-agent2
9、重新登录zabbix,发现zabbix已经升级为7.0版本
四、异常处理
有群友反馈,升级zabbix版本之后,出现报错
报错:The Zabbix database version does not match current requirements. Your database version: 6030010. Required version: 7000000. Please contact your system administrator.
从官方教程看,这是因为数据库版本不一致导致的https://www.zabbix.com/documentation/current/zh/manual/installation/upgrade_notes_700
操作方法如下:
1、登录数据库
# 登录mysql
[root@localhost ~]# mysql -uroot -p
# 进入zabbix数据库
MariaDB [(none)]> use zabbix;
# 禁用变量
MariaDB [zabbix]> SET GLOBAL log_bin_trust_function_creators = 1;
Query OK, 0 rows affected (0.000 sec)
# 退出数据库
MariaDB [zabbix]> quit;
2、重启服务器
[root@localhost ~]# reboot
3、重启后重新登录zabbix,发现已经能正常访问
特别感谢CSDN博主 @NoyoWiFi 提供的技术支持