Оглавление
Обновим Zabbix Server до версии 6
Подготовка, смотрим текущие версии ПО
Смотрим текущую версию ОС
cat /etc/*release
NAME=”Debian GNU/Linux”
VERSION_ID=”10″
VERSION=”10 (buster)”
VERSION_CODENAME=buster
Смотрим текущую версию сервера
zabbix_server -V
Revision 91e8333180 28 June 2021, compilation time: Mar 31 2021 10:40:06
Смотрим установленные Zabbix пакеты
apt list --installed | grep zabbix
zabbix-agent/unknown,now 1:5.2.7-1+debian10 amd64 [installed]
zabbix-apache-conf/unknown,now 1:5.2.7-1+debian10 all [installed]
zabbix-frontend-php/unknown,now 1:5.2.7-1+debian10 all [installed]
zabbix-get/unknown,now 1:5.2.7-1+debian10 amd64 [installed]
zabbix-release/unknown,now 1:5.2-1+debian10 all [installed]
zabbix-server-mysql/unknown,now 1:5.2.7-1+debian10 amd64 [installed]
Таким образом, мы будем обновлять Zabbix Server 5.2.7 на ОС Debian 10.
Останавливаем сервер
systemctl stop zabbix-server
Резервируем текущий сервер
Создаем папки для бекапов
mkdir -p /zabbix_backup/bin_files /zabbix_backup/conf_files /zabbix_backup/doc_files /zabbix_backup/web_files /zabbix_backup/db_files
Копируем binary, doc и conf файлы Zabbix
Некоторых файлов может не быть, в зависимости от конфигурации web сервера, поэтому используем 2>/dev/null для игнорирования ошибок копирования
cp -rp /etc/zabbix/zabbix_server.conf /zabbix_backup/conf_files
cp -rp /usr/sbin/zabbix_server /zabbix_backup/bin_files
cp -rp /usr/share/doc/zabbix-* /zabbix_backup/doc_files
cp -rp /etc/httpd/conf.d/zabbix.conf /zabbix_backup/conf_files 2>/dev/null
cp -rp /etc/apache2/conf-enabled/zabbix.conf /zabbix_backup/conf_files 2>/dev/null
cp -rp /etc/zabbix/php-fpm.conf /zabbix_backup/conf_files 2>/dev/null
Копируем frontend Zabbix файлы
cp -rp /usr/share/zabbix/ /zabbix_backup/web_files
Копируем базу SQL Zabbix
Убедиться что на диске достаточно места
df -h
Смотрим, какую базу надо бэкапить
mysql -uroot
mysql> show databases;
| Database |
+——————–+
…
| zabbix |
+——————–+
Бэкапим базу
mysqldump -h localhost -u'root' --single-transaction 'zabbix' | gzip > /zabbix_backup/db_files/zabbix_backup.sql.gz
Апгрейд Zabbix Server и Zabbix Frontend
Команды для Debian 10
Удаляем старый репозиторий, чтобы установить новый
dpkg --purge zabbix-release
Removing zabbix-release (1:5.2-1+debian10) …
Purging configuration files for zabbix-release (1:5.2-1+debian10) …
Обновляем Zabbix и на вопрос что делать с конфигурацией нажимаем enter чтобы сохранить текущую конфигурацию, заодно обновим установленные у нас пакеты zabbix-agent и zabbix-get:
cd /tmp wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_6.0-1+debian$(lsb_release -rs)_all.deb dpkg -i zabbix-release_6.0-1+debian$(lsb_release -rs)_all.deb apt update apt install -y --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent zabbix-get
Команды для Ubuntu 20.04, 18.04 на всякий случай
Удаляем старый репозиторий, чтобы установить новый
dpkg --purge zabbix-release
Обновляем Zabbix и на вопрос что делать с конфигурацией нажимаем enter чтобы сохранить текущую конфигурацию. Также у нас установлены пакеты zabbix-get и zabbix-agent, обновим и их:
cd /tmp wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu$(lsb_release -rs)_all.deb sudo dpkg -i zabbix-release_6.0-1+ubuntu$(lsb_release -rs)_all.deb apt update apt install -y --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent zabbix-get
Обновляем БД Zabbix
Еще раз смотрим какие пакеты zabbix теперь установлены
apt list --installed | grep zabbix
zabbix-agent/unknown,now 1:6.0.4-1+debian10 amd64 [installed]
zabbix-apache-conf/unknown,now 1:6.0.4-1+debian10 all [installed]
zabbix-frontend-php/unknown,now 1:6.0.4-1+debian10 all [installed]
zabbix-get/unknown,now 1:6.0.4-1+debian10 amd64 [installed]
zabbix-release/unknown,now 1:6.0-1+debian10 all [installed]
zabbix-server-mysql/unknown,now 1:6.0.4-1+debian10 amd64 [installed]
Отлично, видим что все установленные пакеты обновлены.
Однако, необновленной остается БД, это можно увидеть если открыть фронтэнд, то появится ошибка “Database error
The Zabbix database version does not match current requirements. Your database version: 5020000. Required version: 6000000. Please contact your system administrator.”
Просто запускаем Zabbix и он обновит базу сам
systemctl start zabbix-server
Обновление базы данных может занять очень длительное время. Посмотреть статус обновления можно командой:
cat /var/log/zabbix/zabbix_server.log | grep database
Однако, мы вместо статуса обновления базы получим ошибку “Unable to start Zabbix server due to unsupported MariaDB database server version”
212510.699 Use of supported database version is highly recommended.
Дальше у нас два пути:
– обновляем БД
– игнорируем эту ошибку добавлением параметра “AllowUnsupportedDBVersions=1” в файл конфигурации Zabbix server /etc/zabbix/zabbix_server.conf
Второе все же не очень правильно, так как может повлечь за собой ошибки в будущем, поэтому мы обновим БД MariaDB
Вуаля, после обновления БД Zabbix практически сразу сам подключится к базе и обновит ее.
214211.872 starting automatic database upgrade
214211.877 completed 0% of database upgrade
214211.905 completed 1% of database upgrade
214211.921 completed 2% of database upgrade
…
214216.880 completed 98% of database upgrade
214216.883 completed 99% of database upgrade
214216.885 completed 100% of database upgrade
214216.885 database upgrade fully completed
214216.887 database could be upgraded to use primary keys in history tables
Чистим кэш браузера
Почистить кэш браузера крайне рекомендуется во избежании проблем отображения контента сайта.
Проверяем версию Zabbix
zabbix_server -V
Revision 3d787ff402e 3 May 2022, compilation time: Apr 6 2022 13:22:31
Zabbix сервер обновлен до версии 6.
Обновим Zabbix Proxy до версии 6
Действуем по схеме, аналогичной обновлению сервера
Подготовка, смотрим текущие версии ПО
Смотрим текущую версию ОС
cat /etc/*release
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION=”Ubuntu 20.04.2 LTS”
NAME=”Ubuntu”
VERSION=”20.04.2 LTS (Focal Fossa)”
Смотрим текущую версию прокси
zabbix_proxy -V
Revision 798506596c 29 March 2021, compilation time: Mar 11 2021 14:16:59
Смотрим установленные Zabbix пакеты
apt list --installed | grep zabbix
zabbix-get/now 1:5.2.6-1+ubuntu20.04 amd64 [installed,upgradable to: 1:5.2.7-1+debian10]
zabbix-proxy-mysql/now 1:5.2.6-1+ubuntu20.04 amd64 [installed,upgradable to: 1:5.2.7-1+debian10]
zabbix-release/unknown,now 1:5.2-1+debian10 all [installed]
Таким образом, мы будем обновлять Zabbix Proxy 5.2.6 на ОС Ubuntu 20.04.
Останавливаем прокси
systemctl stop zabbix-proxy
Апгрейд Zabbix Proxy на ОС Ubuntu 20.04
Удаляем старый репозиторий, чтобы установить новый
dpkg --purge zabbix-release
Обновляем Zabbix и на вопрос что делать с конфигурацией нажимаем enter чтобы сохранить текущую конфигурацию, заодно обновим установленный у нас пакет zabbix-get:
cd /tmp wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu$(lsb_release -rs)_all.deb sudo dpkg -i zabbix-release_6.0-1+ubuntu$(lsb_release -rs)_all.deb apt update apt install -y --only-upgrade zabbix-proxy-mysql zabbix-get
Еще раз смотрим какие пакеты zabbix теперь установлены
apt list --installed | grep zabbix
zabbix-get/focal,now 1:6.0.4-1+ubuntu20.04 amd64 [installed]
zabbix-proxy-mysql/focal,now 1:6.0.4-1+ubuntu20.04 amd64 [installed]
zabbix-release/focal,now 1:6.0-1+ubuntu20.04 all [installed]
Видим что все установленные пакеты обновлены.
Запускаем Zabbix Proxy и проверяем версию
Запускаем службу Zabbix Proxy:
systemctl start zabbix-proxy
Добавляем службу Zabbix Proxy в автозагрузку:
systemctl enable zabbix-proxy
Проверяем версию Zabbix Proxy:
zabbix_proxy -V
Revision 3d787ff402e 3 May 2022, compilation time: Apr 6 2022 13:22:31
Обновим Zabbix Agent до версии 6
В прошлых примерах мы уже обновляли агента Zabbix вместе с другими компонентами. Если же Zabbix Agent установлен отдельно, то обновляем его по той же самой схеме
Подготовка, смотрим текущие версии ПО
Смотрим текущую версию ОС
cat /etc/*release
NAME=”CentOS Linux”
VERSION=”7 (Core)”
ID=”centos”
ID_LIKE=”rhel fedora”
VERSION_ID=”7″
Смотрим текущую версию агента:
zabbix_agentd -V
Revision c218b76dad 28 June 2021, compilation time: Jun 28 2021 12:24:54
Смотрим установленные Zabbix пакеты
yum list installed | grep zabbix
zabbix-agent.x86_64 5.0.13-1.el7 @zabbix
zabbix-release.noarch 5.0-1.el7 installed
Таким образом, мы будем обновлять Zabbix Agent 5.0.13 на ОС CentOS 7.
Останавливаем агента
systemctl stop zabbix-agent
Апгрейд Zabbix Agent на ОС на ОС CentOS 7
Обновляем старый репозиторий:
rpm -Uhv https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-1.el7.noarch.rpm
Подготовка… ################################# [100%]
Обновление / установка…
1:zabbix-release-6.0-1.el7 ################################# [ 50%]
Очистка / удаление…
2:zabbix-release-5.0-1.el7 ################################# [100%]
Запускаем обновление пакетов:
yum update
Еще раз смотрим какие пакеты zabbix теперь установлены
yum list installed | grep zabbix
zabbix-release.noarch 6.0-1.el7 installed
Видим что Zabbix Agent обновлен.
Запускаем Zabbix Agent и проверяем версию
Запускаем службу Zabbix Proxy:
systemctl start zabbix-agent
Добавляем службу Zabbix Proxy в автозагрузку:
systemctl enable zabbix-agent
Проверяем версию Zabbix Proxy:
zabbix_agentd -V
Revision 3d787ff402e 3 May 2022, compilation time: May 3 2022 10:30:05
Ссылки
https://bestmonitoringtools.com/upgrade-zabbix-to-the-latest-version/