Восстановление Zabbix из резервной копии
Есть два типа архивов резервной копии БД Zabbix:
-
Архив, содержащий накопленные данные мониторинга и настройки Zabbix.
Данные мониторинга могут занимать большой объем на диске. Поэтому перед восстановлением резервной копии убедитесь, что на сервере Zabbix есть необходимый объем для размещения создаваемого временного дампа БД.
Путь к нему указан в переменной
backup_pathфайла/deploy/installer/ansible_collections/vk/s3_ops/playbooks/vars/backup_vars.ymlна деплой-ноде.Названия файлов имеют вид
<ИМЯ_СЕРВЕРА>_zabbix_backup_full_<YYYYMMDDTHHMMSS>. Здесь<YYYYMMDDTHHMMSS>— временная метка создания резервной копии. -
Архив, содержащий только настройки Zabbix. Занимает объем менее 100 МБ.
Названия файлов имеют вид
<ИМЯ_СЕРВЕРА>_zabbix_backup_without_data_<YYYYMMDDTHHMMSS>.
Чтобы восстановить Zabbix из резервной копии:
-
Выберите необходимый архив резервной копии и скопируйте его на сервер Zabbix во временную директорию
tmp:$ scp -3 <backup-server>:/s3_backups/<backup-name> <zabbix-server>:/tmp/ -
Остановите сервис Zabbix-сервера:
$ systemctl stop zabbix-server.service -
Удалите текущую БД Zabbix:
$ psql -U postgrespostgres=# \lpostgres=# drop database zabbix WITH ( force );DROP DATABASEpostgres=# \l -
Создайте новую БД Zabbix с расширением
timescaledb:$ postgres=# CREATE DATABASE zabbix;$ CREATE DATABASEpostgres=# \c zabbixYou are now connected to database "zabbix" as user "postgres".zabbix=# CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;...CREATE EXTENSION -
Восстановите БД Zabbix из архива и выйдите из консоли PostgreSQL:
$ zabbix=# \! pg_restore -U postgres -Fc -d zabbix /tmp/<backup-name>$ zabbix=# SELECT timescaledb_post_restore();$ zabbix=# exit -
Запустите сервис Zabbix-сервера:
$ systemctl start zabbix-server.service -
Проверьте работоспособность Zabbix-сервера:
-
Проверьте, что в логах нет ошибок.
$ tail -f /var/log/zabbix/zabbix_server.log -
Проверьте в GUI сервера Zabbix, что из архива восстановились необходимые настройки. При восстановлении полного архива проверьте восстановление данных мониторинга.
-
Проверьте штатную работу мониторинга.
-
-
Удалите архив БД из временной директории на сервере Zabbix:
$ rm /tmp/<ИМЯ_АРХИВА>