Home » Telegram » Бэкап базы данных Zabbix

Бэкап базы данных Zabbix

Хочу порекомендовать полезный скрипт для бэкапа базы данных Zabbix - https://github.com/npotorino/zabbix-backup. Его особенность в том, что он позволяет выбрать, какие таблицы ты будешь бэкапить со всеми данными, а для каких только структуру.

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом "Administrator Linux. Professional" в OTUS. Курс не для новичков, для поступления нужно пройти .

Это полезно, когда вам нужно перенести конфигурацию мониторинга Zabbix на другой сервер, но при этом вам не нужны исторические данные. Скрипт позволяет сделать полный бэкап таблиц с настройками, а, к примеру, events, history, trends перенести пустыми.

К сожалению, в описании указана поддержка только до версии 5.0. Не факт, что корректно заработает на 5.2 и выше, но вероятность большая, что все будет ОК. Я лично не проверял это. Для предыдущих версий пользовался скриптом, все отлично было.

Единственный нюанс сразу уточню для тех, кто будет переносить только конфигурацию. У меня после восстановления на новом сервере не работал сбор данных по неизвестной причине. Помог полный экспорт всех узлов в xml файл, удаление и импорт их же из xml файла. После этого данные пошли в систему.

Пример того, как с помощью этого скрипта можно забэкапить базу данных zabbix на Postgresql с TimeScaleDB:

git clone https://github.com/npotorino/zabbix-backup
cd zabbix-backup
./zabbix-dump -t psql -H localhost -P 5432 -o /var/backup

Восстановление базы zabbix:

systemctl stop zabbix-server.service
sudo -u postgres dropdb zabbix
sudo -u postgres createdb -O zabbix zabbix

echo "CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;" | sudo -u postgres psql zabbix
echo "SELECT timescaledb_pre_restore();" | sudo -u postgres psql zabbix

gunzip /var/backup/zabbix_cfg_localhost_20200730-1810_db-psql-5.0.1.sql.gz
sudo -u postgres psql zabbix < /var/backup/zabbix_cfg_localhost_20200730-1810_db-psql-5.0.1.sql

echo "SELECT timescaledb_post_restore();" | sudo -u postgres psql zabbix
systemctl restart postgresql-12.service
systemctl start zabbix-server.service

На этом все.

Источник - мой канал: https://t.me/srv_admin/411.

Онлайн курс по Kubernetes

Онлайн-курс по Kubernetes – для разработчиков, администраторов, технических лидеров, которые хотят изучить современную платформу для микросервисов Kubernetes. Самый полный русскоязычный курс по очень востребованным и хорошо оплачиваемым навыкам. Курс не для новичков – нужно пройти вступительный тест.

Если вы ответите "да" хотя бы на один вопрос, то это ваш курс:
  • устали тратить время на автоматизацию?
  • хотите единообразные окружения?;
  • хотите развиваться и использовать современные инструменты?
  • небезразлична надежность инфраструктуры?
  • приходится масштабировать инфраструктуру под растущие потребности бизнеса?
  • хотите освободить продуктовые команды от части задач администрирования и автоматизации и сфокусировать их на развитии продукта?
Сдавайте вступительный тест по и присоединяйтесь к новому набору!.

Автор Zerox

Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

Добавить комментарий

Ваш адрес email не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.