Эти заметки относятся к обновлению с Zabbix 2.4.x до Zabbix 3.0.0. Все заметки сгруппированы в:
Критические
- наиболее критическая информация относящаяся к процессу обновления и изменения в функциональности ZabbixИнформационные
- вся оставшаяся информация, описывающая изменения в функциональности ZabbixИмеется возможность обновления до Zabbix 3.0.0 с версий до 2.4.0. Обратите анимание на раздел процедуры обновления для получения соответствующих сведений об обновлении с предыдущих версий Zabbix.
Повышена минимально требуемая версия PHP с 5.3.0 на 5.4.0.
Поддержка Microsoft Internet Explorer 8 более не обеспечивается.
Регистрозависимая база данных MySQL требует для корректной работы сервера. Рекомендуется создавать регистрозависимую базу данных MySQL во время установки. Если вы создали базу данных MySQL с набором символов utf8 изначально, для поддержки регистрозависимых хранимых данных, вам небоходимо сконвертировать c поддержкой collation utf8_bin.
Поскольку новый параметр конфигурации LogType был добавлен, важно отметить, что ранее Zabbix журналировал в syslog/eventlog по умолчанию, если параметр LogFile parameter был пустым. После обновления, Zabbix по умолчанию записывает журнал в файл и агент не запустится, если LogFile параметр не указан. Чтобы включить журналирование syslog/eventlog необходимо указать параметр LogType со значением system.
Элементы данных net.dns и net.dns.record на Windows теперь обходят внутренний кэш DNS-распознавателя.
Элемент данных net.tcp.listen на Linux ядрах 2.6.14 и выше при обнаружении NETLINK совместимости, теперь пытаются получить информацию о соектах в LISTEN состоянии с NETLINK интерфейса ядра. В случае провала попытки, элемент данных переключается обратно на старый метод получения этой информации из /proc виртуальной файловой системы, этот метод также улучшен. Смотрите Что нового в Zabbix 3.0.0 для получения более подробной информации.
Элемент данных vfs.fs.discovery на Windows теперь возвращает дополнительный макрос {#FSDRIVETYPE} с возможными значениями "unknown", "norootdir", "removable", "fixed", "remote", "cdrom", "ramdisk". Однако, обратите внимание, что если фильтрация выполняется с помощью {#FSDRIVETYPE} макроса, низкоуровневое обнаружение проигнорирует объекты, обнаруженные более старыми агентами, которые возвращают ответ без наличия этого макроса.
Значение OID элемента данных обнаружения SNMP теперь принимает формат discovery[{#МАКРОС1}, oid1, {#МАКРОС2}, oid2, ...]
(смотрите низкоуровневое обнаружение для получения более подробной информации). Значения OID существующих правил обнаружения SNMP будут преобразованы в новый формат (discovery[{#SNMPVALUE},<старое значение oid>]
) в процессе обновления базы данных.
Добавлена проверка правильности ссылки на глобальные регулярные выражения в элементах данных snmptrap, log, logrt и eventlog. Если указанная ссылка неправильна из-за некорректного написания или отсутствющего глобального регулярного выражения, тогда элемент данных станет неподдерживаемым и отобразится соответствующая ошибка.
Элемент данных для наблюдения за состоянием готовности CPU у VMware виртуальной машины добавлен в шаблон наблюдения за виртуальными машинами по умолчанию. Если использовался элемент данных на основе счетчика производительности для наблюдения за состоянием готовности CPU виртуальной машины (например, vmware.vm.perfcounter[{$URL},{HOST.HOST},"cpu/ready[summation]"]
), тогда он будет заменен новым элементом данных (vmware.vm.cpu.ready[{$URL},{HOST.HOST}]
).
Элемент данных vm.memory.size[available] на AIX теперь возвращает сумму свободной и кэшируемой памяти. До Zabbix 3.0 возвращался только размер свободной памяти.
Элемент данных vm.memory.size[available] на Linux теперь читает MemAvailable (родная оценка системы) из /proc/meminfo на Linux ядрах 3.14 и выше. В зависимости от состояния системы (наподобие количества распределения slab) новое значение может значительно отличаться от старой версии и, таким образом, может вызвать триггеры изменить свои значения. До Zabbix 3.0 значением всегда была сумма свободной, буферизованной и кэшируемой памяти.
Элементы данных proc.mem и proc.num теперь возвращают 0, если указанный пользователь не существует. До Zabbix 3.0 эти элементы данных становились неподдерживаемыми.
Добавлены элементы данных net.udp.service и net.udp.service.perf с возможностью проверки NTP сервиса. До Zabbix 3.0 проверка NTP сервиса выполнялась с использованием элементов данных net.tcp.service и net.tcp.service.perf. Патчи обновления базы данных автоматически сконвертируют проверки NTP сервисов, которые используют net.tcp.service и net.tcp.service.perf, в новые элементы данных.
Элемент данных service_state[служба] на Windows является устаревшим. Необходимо использовать новый элемент данных service.info[служба,состояние], который возвращает ту же самую информацию.
Элемент данных system.uname на Windows получает значения из WMI Win32_OperatingSystem и Win32_Processor классов вместо непостоянного Windows API и недокументированных ключей реестра. После обновления значения, которые возвращаются этим ключем, могут измениться.
Добавлена валидация значений полей 'clock' и 'ns' у траппер элементов данных, ожидаются числовые значения штампов времени.
Удалены устаревшие методы exists()
и getObjects()
также как и параметры selectHosts и expandData нескольких методов get()
. See Изменения API с 2.4 до 3.0 для получения более подробной информации.
Валидация параметров командной строки стала более строгой. Использование одинаковых параметров несколько раз, взаимоисключающих опций и параметров, которые не являются значениям опций теперь является ошибкой. Опция помощи ('-h') теперь не выводит номер версии.
Изменены файлы конфигурации по умолчанию. Большинство изменений не повлияют на существующие инсталляции, но новые инсталляции и автоматические процессы, которые используют эти файлы, возможно, потребуется скорректировать. Смотрите Что нового в 3.0, в которой имеется список измененных параметров.
Изменение MaxHousekeeperDelete коснется существующих инсталляций в случае, если этот параметр не задан в файле конфигурации.
Увеличен посылаемый размер данных конфигурации прокси с сервера. Отправляются 2 новых поля по каждому элементу данных: "lastlogsize" и "mtime". Это приведет к 1-2% увеличению размера данных конфигурации прокси.
Улучшена ротация файла журнала. Это улучшение может привести к ситуации, когда файл журнала, после ротации, будет пустым некоторое время. Это не могло случиться раньше.
Если запрос в базу данных завершится с ошибкой, в файл журнала будет записано следующее сообщение: database is down: reconnecting in 10 seconds
. Когда база данных становится доступной, записывается сообщение database connection re-established
. Ранее таких сообщений не было при DebugLevel=2.
Сервер теперь будет вычислять время удаления потерянных ресурсов низкоуровневого обнаружения на основе времени обработки правила обнаружения. Ранее для этих целей использовался штамп времени элемента данных обнаружения. Новая логика предназначена для того, чтобы обезопасить пользователей от ситуаций, когда элемент данных обнаружения отправляется через Zabbix sender с неверным штампом времени. Однако, если элемент данных правила обнаружения проверяется через прокси и/или активный агент и происходит задержка на пути к серверу, тогда эта ситуация приводит к потере ресурсов, которые бы удалились позже при сравнении со старой логикой.
Удалены кэш текстовой истории и связанные с ним внутренние проверки (zabbix[wcache,text,<режим>]
) - текстовые данные теперь также хранятся в кэше истории. В зависимости от инсталляции в файле конфигурации параметр HistoryCacheSize
необходимо увеличить на значение старого HistoryTextCacheSize
параметра.
Добавлен кэш индексов истории для индексирования хранилища данных в кэше истории. Размер кэша индексов настраивается при помощи HistoryIndexCacheSize
параметра в файле конфигурации. Размер индексов кэша истории определяет максимальное количество значений элементов данных, которые можно сохранить в кэше истории.
Когда кэш индексов истории заполняется, Zabbix завершает свою работу с соответствующей ошибкой. В худшем случае Zabbix должен быть в состоянии записать значения со всех элементов данных в кэш истории - таким образом размер кэша индексов истории должен быть достаточно большим, чтобы индексировать все элементы данных всей системы. Кэшу индексов требуется около 100 байт на кэширование одного элемента данных.
Использование кэша индексов истории можно наблюдать при помощи внутренней проверки zabbix[wcache,index,<режим>]
. Смотри Внутренние проверки для получения большей информации.
Теперь действия и условия действий хранятся в кэше конфигурации. Что означает, что изменение действий или их условий не повлияет на обработку действий до тех пор пока кэш конфигурации не синхронизируется.
Inetd версия Zabbix агента (zabbix_agent) так как этой версией, похоже, им никто не пользовался.
До 3.0 Windows агент по умолчанию запускался в консоли, если в командной строке не указывались опции управления службой. Теперь для запуска Windows агента в консоли требуется указать опцию -f
командной строки.
По причине добавления поддержки мониторинга файлов журналов с любым типом значения, изменилась структура AGENT_RESULT. Что означает, что необходимо перекомпилировать модули, которые использовали эту структуру.
Сервер используется для раскрытия {МАКРОС<1-9>} подобно обычному {МАКРОС} в не связанных с триггерами местах. Теперь в таких местах можно использовать только {МАКРОС}, {МАКРОС<1-9>} не распознается. В местах связанных с триггерами {МАКРОС<1-9>} можно так же использовать как ссылку на элементы данных и соответствующие узлы сети в порядке, в котором они записаны в выражении триггера. Раскрытие {{HOST.HOST<1-9>}:ключ.функ()}
в именах графиков не затронуто.
Предыдущая версия: |
|
Zabbix 3.0: |
|<| |<| |-|
Элемент комплексного экрана | Изменение подписи поля |
---|---|
Часы (при выбранном 'Время на узле сети') | Параметр → Элемент данных |
График | Имя графика → График |
Прототип графиков | Имя графика → Прототип графиков |
Карта сети | Параметр → Карта сети |
Простой текст | Параметр → Элемент данных |
Комплексный экран | Параметр → Комплексный экран |
Простой график | Параметр → Элемент данных |
Прототип простого графика | Параметр → Прототип элементов данных |
Добавлена проверка правильности ссылки на глобальные регулярные выражения в функциях триггеров logeventid(), regexp() и iregexp(). Если указанная ссылка неправильна из-за некорректного написания или отсутствющего глобального регулярного выражения, тогда триггер перейдет в неизвестное состояние и отобразится соответствующая ошибка.
Сообщения, записываемые в файлы журналов, теперь содержат IP адреса при входящих/исходящих подключениях между Zabbix сервером и Zabbix прокси.
Удалены следующие сообщения:
sending heartbeat message to server failed: <ERROR>
Error while sending data to the server [<ERROR>]
Error while receiving answer from server [<ERROR>]
cannot obtain configuration data from server: <ERROR>
received configuration data from server, datalen <LENGTH>
sending host availability data to server failed: <ERROR>
sending data to server failed: <ERROR>
cannot collect proxy configuration: <ERROR>
sending configuration data to proxy "<PROXY>", datalen <LENGTH>
cannot send proxy configuration, error:"<ERROR>", info:"<INFO>"
host availability data from active proxy on "<IP>" failed: <ERROR>
error while sending host availability data to server: <ERROR>
sending host availability data to server: error:"<ERROR>", info:"<INFO>"
proxy configuration request from active proxy on "<IP>" failed: <ERROR>
cannot collect proxy configuration: <ERROR>
sending configuration data to proxy "<PROXY>", datalen <LENGTH>
cannot send configuration: <ERROR>
invalid proxy configuration data: <ERROR>
autoregistration data from active proxy on "<IP>" failed: <ERROR>
error while sending auto-registration data to server: <ERROR>
sending auto-registration data to server: error:"<ERROR>", info:"<INFO>"
discovery data from active proxy on "<IP>" failed: <ERROR>
error while sending discovery data to server: <ERROR>
sending discovery data to server: error:"<ERROR>", info:"<INFO>"
history data from active proxy on "<IP>" failed: <ERROR>
error while sending history data to server: <ERROR>
sending history data to server: error:"<ERROR>", info:"<INFO>"
heartbeat from active proxy on "<IP>" failed: <ERROR>
misconfiguration error: the proxy is running in the active mode but server sends requests to it as to proxy in passive mode
received configuration data from server, datalen <LENGTH>
Добавлены следующие сообщения, они соответствуют удаленным сообщениям выше:
cannot send heartbeat message to server at "<IP>": <ERROR>
cannot obtain configuration data from server at "<IP>": <ERROR>
received configuration data from server at "<IP>", datalen <LENGTH>
cannot send host availability data to server at "<IP>": <ERROR>
cannot send history data to server at "<IP>": <ERROR>
cannot collect configuration data for proxy "<PROXY>": <ERROR>
sending configuration data to proxy "<PROXY>" at "<IP>", datalen <LENGTH>
cannot send configuration data to proxy "<PROXY>" at "<IP>": <ERROR>
cannot parse host availability data from active proxy at "<IP>": <ERROR>
cannot send host availability data to server at "<IP>": <ERROR>
cannot parse proxy configuration data request from active proxy at "<IP>": <ERROR>
cannot collect configuration data for proxy "<PROXY>" at "<IP>": <ERROR>
sending configuration data to proxy "<PROXY>" at "<IP>", datalen <LENGTH>
cannot send configuration data to proxy "<PROXY>" at "<IP>": <ERROR>
cannot parse proxy configuration data received from server at "<IP>": <ERROR>
cannot parse autoregistration data from active proxy at "<IP>": <ERROR>
cannot send auto-registration data to server at "<IP>": <ERROR>
cannot parse discovery data from active proxy at "<IP>": <ERROR>
cannot send discovery data to server at "<IP>": <ERROR>
cannot parse history data from active proxy at "<IP>": <ERROR>
cannot send history data to server at "<IP>": <ERROR>
cannot parse heartbeat from active proxy at "<IP>": <ERROR>
misconfiguration error: the proxy is running in the active mode but server at "<IP>" sends requests to it as to proxy in passive mode
received configuration data from server at "<IP>", datalen <LENGTH>