Резервное копирование сервера Zabbix позволит вам быстро восстановить конфигурацию системы мониторинга при программных сбоях или аппаратных сбоях.
Основная информация и конфигурация Zabbix Server хранится в базе данных (чаще всего используется postgresql или mysql/mariadb). В самом просто случае вам достаточно экспортировать базу данных в файл из командной строки postgresql или mysql/mariadb.
Если вам не нужны исторические данные и вы хотите уменьшить размер дампа базы данных Zabbix Server, можно исключить из бэкапа таблицы с History, Trends и Events (названия этих таблиц: history, history_uint, history_text, history_str, history_log, trends, trends_uint, events
). Исключение этих таблиц позволит уменьшить размер резервных копий на 90%. Список таблиц, которые нужно пропустить можно указать с помощью —ignore-table:
# mysqldump --ignore-table=zabbix.history --ignore-table=zabbix.history_uint --ignore-table=zabbix.trends --ignore-table=zabbix.trends_uint --ignore-table=zabbix.events -u USERNAME -h localhost -pPASSWORD zabbix | gzip -c > /backups/zabbix_`date +%Y-%m-%d`.sql.gz
Кроме резервного копирования базы Zabbix, вы можете добавить в бэкап конфигурационные файлы Zabbix Server, веб сервера (обычно это Nginx или Apache) и SSL сертификаты: /etc/nginx/, /etc/httpd/, /etc/apache2, /etc/zabbix/, /usr/lib/zabbix
Чтобы создать архив с http файлами zabbix можно выполнить команду:
# tar -cvjf /backups/`date +%Y-%m-%d`_zabbix.tar.bz2 /usr/share/zabbix/
Кроме того, вы можете экспортировать и импортировать некоторые элементы сервера через веб-интерфейс Zabbix или API. Можно отдельно экспортировать следующие элементы: Hosts, Templates, Media types, Maps, images, Host groups и Template groups. Это также позволит быстро перенести хосты со старого Zabbix Server на новый.
Для резервного копирования базы данных Zabbix можно использовать готовый скрипт https://github.com/npotorino/zabbix-backup. Скрипт позволяет выбрать таблицы, которые нужно добавить в бэкап и поддерживает версии Zabbix от 3.1 до 6.2.
Чтобы установить скрипт и выполнить резервное копирование, выполните команды:
# git clone https://github.com/npotorino/zabbix-backup
# cd zabbix-backup
# ./zabbix-dump -t psql -H localhost -P 5432 -o /var/backup