Обновление Zabbix 2.4 до 3.0
Накануне вышла новая версия системы мониторинга Zabbix 3.0. Я люблю эту систему больше остальных и постоянно ее использую. Поэтому практически сразу было принято решение обновить одну из рабочих систем 2.4 до последней версии 3.0 и посмотреть на нее. Заодно написать инструкцию по обновлению.
Здесь вы можете прочитать об обновления zabbix 3.0 до 3.2.
Содержание:
- 1 Введение или что нового в zabbix 3.0
- 2 Подготовка к обновлению
- 3 Установка обновления zabbix 2.4 до 3.0
- 4 Заключение
- 5 Дополнительные материалы по Zabbix
Введение или что нового в zabbix 3.0
Прежде всего хочу сказать пару слов о том, что появилось нового. Вообще, список изменений внушительный, обзор наиболее значительных изменений можно прочитать на хабре.
Акцент сделан на новом интерфейсе. Лично мне он не очень понравился. Выглядит свежо, но не так наглядно, как старый. Конечно, это субъективно и скорее всего я просто привык к старому внешнему виду. Так что это только мое ощущение. Но лично из-за него мне не хочется пока полностью обновляться на 3.0, надо привыкнуть немного. Из-за того, что убрали почти все рамки в элементах дизайна, он стал сливаться, взгляд хуже выхватывает необходимые данные.
Из тех изменений, что лично мне помогут в моих кейсах по использованию заббикс, так это однозначно авторизация по smtp. Наконец-то они это сделали. Теперь можно обойтись без костылей для отправки уведомлений с smtp авторизацией. Второе, на что обратил внимание — продвинутый планировщик в итемах. Теперь можно указать к итему расписание опроса, к примеру с 9 до 18 по рабочим дням. Это удобно, реально не хватало раньше. Еще полезная фишка — обнаружение служб windows.
Вот пожалуй и все, на что я обратил внимание. Все остальное мне не сильно нужно. Из этого я сделал вывод, что уже настроенные системы переводить на новую версию большого смысла нет. Все костыли там уже сделаны, все работает, если функционал устраивает, можно не трогать. А вот новые инсталляции уже делать на новой версии и привыкать к ней.
Еще очень хорошо, что изменения в обновлении 3.0 не слишком кардинальные. Интерфейс хоть и изменился, но не принципиально. Все старые руководства пока актуальны, по ним можно настраивать новую версию 3.0. И это хорошо, а то пришлось бы все переписывать.
Подготовка к обновлению
В качестве подопытного у нас будет CentOS 7.
Процедура обновления описана в официальном руководстве. Там просто перечислены этапы. Мы же подробно остановимся на каждом этапе и выполним все необходимые действия в консоли.
Первым делом останавливаем zabbix 2.4:
# systemctl stop zabbix-server
Так как в результате обновления будем изменена структура базы данных, делаем на всякий случай ее бэкап:
# /usr/bin/mysqldump --opt -v --databases zabbix -uzabbix -ppassword | /usr/bin/gzip -c > /root/zabbix.sql.gz
Рекомендую заодно сохранить php файлы админки на веб сервере, хотя лично мне они не понадобились. Но если что-то вдруг пойдет не так, можно будет оперативно откатиться назад.
Добавляем репозиторий для версии 3.0:
# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Если получаем ошибку:
file /etc/yum.repos.d/zabbix.repo from install of zabbix-release-3.0-1.el7.noarch conflicts with file from package zabbix-release-2.4-1.el7.noarch
то нужно удалить предыдущий репозиторий:
# yum remove zabbix-release-2.4-1.el7.noarch
И снова попытаться установить новый.
Очищаем и пересоздаем кэш yum:
# yum clean all
# yum makecache
Установка обновления zabbix 2.4 до 3.0
Теперь можно непосредственно обновлять. Устанавливаем новые версии:
# yum install zabbix-server-mysql zabbix-web-mysql
Проверяем файл с конфигурацией web интерфейса в настройках httpd по адресу /etc/httpd/conf.d. Там должен быть только один zabbix.conf. Редактируем его — снимаем комментарий со строчки:
php_value date.timezone Europe/Moscow
указываем в ней свой часовой пояс. Перезапускаем httpd:
# systemctl restart httpd
Редактируем новый конфиг заббикс сервера /etc/zabbix/zabbix_server.conf.rpmnew, указываем в нем данные для подключения к mysql базе:
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
Остальное можно оставить по-умолчанию, если вы не делаете дополнительных настроек. Переносите или перезаписываете старый конфиг, а новый переименовываете в zabbix_server.conf:
# cp /etc/zabbix/zabbix_server.conf.rpmnew /etc/zabbix/zabbix_server.conf
cp: overwrite ‘/etc/zabbix/zabbix_server.conf’? y
Запускаем обновленный zabbix 3.0:
# systemctl start zabbix-server
Смотрим лог /var/log/zabbix/zabbix_server.log. Там должна быть информация об обновлении структуры базы:
9697:20160220:000843.919 starting automatic database upgrade
9697:20160220:000844.029 completed 0% of database upgrade
9697:20160220:000844.129 completed 1% of database upgrade
9697:20160220:000844.329 completed 2% of database upgrade
9697:20160220:000844.485 completed 3% of database upgrade
9697:20160220:000844.640 completed 4% of database upgrade
Дожидаетесь окончания и проверяете веб интерфейс заббикса по старому адресу. Все должно работать на новой версии. Если обновляли и агента, то не забудьте его перезапустить на всякий случай:
# systemctl restart zabbix-agent
Заключение
Я очень рад, что такая качественная и серьезная система мониторинга, при том абсолютно бесплатная, развивается и выходят новые версии. Приятно пользоваться современным продуктом. Есть хорошая документация, сайт с полной информацией о продукте. Рекомендую всем, кто выбирает систему мониторинга использовать Zabbix 3.0 По словам разработчиков, они активно работают над продуктом. На подходе очередное обновление 3.2, где будут дополнительные изменения функционала. Я планирую продолжить цикл статей по настройке заббикса.
upd. 02.03.2016 Небольшое дополнение после пары недель эксплуатации новой версии.
Если вы настраивали мониторинг температуры по моей статье, либо если у вас есть свои скрипты сбора данных, исполняемых на стороне клиента, то вам надо обратить внимание на еще одну настройку сервера — Timeout. В конфиге 3-й версии сервера таймаоут по-умолчанию 4 секунды. В моем случае с измерением температуры, скрипт на клиенте не успевал за это время отдавать данные. В результате в логах сервера постоянно было:
11864:20160302:145628.456 Zabbix agent item "Temperature.CPU" on host "fileserver" failed: first network error, цait for 15 seconds
11864:20160302:145636.475 resuming Zabbix agent checks on host "1Csrv": connection restored
11864:20160302:145640.478 Zabbix agent item "Temperature.CPU1" on host "1Csrv" failed: first network error, wait for 15 seconds
11864:20160302:145643.488 resuming Zabbix agent checks on host "fileserver": connection restored
11864:20160302:145647.492 Zabbix agent item "Temperature.CPU" on host "fileserver" failed: first network error, wait for 15 seconds
11864:20160302:145655.513 resuming Zabbix agent checks on host "1Csrv": connection restored
11864:20160302:145703.150 resuming Zabbix agent checks on host "fileserver": connection restored
Из-за этого прекращался на несколько минут вообще любой сбор сведений с этого узла и срабатывал триггер на доступность хоста. Я долго не мог сообразить, почему мне периодически сыпятся оповещения о том, что хост недоступен, хотя я четко видел, что он доступен и проблем с сетью нет.
Причем проблемы были только на некоторых хостах, не на всех. Там, где скрипт не успевал отработать за 4 секунды, была ошибка. После увеличения параметра Timeout на сервере до 15-ти секунд все проблемы с доступностью хостов исчезли.
- Установка Zabbix 3 на nginx + php-fpm
- Мониторинг значений из текстового файла в Zabbix
- Мониторинг размера бэкапа в Zabbix
- Установка и настройка zabbix прокси на CentOS 7
- Обновление Zabbix 3.0 до 3.2
- Мониторинг лог файла в Zabbix
- Мониторинг срока действия ssl сертификата в zabbix
- Обновление Zabbix 3.2 до 3.4
- Настройка мониторинга SMART жесткого диска в zabbix
- Очистка, оптимизация, настройка mysql базы Zabbix