Thank you for reading this post, don't forget to subscribe!
Что нового в версии zabbix 4.2
- Поддержка Prometheus. Это очень крутой шаг вперед в развитии. Преметеус очень популярная современная система мониторинга контейнерных систем, которые активно развиваются и внедряются. Заббикс сделал важный шаг, настроив простую интеграцию.
- Оптимизация высокочастотного мониторинга. Очень удобная штука, которая позволит существенно экономить место в базе данных. Как известно, база данных - узкое место работы системы мониторинга в целом. Так что инструмент, который позволит существенно сократить количество записей, не потеряв функционал, очень полезен.
- Обработка данных с помощью javascript. Я не умею писать на javascript и тем не менее понимаю важность и удобство этого нововведения. Обработку данных можно делать на сервере практически в любом виде. Меньше скриптов на местах, больше обработок на сервере. С таким подходом удобнее управлять и масштабировать систему. Это однозначно плюс. Надо учить javascript.
- Тест препроцессинга. Теперь можно настроить итем, препроцессинг и тут же посмотреть, как он работает. Не надо ждать, когда актвируется элемент и начнут поступать данные. Это экономит время отладки.
- Препроцессинг на стороне прокси. Тут все понятно и без объяснений. Снимаем нагрузку с сервера и распределяем ее по прокси.
- Тэги для шаблонов и узлов. Я лично пользуюсь тэгами, поэтому рад расширению этого функционала. Будет удобнее формировать списки на основе каких-то признаков.
- Тест способов оповещений. Вроде мелочь, но как же надоедает отлаживать способы оповещения, когда что-то не работает. Приходится создавать какой-то триггер и постоянно его дергать, чтобы проверить работу. Особенно это актуально для оповещений в telegram. Теперь можно будет проверять оповещения прямо из интерфейса настроек.
- HTML формат оповещений. Мне лично не актуально, хватает и текстовых. Но я видел, как люди колхозят скриптами красивые html оповещения. Теперь это будет работать из коробки.
- Новый фильтр в конфигурации триггеров. Отлично, что обратили внимание на этот нюанс. Текущий фильтр реально не удобный, особенно когда на хосте сотни триггеров. Мне приходилось искать триггеры через список итемов. Сначала ищешь нужный итем, потом переходишь в триггер. Фильтр итемов более удобный.
- Точное время на графике. Наконец-то это сделали. Теперь можно навести на график и увидеть точное время. На некоторых графиках невозможно точно узнать время, если шаг большой, цифры в линии времени мелкие. Эта проблема решена.
Перед обновлением, сделаем на всякий случай бэкап базы данных. Для этого предварительно остановим сервер.
1 2 |
# systemctl stop zabbix-server # /usr/bin/mysqldump --opt -v --databases zabbix -uzabbix -p'password' | /usr/bin/gzip -c > /root/zabbix.sql.gz |
zabbix | название базы данных заббикса |
-uzabbix | ключ -u и дальше имя пользователя базы данных |
-p’password’ | ключ -p и дальше пароль пользователя бд, если в пароле есть спецсимволы, экранируйте их одиночными кавычками |
На всякий случай сохраним php скрипты админки, чтобы можно было оперативно запустить старую версию в случае нештатной ситуации:
1 |
# cp -R /usr/share/zabbix /root |
Centos 7
Подключаем репозиторий версии zabbix 4.2:
1 |
# rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm |
Старый репозиторий от версии 4.0 будет автоматически удален.
Очищаем и пересоздаем кэш yum:
1 2 |
# yum clean all # yum makecache |
Debian 9
Удаляем пакет текущего репозитория:
1 |
# rm -Rf /etc/apt/sources.list.d/zabbix.list |
Подключаем новый:
1 2 |
# 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 |
Обновляем информацию о репозиториях:
1 |
# apt update |
Ubuntu 18
Удаляем пакет текущего репозитория:
1 |
rm -Rf /etc/apt/sources.list.d/zabbix.list |
Подключаем новый:
1 2 |
# 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 |
Обновляем информацию о репозиториях:
1 |
# apt update |
Если у вас другие версии систем, то простой найдите ссылки пакетов под свою версию в официальном репозитории — https://repo.zabbix.com/zabbix/4.2/ Дальнейшее обновление не будет отличаться от текущего.
К обновлению подготовились, можно приступать.
Установка обновления zabbix 4.0 до 4.2
Centos 7
Устанавливаем само обновление zabbix на сервер Centos 7 следующей командой:
1 |
# yum upgrade zabbix-server-mysql zabbix-web zabbix-agent |
Это список программ заббикса для общего случая. Если у вас установлено что-то еще, лучше обновить все сразу. Посмотреть список установленных пакетов zabbix можно командой:
1 2 3 4 5 6 7 8 9 |
# rpm -qa | grep zabbix zabbix-sender-4.0.4-1.el7.x86_64 zabbix-threat-control-host-.24-el7.noarch zabbix-release-4.0-1.el7.noarch zabbix-threat-control-main-.49-el7.noarch zabbix-get-4.0.4-1.el7.x86_64 zabbix-web-4.0.4-1.el7.noarch zabbix-agent-4.0.4-1.el7.x86_64 zabbix-server-mysql-4.0.4-1.el7.x86_64 |
В моем случае есть еще пакеты zabbix-get и zabbix-sender. Обновляем все сразу:
1 |
# yum upgrade zabbix-server-mysql zabbix-web zabbix-agent zabbix-get zabbix-sender |
Debian 9/Ubuntu 18
Устанавливаем само обновление zabbix на сервер с Debian или Ubuntu следующей командой:
1 |
# apt-get install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent |
Дальше инструкция общая для всех систем. После завершения обновления, запускаем сервер:
1 |
# systemctl start zabbix-server |
В момент запуска произойдет обновление базы данных. Для маленькой базы (1-2 гб) это не займет много времени. Вы можете даже не заметить процесса. Если база больше, то надо подождать, пока не закончится обновление. Следить за ним можно с помощью просмотра лог файла zabbix сервера.
1 |
# tail -f /var/log/zabbix/zabbix_server.log |
После завершения обновления базы, сервер запустится. После этого можно запустить и агент.
1 |
# systemctl start zabbix-agent |
В логах агента и сервера можно посмотреть версию запущенных сервисов.
1 |
Starting Zabbix Agent [serveradmin.ru]. Zabbix 4.2.0 (revision 91746). |
1 |
Starting Zabbix Server. Zabbix 4.2.0 (revision 91746). |
Теперь можно идти в веб интерфейс и смотреть на обновленную версию zabbix server. Перед этим почистите кэш браузера и удалите куки от страницы заббикса. Если этого не сделать, то могут быть проблемы и ошибки, с чем я не раз сталкивался. Если у вас в качестве веб сервера используется nginx, не забудьте поменять владельца директории /etc/zabbix/web на nginx. После обновления он будет принадлежать apache, а web интерфейс не будет работать.
1 |
# chown -R nginx:nginx /etc/zabbix/web |
В веб интерфейсе в самом низу будет показана текущая версия сервера: