Zabbix Documentation 4.0

3.04.04.4 (current)| In development:5.0 (devel)| Unsupported:1.82.02.22.43.23.44.2Guidelines

User Tools

Site Tools

This translation is older than the original page and might be outdated. See what has changed.

Sidebar

ru:manual:installation:upgrade_notes_400

This is an old revision of the document!


9 Заметки по обновлению для 4.0.0

Zabbix 4.0.0 ещё не выпущен.

Эти заметки относятся к обновлению с Zabbix 3.4.x до Zabbix 4.0.0. Все заметки сгруппированы в:

  • Критические - наиболее критическая информация относящаяся к процессу обновления и изменения в функциональности Zabbix
  • Информационные - вся оставшаяся информация, описывающая изменения в функциональности Zabbix

Имеется возможность обновления до Zabbix 4.0.0 с версий до 3.4.0. Обратите анимание на раздел процедуры обновления для получения соответствующих сведений об обновлении с предыдущих версий Zabbix.

Критические

Дополнительные зависимости

  • libpthread - библиотека POSIX потоков теперь обязательна при компиляции Zabbix сервера и Zabbix прокси. Она требуется для разделяемых между процессами мьютексов (process-shared mutex) и чтения-записи блокировок (read-write lock). Если мьютексы доступны, но не могут быть разделяемыми между процессами, тогда Zabbix вернётся к использованию семафоров, как и до обновления.
  • zlib - библиотека сжатия теперь обязательна при компиляции Zabbix сервера и Zabbix прокси.

Параметр сервера для пассивных прокси обязателен

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

Убрана поддержка протокола в виде простого текста

Поддержка протокола в виде простого текста убрана и заголовок теперь обязателен. Заголовок добавляется к запросам Zabbix get, к запросам пассивных проверок Zabbix сервера/прокси и к запросам веб-интерфейса к Zabbix серверу.

Как следствие, Zabbix агенты старше 1.4 версии более не поддерживаются. Также, сообщения с самописных senders будут отклоняться, если отсутствует заголовок. Если ранее Zabbix трапперы могли принимать сообщения без заголовков, так и с заголовками, теперь они будут принимать сообщения только с заголовком протокола.

Подгружаемые модули

Экспорт истории через модуль более не поддерживается на стороне Zabbix прокси.

Удалён раздел Мониторинг → Триггеры

Теперь раздел Мониторинг → Триггеры удалён. Связанные с этим разделом параметры “Отображать события не старше чем” и “Макс. количество отображаемых событий у триггера” соответственно также удалены.

Запрещенный синтаксис параметров в ключах элементов данных

Следующий синтексис параметров в ключах элементов данных более неподдерживается:

  • Многоуровневые массивы параметров, например [a,[b,[c,d]],e]
  • Параметры в стиле Zapcat, например [a][b]

Обратите внимание, такой синтаксис никогда не использовался в официальных ключах Zabbix элементов данных, и он никогда официально не подтверждался документально что поддерживается. Он существовал только для обратной совместимости с такими решениями как Zapcat JMX Zabbix Bridge [en].

Поддержка MySQL 8.0

Чтобы добавить поддержку MySQL 8.0 в этой версии, сделаны два изменения в базе данных:

  • таблица 'groups' переименована на 'hstgrp'
  • поле 'function' в таблице 'functions' переименовано на 'name'

Функции триггеров

В процессе обновления значения параметра logsource функции триггеров будут сконвертированы, чтобы обеспечить работу с добавленной поддержкой регулярных выражений и глобальных регулярных выражений. Имеется вероятность, что существующие параметры содержат обширное количество специальных символов регулярного выражения или их длина приближается к максимально разрешенному лимиту и в процессе конвертации этот лимит будет превышен, который равен 255 символам. В таких случаях изменения по этим параметрам не будут выполнены и детали обо всех подобных случаях будут добавлены в файл журнала. Если по этой причине появятся проблемы с производительностью триггеров, параметры, которые не были изменены, необходимо будет отредактировать вручную.

Информационные

Коррекция штампа времени

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

Триггеры времени обрабатываются процессами синхронизации истории

Обработка функций триггеров связанных со временем таких как nodata(), date(), dayofmonth(), dayofweek(), time() и now() перенесена с процессов таймер на процессы синхронизации истории.

Если ранее все триггера связанные со временем вычислялись в одно и то же время, создавая этим пиковые нагрузки каждые 30 секунд, то теперь обработка триггеров связанных со временем распределяется равномерно в течении этих 30 секунд.

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

Изменения в авторегистрации

Поведение авторегистрации изменилось следующим образом:

  • Действия на авторегистрацию активных агентов будут запускаться повторно, если изменятся метаданные узла сети;
  • Так как метаданные добавляются только в процессе авторегистрации, у вручную созданных узлах сети будут отсутствовать метаданные и авторегистрация запустится повторно;
  • Если узел сети будет вручную обновлен на наблюдение через другой Zabbix прокси, тогда авторегистрация запустится повторно.

Как и ранее, если авторегистрация по одному и тому же узлу сети прийдет с нового Zabbix прокси, тогда авторегистрация запустится повторно.

Генерация имени проблемы

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

Обновление базы данных в процессе первичного запуска сервера может занять продолжительное время, если имеется большое количество старых проблем и в именах триггерах используются {ITEM.VALUE}, {ITEM.LASTVALUE} макросы.

Значения полей, которыми заполняются имена событий и проблем:

  • Для событий на триггера - имя триггера со всеми раскрытыми макросами
  • Для событий на внутренние проблемы:
    • Cannot obtain item value (Не удалось получить значение элемента данных) - для неподдерживаемых элементов данных
    • Cannot calculate trigger expression​ (Не удалось вычислить выражение триггера) - для неизвестных триггеров
  • Для остальных событий имя останется пустым
Изменения в связанных макросах

В связи с этой разработкой в макросах имеются несколько изменений:

  • {TRIGGER.NAME} заменен на {EVENT.NAME} во всех сообщениях по умолчанию.
  • в процессе обновления {TRIGGER.NAME} заменится на {EVENT.NAME} во всех действиях на основе триггеров.

Работа с проблемами

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

Связанные изменения в API

Методы ​problem.get​ и ​event.get​ изменились таким образом, что входной параметр поиска/фильтра с объектом {'​name':​ '​…'​} в виде значения используется для поиска соответствующих результатов (по полю “​name”​) в соответствующей таблице (“​problem”​ или “​events”​).

Методы ​problem.get​ и ​event.get​ расширены добавлением получаемого параметра, которое называется “​name”​. В обоих методах новый параметр содержит значения из недавно добавленного поля “​name”​ в таблицы базы данных “​problem”​ или “​events”​.

Использование кэша конфигурации сервера

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

Выполнение скрипта внешней проверки

При выполнении скрипта внешней проверки аргументы заключаются в одинарные кавычки ' вместо двойных кавычек ". Это изменение позволяет Zabbix принимать больше символов в именах параметров внешних проверках. Например, символ $ более не игнорируется.

Изменены журналы Zabbix Java Gateway

Если вы наблюдаете за журналами Java Gateway, имейте в виду, что трассировка стека исключений более недоступна на уровнях сообщений Java Gateway об ошибках и предупреждений.

Изменения в триггерах

  • Изменилось поведение выражений триггеров относительно чисел, отличающихся на 0.000001. Поскольку логические операторы определены с точки зрения равенства нулю, их результат для 0.000001 также влияет:
Выражение (Пример) Результат вычисления
До После
1.000001 > 110
1.000001 <= 101
0 >= 0.000001 01
0.000001 <> 010
0.000001 = 001
0 or (1/1000000)10
not (1/1000000)01
1 and 1/100000010

Изменения в именах виджетов, именах элементов комплексных экранов и именах отчетов

Теперь переименованы следующие элементы:

ДоПосле
Состояние системыПроблемы по важности
Состояние узлов сетиУзлы сети с проблемами
Состояние ZabbixИнформация о системе

Также затронут API панели: некоторые типы свойств виджетов панели теперь переименованы.

Изменения в журналировании

Изменилось сообщение, которое записывается в файлы журналов, о заполненном кэше истории.

Сообщение изменено следующим образом:

History buffer is full. Sleeping for 1 second. -> History cache is full. Sleeping for 1 second.