Эти заметки относятся к обновлению Zabbix с версии 6.4.x до Zabbix 7.0.0.
Все заметки сгруппированы в:
Смотрите также:
Чтобы завершить успешное обновление сервера Zabbix с использованием MySQL/MariaDB, вам может потребоваться установить GLOBAL log_bin_trust_function_creators = 1
в MySQL, если ведение бинарного журнала включено, нет привилегий суперпользователя и log_bin_trust_function_creators = 1
не установлено в файле конфигурации MySQL.
Чтобы установить переменную с помощью консоли MySQL, запустите:
После успешного завершения обновления эту опцию можно отключить:
Обновление до Zabbix 7.0.1 (или более поздней версии) с Zabbix 7.0.0 с PostgreSQL/TimescaleDB приводит к сбою сервера. Эта проблема вызвана обходным решением проблемы задания сжатия в таблице журнала аудита в Zabbix 7.0, которая необратимо изменила политику сжатия таблицы журнала аудита.
Смотрите известные проблемы для получения подробной информации об исправлении таблицы журнала аудита вручную.
Если вы еще не обновились до Zabbix 7.0.0, обратите внимание, что таких проблем не должно быть при обновлении до 7.0.1 с версий Zabbix, более ранних, чем 7.0. Инструкции по обновлению смотрите в разделе Обновление схемы TimescaleDB.
Использование pg_restore
[en] для восстановления резервной копии PostgreSQL/TimescaleDB, созданной в Zabbix 7.0.0-7.0.4, выдаст ошибку отсутствующей функции base36_decode
, что приведёт к сбою восстановления. Эта ошибка возникает при восстановлении резервной копии, созданной с помощью pg_dump
[en].
Смотрите известные проблемы для получения подробной информации об исправлении этой проблемы вручную перед созданием резервной копии.
Если вы еще не обновились до Zabbix 7.0.0, обратите внимание, что таких проблем не должно быть при обновлении до 7.0.5 с версий Zabbix, более ранних, чем 7.0. Инструкции по обновлению смотрите в Обновление схемы TimescaleDB.
Расположение по умолчанию, в котором агент Zabbix в Windows ищет файл конфигурации, было изменено. Теперь агент ищет его в каталоге, где находится бинарный файл агента zabbix_agentd.exe (вместо C:\zabbix_agentd.conf
, как раньше).
Zabbix агент 2 в Windows уже искал файл конфигурации по умолчанию в каталоге, где находится бинарный файл zabbix_agent2.exe. Однако в новой версии агент 2 ожидает, что файл конфигурации будет называться zabbix_agent2.conf
(вместо zabbix_agent2.win.conf
).
См. также: Установка агента Zabbix в Windows.
Теперь в параметрах конфигурации, связанных с плагином, в Zabbix агенте 2 разрешены пустые значения.
Поддержка TimescaleDB 1.x прекращена.
Перед обновлением до Zabbix 7.0.0 необходимо вручную обновить TimescaleDB для использования типов данных с двойной точностью, если TimescaleDB используется со сжатием. Вы можете определить, что TimescaleDB не использует типы данных с двойной точностью, по предупреждению в разделе веб-интерфейса Информация о системе или в журнале сервера Zabbix: "Database is not upgraded to use double precision values. Support for the old numeric type will be removed in future versions" («База данных не обновлена для использования значений с двойной точностью. Поддержка старого числового типа будет убрана в будущих версиях»).
Для получения дополнительной информации см. Обновление до числовых значений с расширенным диапазоном.
На новых инсталляциях таблица auditlog
была преобразована в гипертаблицу на TimescaleDB, чтобы использовать преимущества автоматического партиционирования по времени (по умолчанию 1 день) и повышения производительности.
Для успешного обновления существующих инсталляций смотрите Обновление схемы TimescaleDB.
Смотрите также: Поддерживаемые версии TimescaleDB.
Записи прокси были перемещены из таблицы hosts
и теперь хранятся в новой таблице proxy
.
Кроме того, рабочие данные прокси (такие как время последнего доступа, версия, совместимость) были перемещены из таблицы host_rtdata
и теперь хранятся в новой таблице proxy_rtdata
.
Также в API есть новый объект proxy. Все операции с прокси должны быть обновлены, чтобы производиться через этот новый объект прокси.
На основе изменений в настройках времени ожидания элемента данных, как время ожидания входа ODBC, так и время ожидания выполнения запроса для элементов данных монитор баз данных теперь ограничены значением параметра Timeout, установленным в диалоге настройки элемента данных.
В новой версии процесс сетевого обнаружения был переработан, чтобы обеспечить параллелизм между проверками сервисов. Был добавлен новый процесс менеджера обнаружения вместе с настраиваемым количеством рабочих процессов обнаружения (или потоков). Менеджер обнаружения (discovery manager) обрабатывает правила обнаружения и для каждого правила создаёт задание обнаружения с задачами (проверками сервисов). Проверки служб выбираются и выполняются рабочими процессами обнаружения (discovery workers).
Параметр StartDiscoverers теперь определяет общее количество рабочих процессов обнаружения, доступных для обнаружения. Количество StartDiscoverers по умолчанию было увеличено с 1 до 5, а диапазон — от 0-250 до 0-1000. Процессы discoverer
из предыдущих версий Zabbix были убраны.
Кроме того, количество доступных рабочих процессов для каждого правила теперь можно настраивать в веб-интерфейсе. Этот параметр необязателен. Во время обновления он будет выставлен в значение «Один», как в предыдущих версиях Zabbix.
Смотрите список изменений в API в Zabbix 7.0.0.
Минимальная необходимая версия PHP повышена с 7.4.0 до 8.0.0.
Ширина по умолчанию была увеличена в 3 раза для всех виджетов. Обратите внимание, что если вы используете пользовательские виджеты, вам может потребоваться обновить соответствующие параметры файла manifest.json (например, при настройке пользовательского виджета Clock width
необходимо изменить с 4
на 12
).
Виджет теперь может иметь до 72 столбцов в ширину (ранее 24) и от 1 до 64 строк в высоту (ранее 2–32). Таким образом, панель теперь может содержать до 72 виджетов по горизонтали.
Новый виджет панели История элементов данных заменил виджет Простой текст, предлагая несколько улучшений.
В отличие от виджета Простой текст, который отображал только последние данные элемента данных в виде простого текста, виджет История элементов данных поддерживает различные параметры отображения для нескольких типов элементов данных (числовые, символьные, журнальные, текстовые и двоичные). Например, он может отображать столбчатые диаграммы или индикаторы, изображения для двоичных типов данных (полезно для элементов данных браузера) и выделять текстовые значения (полезно для мониторинга файла журнала).
После обновления все ранее настроенные виджеты Простой текст будут автоматически заменены виджетами История элементов данных, сохраняя те же настройки конфигурации. Однако, любые скрипты API, ссылающиеся на виджет Простой текст, необходимо обновить вручную.
В версии Zabbix 7.0.4 поведение раскрытия макросов {HOST.CONN}
, {HOST.DNS}
, {HOST.IP}
, {EVENT.CAUSE.*}
, {EVENT.TAGS.*}
и {EVENT.SYMPTOMS}
было исправлено для согласованности с другими встроенными макросами. Теперь они будут раскрываться в *UNKNOWN*
, если при вычислении их значения возникнет ошибка.
В результате этого изменения, для обеспечения надлежащей функциональности, необходимо обновить способы оповещений для следующих интеграций: iTop, Jira Service Desk, ManageEngine ServiceDesk, SolarWinds Service Desk.
Это изменение может также повлиять на любые пользовательские скрипты или интеграции, использующие вышеупомянутые макросы.
После обновления все проверки агента, HTTP-агента и walk[OID]
SNMP будут перенесены в асинхронные поллеры.
Ранее функции библиотеки cURL определялись во время сборки сервера Zabbix, прокси или агента. Если функции cURL обновлялись, для их использования требовалось перекомпилировать соответствующий компонент Zabbix.
Теперь для того, чтобы обновлённые функции библиотеки cURL стали доступны в Zabbix, требуется только перезапуск. Перекомпиляция больше не требуется. Это справедливо для сервера Zabbix, прокси или агента.
Кроме того:
Поддержка Oracle в качестве внутренней базы данных устарела, начиная с Zabbix 7.0, и ожидается, что она будет полностью убрана в будущих версиях.
Теперь по умолчанию к новым и существующим установкам добавлена проверка обновлений программного обеспечения — веб-интерфейс Zabbix будет связываться с общедоступной конечной точкой Zabbix для проверки наличия обновлений.
Вы можете отключить эту проверку, установив AllowSoftwareUpdateCheck=0 в настройках сервера.
Теперь, если для целочисленного элемента данных получено значение с плавающей точкой, значение будет обрезано от десятичной части и сохранено как целое число. Ранее значение с плавающей точкой могло делать целочисленный элемент данных неподдерживаемым.
Отображение даты и времени в веб-интерфейсе теперь соответствует стандартному для США отображению даты/времени, когда используется язык интерфейса по умолчанию (en_US).
Ранее | Теперь |
---|---|
Все значки в веб-интерфейсе были переключены с листов изображений значков на шрифты.
В Мониторинг → Последние данные подфильтр и данные больше не отображаются по умолчанию, если фильтр не установлен. Однако, следует отметить, что ранее сохранённые фильтры, которые были установлены с использованием только подфильтра, остаются неизменными. В таких случаях подфильтр останется видимым, и данные будут отображаться даже без установки основного фильтра.
Изменены значения по умолчанию для нескольких параметров конфигурации:
Plugins.<ИмяПлагина>.Capacity
, устаревший в Zabbix 6.0, был полностью убран;Эти изменения не влияют на существующие установки, где эти параметры заданы явно.
Обновлены несколько функций агрегации. Теперь:
Начиная с версии Zabbix 5.0, числовой (с плавающей точкой) тип данных поддерживает точность около 15 цифр и диапазон приблизительно от -1.79E+308 до 1.79E+308. Старый числовой тип был отключён, но все еще поддерживался. Начиная с Zabbix 6.4, он был объявлен устаревшим, а начиная с Zabbix 7.0, он был полностью убран.
Если ваша инсталляция не была обновлена для использования числовых значений с расширенным диапазоном, в разделе Отчёты → Информация о системе отображается следующее предупреждение: "Database history tables upgraded: No. Support for the old numeric type is deprecated. Please upgrade to numeric values of extended range" («Таблицы истории базы данных обновлены: Нет. Поддержка старого числового типа устарела. Пожалуйста, обновите до числовых значений с расширенным диапазоном»).
При обновлении до Zabbix 7.0 следующие базы данных обновляются автоматически:
Однако, для Oracle, более старых версий MySQL и больших установок рекомендуется перед обновлением до Zabbix 7.0 обновить тип данных вручную.
Для TimescaleDB со сжатием базу данных необходимо обновить вручную.
Более подробную информацию об обновлении смотрите на странице Обновление до числовых значений с расширенным диапазоном.
Добавлена опция для установки типа запуска службы Windows Zabbix агента/агента 2 (-S --startup-type
). Эта опция позволяет настроить службу агента/агента 2 на автоматический запуск при старте Windows (automatic
), после завершения запуска автоматически запускаемых служб (delayed
), при ручном запуске пользователем или приложением (manual
) или для полного отключения службы (disabled
).
При выполнении установки агента Windows из MSI тип запуска по умолчанию в Windows Server 2008/Vista и более поздних версиях теперь delayed
, если не указано иное в параметре командной строки STARTUPTYPE
. Это повышает надёжность и производительность службы Windows Zabbix агента/агента 2, особенно во время перезагрузок системы.
Информацию о новых шаблонах и изменениях в существующих шаблонах смотрите на странице Изменения шаблонов.
При установке Zabbix из пакетов и подготовке схемы базы данных расположение файлов, относящихся к базам данных, изменилось, чтобы лучше соответствовать структуре файлов в исходниках:
schema.sql
, data.sql
, images.sql
) находятся в корне каталога базы данных.option-patches
.tsdb
было заменено на timescaledb
.option-patches
включает подкаталоги with-compression
и without-compression
; они содержат необязательные файлы/патчи для обновления таблиц базы данных в зависимости от настроек сжатия TimescaleDB.database/postgresql/timescaledb/schema.sql
.Кроме того, обратите внимание на следующие изменения:
history_pk_*.sql
были переименованы в history_upgrade_*.sql
, а файл trends_upgrade.sql
был добавлен для улучшения сценариев обновления базы данных.double.sql
был удалён из-за удаления старого числового (с плавающей точкой) типа значения.Ниже приведено сравнение предыдущей и текущей структуры каталогов для баз данных MySQL и PostgreSQL.
# Предыдущая: # Текущая:
database database
├── mysql ├── mysql
│ ├── data.sql │ ├── option-patches
│ ├── double.sql │ │ ├── double.sql
│ ├── history_pk_prepare.sql │ │ └── history_pk_prepare.sql
│ ├── images.sql │ ├── data.sql
│ └── schema.sql │ ├── images.sql
│ │ └── schema.sql
│ │
├── postgresql ├── postgresql
│ ├── tsdb_history_pk_upgrade_no_compression │ ├── option-patches
│ │ ├── history_pk.sql │ │ ├── double.sql
│ │ ├── history_pk_log.sql │ │ └── history_pk_prepare.sql
│ │ ├── history_pk_str.sql │ ├── timescaledb
│ │ ├── history_pk_text.sql │ │ ├── option-patches
│ │ └── history_pk_uint.sql │ │ │ ├── with-compression
│ ├── tsdb_history_pk_upgrade_with_compression │ │ │ │ ├── history_pk.sql
│ │ ├── history_pk.sql │ │ │ │ ├── history_pk_log.sql
│ │ ├── history_pk_log.sql │ │ │ │ ├── history_pk_str.sql
│ │ ├── history_pk_str.sql │ │ │ │ ├── history_pk_text.sql
│ │ ├── history_pk_text.sql │ │ │ │ └── history_pk_uint.sql
│ │ └── history_pk_uint.sql │ │ │ └── without-compression
│ ├── data.sql │ │ │ ├── history_pk.sql
│ ├── double.sql │ │ │ ├── history_pk_log.sql
│ ├── history_pk_prepare.sql │ │ │ ├── history_pk_str.sql
│ ├── images.sql │ │ │ ├── history_pk_text.sql
│ ├── schema.sql │ │ │ └── history_pk_uint.sql
│ └── timescaledb.sql │ │ └── schema.sql
│ │ ├── data.sql
│ │ ├── images.sql
│ │ └── schema.sql
├── ... ├── ...
Пожалуйста, обновите свои скрипты, если таковые имеются, содержащие ссылки на предыдущую структуру каталогов или файлы.
Был реализован протокол на основе JSON для пассивных проверок агента.
Для совместимости со старыми агентами добавлено переключение на старый протокол простого текста. Если агент возвращает "ZBX_NOTSUPPORTED", Zabbix кэширует интерфейс как старый протокол и повторяет проверку, отправляя только ключ элемента данных в виде простого текста.
Zabbix get теперь можно запустить с новой опцией -P --protocol <значение>
, где «значение» может быть:
Если ключ элемента данных не поддерживается, Zabbix get теперь будет возвращать код завершения 1
вместо 0
.
При обновлении глобальные таймауты для всех поддерживаемых типов элементов данных будут установлены на основе значения параметра Timeout
из файла конфигурации сервера. Если настроен прокси, то по умолчанию он будет использовать глобальные настройки тайм-аута сервера.
При использовании обновлённого сервера (версии 7.0.0 или новее) с более старым прокси или агентом прокси или агент будут работать как прежде:
Timeout
из файла конфигурации прокси;Timeout
из файла конфигурации агента.Параметры тайм-аута были убраны из файлов конфигурации плагинов Modbus и MQTT. Теперь тайм-ауты выполнения запроса можно задать с помощью диалога настроек элемента данных.
В Zabbix добавлен новый тип элементов данных — элемент данных «Браузер», позволяющий осуществлять мониторинг сложных веб-сайтов и веб-приложений с помощью браузера. Элементы данных «Браузер» позволяют выполнять пользовательский код JavaScript для имитации действий, связанных с браузером, таких как щелчок мышью, ввод текста, навигация по веб-страницам и т. д.
Кроме того, эта функция добавляет следующие изменения:
StartBrowserPollers
и WebDriverURL
;zabbix_js
был добавлен параметр командной строки -w <url веб-драйвера>
для активации браузерного мониторинга.wmi.get
и wmi.getall
, при использовании с агентом Zabbix 2 теперь возвращают JSON с логическими значениями, представленными в виде строк (например, "RealTimeProtectionEnabled": "True"
вместо "RealTimeProtectionEnabled": true
, возвращаемого ранее), чтобы соответствовать формату вывода этих элементов данных в агенте Zabbix;oracle.ts.stats
имеет новый параметр conname для указания имени целевого контейнера. Формат JSON возвращаемых данных был обновлён. Если в параметрах ключа не указано tablespace, тип или conname, возвращаемые данные будут включать дополнительный уровень JSON с именем контейнера, что позволяет различать контейнеры.net.dns.*
больше не могут быть настроены без параметра имя. Хотя он всегда был указан как обязательный, параметр имя, если был опущен, ранее разрешался в значение по умолчанию (zabbix.com), что более не так.Список изменений элементов данных, которые не нарушают совместимость, см. в разделе Что нового в Zabbix 7.0.0.
В инсталляциях высокой доступности теперь в случае переключения активного узла Zabbix может читать файлы трапов SNMP из правильного места .
Однако, для работы этой функции требуется обновить формат времени в любых скриптах bash, perl и SNMPTT на "%Y-%m-%dT%H:%M:%S%z" (т. е. 2024-01-10T11:56:14+0300
).