ru:manual:installation:upgrade:packages:debian_ubuntu

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Last revision Both sides next revision
ru:manual:installation:upgrade:packages:debian_ubuntu [2018/10/03 19:36]
ru:manual:installation:upgrade:packages:debian_ubuntu [2019/12/17 03:52]
127.0.0.1 external edit
Line 1: Line 1:
 +==== 2 Debian/​Ubuntu ====
 +
 +=== Overview ===
 +
 +Этот раздел описывает требуемые шаги для успешного [[:​ru/​manual/​installation/​upgrade|обновления]] с Zabbix **4.0**.x до Zabbix **4.2**.x с использованием официальных пакетов Zabbix для Debian/​Ubuntu.
 +
 +<note important>​Пожалуйста,​ обратите внимание,​ что поддержка [[:​ru/​manual/​config/​notifications/​media/​jabber|Jabber оповещений]] была [[https://​support.zabbix.com/​browse/​ZBX-15880|удалена из официальных пакетов Zabbix сервера]] начиная с версии 4.2.0-1 из-за отсутствия поддержки и наличии уязвимостей в libiksemel библиотеке. Если вам необходимо наличие этой функции,​ смотрите [[ru/​manual/​installation/​upgrade/​packages/​debian_ubuntu#​добавление_поддержки_jabber_оповещений_в_пакет_zabbix_сервера|этот раздел]] для получения более подробной информации.</​note>​
 +
 +В то время как обновление Zabbix агентов не является обязательным шагом (но рекомендуемым),​ Zabbix сервер и прокси должны быть [[:​ru/​manual/​appendix/​compatibility|одной мажорной версии]]. Поэтому,​ при наличии сервер-прокси инсталляции,​ Zabbix сервер и все прокси должны быть остановлены и обновлены. Оставление прокси запущенными в процессе обновления сервера более не принесёт никакой пользы,​ так как в процессе обновления прокси их старые данные будут отброшены и новые данные не будут собираться пока конфигурация прокси не будет синхронизирована с сервером.
 +
 +<note important>​Более невозможно запустить обновленный сервер и более старые,​ не обновленные прокси,​ которые бы отправляли данные на более новый сервер. Такой подход,​ который никогда не рекомендовался и не поддерживался в Zabbix, теперь официально отключён при обновлении до 4.2 (и более новых версий) с любой версии до 4.2, так как сервер будет игнорировать данные с не обновленных прокси.</​note>​
 +
 +Обратите внимание,​ что при наличии прокси с SQLite базой данных,​ данные истории этих прокси будут потеряны до обновления,​ так как обновление файла базы данных SQLite не поддерживется и этот файл необходимо удалить вручную. Когда прокси запускается в первый раз и будет отсутствовать файл базы данных SQLite, прокси создаст его автоматически. ​
 +
 +В зависимости от размера базы данных обновление базы данных до версии 4.2 может занять продолжительное время.
 +
 +<note warning>​Перед выполнением обновления убедитесь что прочитали все соответствующие **заметки по обновлению!**</​note>​
 +
 +Доступны следующие заметки по обновлению:​
 +
 +^Обновление с^Прочитайте заметки по обновлению полностью^Важные заметки/​изменения между версиями^
 +|4.0.x |Для:\\ Zabbix [[:​ru/​manual/​installation/​upgrade_notes_420|Для 4.2]]  |Более старые прокси более не могут передавать данные на обновленный сервер;​\\ Более новые агенты более не могут работать с более старым Zabbix сервером ​ |
 +|3.4.x |Для:\\ Zabbix [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​installation/​upgrade_notes_400|4.0]]\\ Zabbix [[:​ru/​manual/​installation/​upgrade_notes_420|4.2]] ​ |Библиотеки '​libpthread'​ и '​zlib'​ теперь обязательны;​\\ Поддержка протокола в виде простого текста убрана и заголовок обязателен;​\\ Zabbix агенты версий Pre-1.4 более не поддерживаются;​\\ Параметр Server в конфигурации пассивного прокси теперь обязателен ​ |
 +|3.2.x |Для:\\ Zabbix [[https://​www.zabbix.com/​documentation/​3.4/​ru/​manual/​installation/​upgrade_notes_340|3.4]]\\ Zabbix [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​installation/​upgrade_notes_400|4.0]]\\ Zabbix [[:​ru/​manual/​installation/​upgrade_notes_420|4.2]] ​ |Поддержка SQLite в виде основной базы данных убрана для Zabbix сервера/​веб-интерфейса;​\\ Поддерживается Perl совместимые регулярные выражения (PCRE) вместо POSIX расширенных;​\\ Библиотеки '​libpcre'​ and '​libevent'​ обязательны для Zabbix сервера;​\\ Добавлены проверки кода выхода для пользовательских параметров,​ удаленных команд и элементов данных system.run[] без '​nowait'​ флага, а также для выполняемых скриптов Zabbix сервером;​\\ Zabbix Java gateway необходимо обновить для поддержки новых функций ​ |
 +|3.0.x LTS |Для:\\ Zabbix [[https://​www.zabbix.com/​documentation/​3.2/​ru/​manual/​installation/​upgrade_notes_320|3.2]]\\ Zabbix [[https://​www.zabbix.com/​documentation/​3.4/​ru/​manual/​installation/​upgrade_notes_340|3.4]]\\ Zabbix [[https://​www.zabbix.com/​documentation/​4.0/​ru/​manual/​installation/​upgrade_notes_400|4.0]]\\ Zabbix [[:​ru/​manual/​installation/​upgrade_notes_420|4.2]] |Обновление базы данных может быть медленным,​ в зависимости от размеров таблиц истории ​ |
 +
 +Вы возможно захотите также проверить [[:​ru/​manual/​installation/​requirements|требования]] для 4.2.
 +
 +<note tip>​Возможно удобно запустить две параллельные SSH сессии на время обновления,​ выполняя шаги обновления в одной сессии и наблюдая за файлами журналов сервера/​прокси в другой. Например,​ при выполнении ''​tail -f zabbix_server.log''​ или ​ ''​tail -f zabbix_proxy.log''​ во второй SSH сессии будут отображаться последние записи из файла журнала и возможные ошибки в режиме реального времени. Такой подход может быть критичным на продуктивных серверах.</​note>​
 +
 +=== Процесс обновления ===
 +
 +== 1 Остановите Zabbix процессы ==
 +
 +Остановите Zabbix сервер,​ чтобы быть уверенными,​ что в базу данных не будет происходить запись новых данных.
 +
 +  # service zabbix-server stop
 +  ​
 +При обновлении прокси,​ остановите также и его.
 +
 +  # service zabbix-proxy stop
 +
 +<note important>​Более невозможно запустить обновленный сервер и более старые,​ не обновленные прокси,​ которые бы отправляли данные на более новый сервер. Такой подход,​ который никогда не рекомендовался и не поддерживался в Zabbix, теперь официально отключён при обновлении до 4.2 (и более новых версий) с любой версии до 4.2, так как сервер будет игнорировать данные с не обновленных прокси.</​note>​
 +
 +== 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 9** выполните:​
 +  # wget https://​repo.zabbix.com/​zabbix/​4.2/​debian/​pool/​main/​z/​zabbix-release/​zabbix-release_4.2-1+stretch_all.deb
 +  # dpkg -i zabbix-release_4.2-1+stretch_all.deb
 +
 +Для **Debian 8** выполните:​
 +  # wget https://​repo.zabbix.com/​zabbix/​4.2/​debian/​pool/​main/​z/​zabbix-release/​zabbix-release_4.2-1+jessie_all.deb
 +  # dpkg -i zabbix-release_4.2-1+jessie_all.deb
 +
 +Для **Ubuntu 18.04** выполните:​
 +
 +  # wget https://​repo.zabbix.com/​zabbix/​4.2/​ubuntu/​pool/​main/​z/​zabbix-release/​zabbix-release_4.2-1+bionic_all.deb
 +  # dpkg -i zabbix-release_4.2-1+bionic_all.deb
 +
 +Для **Ubuntu 16.04** выполните:​
 +
 +  # wget https://​repo.zabbix.com/​zabbix/​4.2/​ubuntu/​pool/​main/​z/​zabbix-release/​zabbix-release_4.2-1+xenial_all.deb
 +  # dpkg -i zabbix-release_4.2-1+xenial_all.deb
 +
 +Для **Ubuntu 14.04** выполните:​
 +
 +  # wget https://​repo.zabbix.com/​zabbix/​4.2/​ubuntu/​pool/​main/​z/​zabbix-release/​zabbix-release_4.2-1+trusty_all.deb
 +  # dpkg -i zabbix-release_4.2-1+trusty_all.deb
 +
 +Обновите информацию о репозитории.
 +  # apt-get update
 +
 +== 5 Обновите компоненты Zabbix ==
 +
 +Для обновления компонентов Zabbix вы можете выполнить что-то вроде:
 +  # apt-get install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent
 +
 +Если используете PostgreSQL, в команде замените ''​mysql''​ на ''​pgsql''​. Если обновляете прокси,​ в команде замените ''​server''​ на ''​proxy''​. ​
 +
 +== 6 Просмотрите параметры конфигурации компонент ==
 +
 +Для получения более подробных сведений смотрите заметки по обновлению на предмет [[:​ru/​manual/​installation/​upgrade_notes_420#​параметры_конфигурации|обязательных изменений]].
 +
 +Для ознакомления с новыми необязательными параметрами,​ пожалуйста,​ смотрите раздел [[:​ru/​manual/​introduction/​whatsnew420#​параметры_конфигурации|Что нового]].
 +
 +== 7 Запустите процессы Zabbix ==
 +
 +Запустите обновленные компоненты Zabbix.
 +  # service zabbix-server start
 +  # service zabbix-proxy start
 +  # service zabbix-agent start
 +
 +== 8 Очистите cookies и кэш в веб-браузере ==
 +
 +После обновления вам, возможно,​ потребуется очистить cookies веб-браузера и кэш веб-браузера,​ чтобы Zabbix веб-интерфейс работал правильно.
 +
 +=== Обновление между минорными версиями ===
 +
 +Имеется возможность обновления между минорными версиями 4.2.x (например,​ с 4.2.1 на 4.2.3). Процедура очень проста.
 +
 +Для минорного обновления Zabbix, пожалуйста,​ выполните:​
 +
 +  $ sudo apt install --only-upgrade '​zabbix.*'​
 +  ​
 +Для обновления минорной версии Zabbix сервера,​ пожалуйста,​ выполните:​
 +
 +  $ sudo apt install --only-upgrade '​zabbix-server.*'​
 +
 +Для обновления минорной версии Zabbix агента,​ пожалуйста,​ выполните:​
 +
 +  $ sudo apt install --only-upgrade '​zabbix-agent.*'​
 +
 +=== Добавление поддержки Jabber оповещений в пакет Zabbix сервера ===
 +
 +Рекомендуемый способ добавления поддержки [[:​ru/​manual/​config/​notifications/​media/​jabber|Jabber оповещений]] к Zabbix серверу - сборка заново из пакета с исходным кодом.
 +
 +  $ sudo apt -y install dpkg-dev devscripts libiksemel-dev
 +  $ sudo apt-get -y build-dep zabbix
 +  $ mkdir /​tmp/​zabbix-server-build
 +  $ cd !$
 +  $ apt-get source zabbix
 +  $ cd zabbix-*
 +  $ sed -i.bak -r '​s/​^(COMMON_CONFIG\s*=.*)\\/​\1--with-jabber \\/' debian/​rules
 +  $ debchange --rebuild "​rebuild with Jabber notifications support"​
 +  $ dpkg-buildpackage
 +  [...]
 +  dpkg-deb: building package '​zabbix-java-gateway'​ in '​../​zabbix-java-gateway_4.2.1-1+stretci_all.deb'​.
 +  dpkg-deb: building package '​zabbix-proxy-pgsql'​ in '​../​zabbix-proxy-pgsql_4.2.1-1+stretci_amd64.deb'​.
 +  dpkg-deb: building package '​zabbix-proxy-mysql'​ in '​../​zabbix-proxy-mysql_4.2.1-1+stretci_amd64.deb'​.
 +  dpkg-deb: building package '​zabbix-proxy-sqlite3'​ in '​../​zabbix-proxy-sqlite3_4.2.1-1+stretci_amd64.deb'​.
 +  dpkg-deb: building package '​zabbix-server-mysql'​ in '​../​zabbix-server-mysql_4.2.1-1+stretci_amd64.deb'​.
 +  dpkg-deb: building package '​zabbix-server-pgsql'​ in '​../​zabbix-server-pgsql_4.2.1-1+stretci_amd64.deb'​.
 +   ​dpkg-genbuildinfo
 +   ​dpkg-genchanges ​ >​../​zabbix_4.2.1-1+stretci_amd64.changes
 +  dpkg-genchanges:​ info: not including original source code in upload
 +   ​dpkg-source --after-build zabbix-4.2.1
 +  dpkg-source:​ info: using options from zabbix-4.2.1/​debian/​source/​options:​ --extend-diff-ignore=\.(bat|exe)$
 +  dpkg-buildpackage:​ info: binary and diff upload (original source NOT included)
 +  $ sudo dpkg -i ../​zabbix-server-mysql_*.deb
 +  (Reading database ... 44692 files and directories currently installed.)
 +  Preparing to unpack .../​zabbix-server-mysql_4.2.1-1+stretci_amd64.deb ...
 +  Unpacking zabbix-server-mysql (1:​4.2.1-1+stretci) over (1:​4.2.1-1+stretch) ...
 +  Setting up zabbix-server-mysql (1:​4.2.1-1+stretci) ...