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
Next revision
Previous revision
ru:manual:installation:upgrade:packages:debian_ubuntu [2018/07/12 02:29]
dotneft removed
ru:manual:installation:upgrade:packages:debian_ubuntu [2019/12/30 08:29] (current)
dotneft
Line 1: Line 1:
 ==== 2 Debian/​Ubuntu ==== ==== 2 Debian/​Ubuntu ====
  
-=== Обзор ​===+=== Overview ​===
  
-Перед обновлением в первую очередь обязательно ознакомьтесь с [[:​ru/​manual/​installation/​upgrade#обзор|общей информацией]].+Этот ​раздел описывает требуемые шаги ​для успешного [[:​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>​
  
-== 1 Остановите процессы ​Zabbix ==+В то время как обновление Zabbix агентов не является обязательным шагом (но рекомендуемым),​ Zabbix сервер и прокси должны быть [[:​ru/​manual/​appendix/​compatibility|одной мажорной версии]]. Поэтому,​ при наличии сервер-прокси инсталляции, Zabbix сервер и все прокси должны быть остановлены и обновлены. Оставление прокси запущенными в процессе обновления сервера более не принесёт никакой пользы,​ так как в процессе обновления прокси их старые данные будут отброшены и новые данные не будут собираться пока конфигурация прокси не будет синхронизирована с сервером.
  
-Остановите ​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-server stop
   ​   ​
-При обновлении прокси,​ остановите также и прокси.+При обновлении прокси,​ остановите также и его.
  
   # service zabbix-proxy stop   # service zabbix-proxy stop
  
-<note important>​Известно, что имеется ​возможно обновления только ​сервера и использование старых, ещё не обновленные прокси ​будут отправлять данные на новый сервер ​(хотя прокси не смогут обновить свою конфигурацию). Такой поход, однаконе рекомендуется и не поддерживается Zabbix ​ивыбирая еговы действуете на свой страх и риск.</​note>​+<note important>​Более невозможно ​запустить ​обновленный ​сервер и более старыене обновленные прокси, которые бы отправляли данные на более ​новый сервер. Такой подход, ​который ​никогда ​не рекомендовался и не поддерживался в Zabbix, ​теперь официально отключён при обновлении до 4.2 (и более новых версийс любой ​версии до 4.2, так как ​сервер будет ​игнорировать данные ​с не обновленных прокси.</​note>​
  
-== 2 Резервная копия существующей базы данных Zabbix ==+== 2 Сделайте архивную копию существующей базы данных Zabbix ==
  
-Этот шаг чрезвычайно важен. Убедитесь,​ что у вас ​имеется архивная копия вашей базы данных. ​Она вам ​поможет ​в случае, если процедура обновления завершится ​с ошибкой (недостаточно места на диске, ​аварийное ​выключение питания,​ любая непредвиденная проблема).+Этот шаг ​очень важен. Убедитесь,​ что у вас есть архивная копия вашей базы данных. ​Это ​поможет,​ если процедура обновления закончится неудачно (отсутствие свободного места на диске, выключение питания,​ любая неожиданная проблема).
  
 == 3 Резервное копирование файлов конфигурации,​ PHP файлов и бинарных файлов Zabbix == == 3 Резервное копирование файлов конфигурации,​ PHP файлов и бинарных файлов Zabbix ==
Line 45: Line 69:
  
 Для **Debian 9** выполните:​ Для **Debian 9** выполните:​
-  # wget http://​repo.zabbix.com/​zabbix/​3.4/​debian/​pool/​main/​z/​zabbix-release/​zabbix-release_3.4-1+stretch_all.deb +  # 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_3.4-1+stretch_all.deb +  # dpkg -i zabbix-release_4.2-1+stretch_all.deb 
-  +
 Для **Debian 8** выполните:​ Для **Debian 8** выполните:​
-  # wget http://​repo.zabbix.com/​zabbix/​3.4/​debian/​pool/​main/​z/​zabbix-release/​zabbix-release_3.4-1+jessie_all.deb +  # 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_3.4-1+jessie_all.deb +  # dpkg -i zabbix-release_4.2-1+jessie_all.deb 
-   +
-Для **Debian 7** выполните:​ +
-  # wget http://​repo.zabbix.com/​zabbix/​3.4/​debian/​pool/​main/​z/​zabbix-release/​zabbix-release_3.4-1+wheezy_all.deb +
-  # dpkg -i zabbix-release_3.4-1+wheezy_all.deb +
-  ​+
 Для **Ubuntu 18.04** выполните:​ Для **Ubuntu 18.04** выполните:​
  
-  # wget http://​repo.zabbix.com/​zabbix/​3.4/​ubuntu/​pool/​main/​z/​zabbix-release/​zabbix-release_3.4-1+bionic_all.deb +  # 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_3.4-1+bionic_all.deb+  # dpkg -i zabbix-release_4.2-1+bionic_all.deb
  
 Для **Ubuntu 16.04** выполните:​ Для **Ubuntu 16.04** выполните:​
  
-  # wget http://​repo.zabbix.com/​zabbix/​3.4/​ubuntu/​pool/​main/​z/​zabbix-release/​zabbix-release_3.4-1+xenial_all.deb +  # 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_3.4-1+xenial_all.deb+  # dpkg -i zabbix-release_4.2-1+xenial_all.deb
  
 Для **Ubuntu 14.04** выполните:​ Для **Ubuntu 14.04** выполните:​
  
-  # wget http://​repo.zabbix.com/​zabbix/​3.4/​ubuntu/​pool/​main/​z/​zabbix-release/​zabbix-release_3.4-1+trusty_all.deb +  # 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_3.4-1+trusty_all.deb+  # dpkg -i zabbix-release_4.2-1+trusty_all.deb
  
 Обновите информацию о репозитории. Обновите информацию о репозитории.
Line 83: Line 103:
 == 6 Просмотрите параметры конфигурации компонент == == 6 Просмотрите параметры конфигурации компонент ==
  
-Для получения более подробных сведений смотрите заметки по обновлению [[:​ru/​manual/​installation/​upgrade_notes_340#​параметры_конфигурации|обязательных изменений]].+Для получения более подробных сведений смотрите заметки по обновлению ​на предмет ​[[:​ru/​manual/​installation/​upgrade_notes_420#​параметры_конфигурации|обязательных изменений]].
  
-Для ознакомления с новыми необязательными параметрами,​ пожалуйста,​ смотрите раздел [[:​ru/​manual/​introduction/​whatsnew340#​параметры_конфигурации|Что нового]].+Для ознакомления с новыми необязательными параметрами,​ пожалуйста,​ смотрите раздел [[:​ru/​manual/​introduction/​whatsnew420#​параметры_конфигурации|Что нового]].
  
 == 7 Запустите процессы Zabbix == == 7 Запустите процессы Zabbix ==
Line 100: Line 120:
 === Обновление между минорными версиями === === Обновление между минорными версиями ===
  
-Имеется возможность обновления минорные версии ​3.4.x (например,​ с 3.4.1 на 3.4.3). Процедура очень проста.+Имеется возможность обновления ​между ​минорными версиями 4.2.x (например,​ с 4.2.1 на 4.2.3). Процедура очень проста.
  
 Для минорного обновления Zabbix, пожалуйста,​ выполните:​ Для минорного обновления Zabbix, пожалуйста,​ выполните:​
  
   $ sudo apt install --only-upgrade '​zabbix.*'​   $ sudo apt install --only-upgrade '​zabbix.*'​
 +  ​
 Для обновления минорной версии Zabbix сервера,​ пожалуйста,​ выполните:​ Для обновления минорной версии Zabbix сервера,​ пожалуйста,​ выполните:​
  
Line 113: Line 133:
  
   $ sudo apt install --only-upgrade '​zabbix-agent.*'​   $ 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) ...
 +