2. Debian/Ubuntu

Обзор

Этот раздел описывает требуемые шаги для успешного обновления с Zabbix 5.4 до последней версии Zabbix 6.0.x с использованием официальных пакетов Zabbix для Debian/Ubuntu.

В то время как обновление Zabbix агентов не является обязательным шагом (но рекомендуемым), Zabbix сервер и прокси должны быть одной мажорной версии. Поэтому, при наличии сервер-прокси инсталляции, Zabbix сервер и все прокси должны быть остановлены и обновлены. Оставление работающих прокси при обновлении сервера более не принесёт никакой пользы, так как во время обновления прокси серверов их старые данных будут удалены, а новые данные не будут собираться пока конфигурация прокси не будет синхронизирована с сервером.

Обратите внимание, что при наличии прокси с SQLite базой данных, данные истории этих прокси будут потеряны до обновления, так как обновление базы данных SQLite не поддерживется и файл базы данных SQLite необходимо удалить вручную. Когда прокси запустится в первый раз и будет отсутствовать файл базы данных SQLite, прокси создаст его автоматически.

В зависимости от размера базы данных обновление базы данных до версии 6.0 может занять продолжительное время.

Перед выполнением обновления убедитесь, что прочитали все соответствующие заметки по обновлению!

Доступны следующие заметки по обновлению:

Обновление с Прочитайте заметки по обновлению полностью Важные заметки/изменения между версиями
5.4.x Для:
Zabbix 6.0
Повышены минимально требуемые версии баз данных;
Сервер/прокси не запустятся при наличии устаревшей базы данных;
Записи в журнале аудита будут потеряны из-за изменения структуры базы данных.
5.2.x Для:
Zabbix 5.4
Zabbix 6.0
Повышены минимально требуемые версии баз данных;
Агрегированные элементы данных более не являются отдельным типом.
5.0.x LTS Для:
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Минимально требуемая версия PHP повышена с 7.2.0 до 7.2.5.
4.4.x Для:
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Прекращена поддержка IBM DB2;
Минимально требуемая версия PHP повышена с 5.4.0 до 7.2.0;
Повышены минимально требуемые версии баз данных;
Изменилась директория с Zabbix PHP файлами.
4.2.x Для:
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Удалены способы оповещения Jabber, Ez Texting.
4.0.x LTS Для:
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Более старые прокси более не могут передавать данные на обновленный сервер;
Более новые агенты более не могут работать с более старым Zabbix сервером.
3.4.x Для:
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Библиотеки «libpthread» и «zlib» теперь обязательны;
Поддержка протокола в виде простого текста убрана и заголовок обязателен;
Zabbix агенты версий Pre-1.4 более не поддерживаются;
Параметр Server в конфигурации пассивного прокси теперь обязателен.
3.2.x Для:
Zabbix 3.4
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Поддержка SQLite в виде основной базы данных убрана для Zabbix сервера/веб-интерфейса;
Поддерживается Perl совместимые регулярные выражения (PCRE) вместо POSIX расширенных;
Библиотеки «libpcre» and «libevent» обязательны для Zabbix сервера;
Добавлены проверки кода завершения для пользовательских параметров, удаленных команд и элементов данных system.run[] без флага «nowait», а также для выполняемых Zabbix сервером скриптов;
Zabbix Java gateway необходимо обновить для поддержки новых функций.
3.0.x LTS Для:
Zabbix 3.2
Zabbix 3.4
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Обновление базы данных может быть медленным, в зависимости от размеров таблиц истории.
2.4.x Для:
Zabbix 3.0
Zabbix 3.2
Zabbix 3.4
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Минимально требуемая версия PHP повышена с 5.3.0 до 5.4.0
Необходимо указывать LogFile параметр агента
2.2.x LTS Для:
Zabbix 2.4
Zabbix 3.0
Zabbix 3.2
Zabbix 3.4
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Удалена поддержка распределенного мониторинга на основе нод
2.0.x Для:
Zabbix 2.2
Zabbix 2.4
Zabbix 3.0
Zabbix 3.2
Zabbix 3.4
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Минимально требуемая версия PHP повышена с 5.1.6 до 5.3.0;
Требуется чувствительная к регистру MySQL база данных для правильной работы сервера; для корректной работы Zabbix сервера с базой данных MySQL требуются кодировка utf8 и тип сравнения utf8_bin. Смотрите скрипты создания базы данных.
Вместо расширения PHP 'mysql' требуется расширение «mysqli».

Вы возможно захотите также ознакомиться с требованиями для 6.0.

Возможно, будет удобно запустить две параллельные SSH сессии на время обновления, выполняя шаги обновления в одной сессии и наблюдая за файлами журналов сервера/прокси в другой. Например, при выполнении tail -f zabbix_server.log или tail -f zabbix_proxy.log во второй SSH сессии будут отображаться последние записи из файла журнала и возможные ошибки в режиме реального времени. Такой подход может быть критичным для промышленных инсталяций.

Инструкции по обновлению между минорными версиями Zabbix 6.0.x (например, с 6.0.1 до 6.0.3) см. в разделе Обновление между минорными версиями.

Процедура обновления

1. Остановите процессы Zabbix

Остановите Zabbix сервер, чтобы быть уверенным, что в базу данных не будет происходить запись новых данных.

systemctl stop zabbix-server

При обновлении Zabbix прокси, агента или агента 2 остановите также и эти компоненты:

systemctl stop zabbix-proxy
       systemctl stop zabbix-agent
       systemctl stop zabbix-agent2
2. Сделайте резервную копию существующей базы данных Zabbix

Этот шаг очень важен. Убедитесь, что у вас имеется резервная копия вашей базы данных. Копия поможет, если процедура обновления закончится неудачно (отсутствие свободного места на диске, отключение питания, любая непредвиденная проблема).

3. Резервное копирование файлов конфигурации, PHP файлов и бинарных файлов Zabbix

Выполните резервное копирование бинарных файлов Zabbix, файлов конфигурации и папки с PHP файлами.

Файлы конфигурации:

mkdir /opt/zabbix-backup/
       cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/
       cp /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix-backup/

Файлы PHP и бинарные файлы Zabbix:

cp -R /usr/share/zabbix/ /opt/zabbix-backup/
       cp -R /usr/share/doc/zabbix-* /opt/zabbix-backup/
4. Обновите пакет конфигурации репозитория

Прежде чем приступить к обновлению, удалите ваш текущий пакет репозитория:

rm -Rf /etc/apt/sources.list.d/zabbix.list

Затем установите последний пакет конфигурации репозитория, чтобы обеспечить совместимость с новейшими пакетами и включить все последние обновления безопасности или исправления ошибок.

На Debian 12 выполните:

wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb
       dpkg -i zabbix-release_latest+debian12_all.deb

На Debian 11 выполните:

wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian11_all.deb
       dpkg -i zabbix-release_latest+debian11_all.deb

На Debian 10 выполните:

wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian10_all.deb
       dpkg -i zabbix-release_latest+debian10_all.deb

Для более старых версий Debian замените ссылку выше на правильную из репозитория Zabbix. Однако обратите внимание, что пакеты для этих версий могут не включать все компоненты Zabbix. Список включённых компонентов см. в пакетах Zabbix.

На Ubuntu 24.04, выполните:

wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu24.04_all.deb
       dpkg -i zabbix-release_latest+ubuntu24.04_all.deb

На Ubuntu 22.04, выполните:

wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu22.04_all.deb
       dpkg -i zabbix-release_latest+ubuntu22.04_all.deb

На Ubuntu 20.04 выполните:

wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu20.04_all.deb
       dpkg -i zabbix-release_latest+ubuntu20.04_all.deb

На Ubuntu 18.04 выполните:

wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu18.04_all.deb
       dpkg -i zabbix-release_latest+ubuntu18.04_all.deb

Для более старых версий Ubuntu замените ссылку выше на правильную из репозитория Zabbix. Однако обратите внимание, что пакеты для этих версий могут не включать все компоненты Zabbix. Список включённых компонентов см. в пакетах Zabbix.

Вы можете увидеть запрос о конфигурации репозитория Zabbix:

Configuration file '/etc/apt/sources.list.d/zabbix.list'
       ==> Deleted (by you or by a script) since installation.
       ==> Package distributor has shipped an updated version.
       What would you like to do about it ?  Your options are:
       Y or I  : install the package maintainer's version
       N or O  : keep your currently-installed version
       D       : show the differences between the versions
       Z       : start a shell to examine the situation
       The default action is to keep your current version.
       *** zabbix.list (Y/I/N/O/D/Z) [default=N] ?

Введите Y (или I), чтобы установить версию сопровождающего (мейнтейнера) пакета конфигурации репозитория Zabbix.

Затем обновите информацию о репозитории:

apt update
5. Обновите компоненты Zabbix

Для обновления компонентов Zabbix вы можете выполнить что-то вроде:

apt install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent
  • При использовании PostgreSQL замените в команде mysql на pgsql.
  • При обновлении прокси замените в команде server на proxy.
  • При обновлении агента 2 замените в команде zabbix-agent на zabbix-agent2 zabbix-agent2-plugin-*.

Обновление Zabbix агента 2 командой apt install zabbix-agent2 может привести к ошибке. Для более подробной информации, смотрите Известные проблемы.

Вы можете увидеть запрос о конфигурации Zabbix сервера (или прокси):

Configuration file '/etc/zabbix/zabbix_server.conf'
       ==> Modified (by you or by a script) since installation.
       ==> Package distributor has shipped an updated version.
       What would you like to do about it ?  Your options are:
       Y or I  : install the package maintainer's version
       N or O  : keep your currently-installed version
       D       : show the differences between the versions
       Z       : start a shell to examine the situation
       The default action is to keep your current version.
       *** zabbix_server.conf (Y/I/N/O/D/Z) [default=N] ?

Введите опцию, которая лучше подходит для вашей ситуации. Например, введите D, чтобы сравнить текущую и новую конфигурацию, а затем решите, хотите ли вы установить версию сопровождающего (мейнтенера) пакета (Y или I).

Затем, для корректного обновления веб-интерфейса с Apache также выполните:

apt install zabbix-apache-conf

Дистрибутивы до Debian 10 (buster) / Ubuntu 18.04 (bionic) / Raspbian 10 (buster) не предоставляют PHP 7.2 или более новые версии, который требуется веб-интерфейсу Zabbix 6.0. Смотрите информацию касательно установки веб-интерфейса Zabbix на устаревшие дистрибутивы.

6. Проверьте параметры конфигурации компонент

Обязательно ознакомьтесь с Заметками по обновлению, чтобы проверить, не требуются ли какие-то изменения в параметрах конфигурации.

7. Запустите процессы Zabbix

Запустите обновлённые компоненты Zabbix.

systemctl start zabbix-server
       systemctl start zabbix-proxy
       systemctl start zabbix-agent
       systemctl start zabbix-agent2
8. Очистите cookies и кэш в веб-браузере

После обновления вам, возможно, потребуется очистить cookies веб-браузера и кэш веб-браузера, чтобы веб-интерфейс Zabbix работал должным образом.

Обновление между минорными версиями

Имеется возможность обновления между минорными версиями 6.0.x (например, с 6.0.1 до 6.0.3).

В первую очередь, обновите информацию о репозитории:

apt update

Затем, чтобы выполнить минорное обновление версии Zabbix, пожалуйста, выполните:

apt install --only-upgrade 'zabbix.*'

Чтобы выполнить минорное обновление версии только Zabbix сервера , пожалуйста, выполните:

apt install --only-upgrade 'zabbix-server.*'

Чтобы выполнить минорное обновление версии только Zabbix агента, пожалуйста, выполните:

apt install --only-upgrade 'zabbix-agent.*'

или, для Zabbix агента 2:

apt install --only-upgrade 'zabbix-agent2.*'