Обновление Zabbix#
Обновление Zabbix необходимо выполнить только на серверах мониторинга.
Для обновления Zabbix c 5.0.7 до 6.0.7 следует:
Создать резервные копии конфигурационных файлов Zabbix, последовательно выполнив команды:
mkdir /opt/zabbix-backup/
cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/
cp /etc/apache2/conf-enabled/zabbix-frontend-php.conf /opt/zabbix-backup/
cp -R /usr/share/zabbix/ /opt/zabbix-backup/
cp -R /usr/share/zabbix-* /opt/zabbix-backup/
Установить обновленные пакеты Zabbix:
apt install --only-upgrade zabbix-server-pgsql zabbix-frontend-php
zabbix-agent
Для обновления базы данных Zabbix следует:
Остановить службу севера Zabbix:
systemctl stop zabbix-server
В конфигурационный файл
/etc/zabbix/zabbix_server.conf
добавить параметрAllowUnsupportedDBVersions=1
.Если требуется сохранить текущие таблицы с историей, то переименовать их, выполнив команду:
zcat /usr/share/zabbix-server-pgsql/history_pk_prepare.sql.gz | psql -h
localhost zabbix
Проверить в
/etc/zabbix/zabbix_server.conf
логин и пароль для подключения к базе данных Zabbix (параметрыDBUser
иDBPassword
).Запустить службу сервера Zabbix:
systemctl start zabbix-server
Будет выполнено обновление базы данных Zabbix. Проверить статус обновления можно командой:
cat /var/log/zabbix-server/zabbix_server.log | grep database
Пример вывода команды:
82263:20230627:235018.484 current database version (mandatory/optional):
05000000/05000002
82263:20230627:235018.484 starting automatic database upgrade
82263:20230627:235018.487 completed 0% of database upgrade
...
...
...
82263:20230627:235023.532 completed 97% of database upgrade
82263:20230627:235023.535 completed 98% of database upgrade
82263:20230627:235023.537 completed 99% of database upgrade
82263:20230627:235023.542 completed 100% of database upgrade
82263:20230627:235023.542 database upgrade fully completed
Если требуется восстановить таблицы с историей, следует:
остановить службу севера Zabbix:
systemctl stop zabbix-server
подключиться к серверу PostgreSQL:
psql -U zabbix -h localhost
перезаписать историю из сохраненных таблиц в новые таблицы, выполнив запросы:
INSERT INTO history SELECT * FROM history_old ON CONFLICT (itemid,clock,ns) DO NOTHING; INSERT INTO history_uint SELECT * FROM history_uint_old ON CONFLICT (itemid,clock,ns) DO NOTHING; INSERT INTO history_str SELECT * FROM history_str_old ON CONFLICT (itemid,clock,ns) DO NOTHING; INSERT INTO history_log SELECT * FROM history_log_old ON CONFLICT (itemid,clock,ns) DO NOTHING; INSERT INTO history_text SELECT * FROM history_text_old ON CONFLICT (itemid,clock,ns) DO NOTHING;
удалить переименованные таблицы, выполнив запросы:
DROP TABLE history_old; DROP TABLE history_uint_old; DROP TABLE history_str_old; DROP TABLE history_log_old; DROP TABLE history_text_old;
запустить службу сервера Zabbix:
systemctl start zabbix-server