BILLmanager имеет встроенную функцию для создания резервных копий. По умолчанию резервное копирование не выполняется. Провайдер вручную создаёт и настраивает план резервного копирования в разделе Инструменты → Резервное копирование. Кнопка Настроить открывает форму редактирования текущего задания или, если их нет, запускает мастер добавления нового задания.
Создание нового задания
Тип хранилища
Биллинговая платформа поддерживает сохранение резервных копий в облачном сервисе Dropbox, их отправку на FTP-сервер или сохранение в отдельной директории сервера, на котором установлен BILLmanager.
Настройки хранилища
Форма настройки хранилища отличается в зависимости от выбранного типа хранилища. Настройка локального хранилища:
Расписание
Система может запускать задание резервного копирования ежедневно в указанное время, или еженедельно в выбранные дни:
План резервного копирования
План резервного копирования — настройки, которыми определяется, какие резервные копии будут сохранены, а какие будут удалены. Копии отбираются согласно настроенному периоду: месяц, неделя, день. В конфигурационном файле плана резервного копирования установлены значения для каждого периода. Они обозначают количество последних периодов для учёта в плане резервного копирования. Копии, которые не вошли в установленное значение, удаляются. По умолчанию для параметров установлены значения три месяца, три недели и шесть дней. Это значит, что будут храниться резервные копии:
- сделанные в начале трёх последних месяцев;
- сделанные в начале трёх последних недель;
- сделанные в конце шести последних дней.
Для периодов "неделя" и "месяц" сохраняется первая копия, сделанная за период; для периода день — последняя копия периода. Резервные копии не хранятся за период, если установить значение ноль или ниже.
Конфигурационный файл с настройкой плана резервного копирования расположен в директории /usr/local/mgr5/etc/.billmgr-backup/plans/. Основные параметры настроек:
- dlimit — сколько дней хранить копии;
- wlimit — сколько недель хранить копии;
- mlimit — сколько месяцев хранить копии;
- rewrite_today — хранить только одну копию за день, если значение on. При значении on происходит ежедневная проверка сохранённых резервных копий. Если сохранённые копии есть, выбирается последняя копия текущего дня, остальные копии будут удалены.
Пример настройки плана резервного копирования:
<archiver>tgz</archiver>
<backup_type>full</backup_type>
<dlimit></dlimit>
<full_monthday></full_monthday>
<full_period></full_period>
<full_weekday></full_weekday>
<id>plan1</id>
<max_dir_size></max_dir_size>
<max_file_size></max_file_size>
<mlimit>3</mlimit>
<name>plan1</name>
<rewrite_today>on</rewrite_today>
<storage>1</storage>
<wlimit>3</wlimit>
С указанными настройками копии будут храниться на начало трёх последних месяцев, трёх последних недель и последняя за текущий день. В примере установлены значения:
- mlimit 3 — для каждого месяца хранится первая резервная копия за последние три месяца;
- wlimit 3 — для каждой недели хранится первая резервная копия за последние три недели;
- rewrite_today=on — сохраняются все резервные копии текущего дня. По результатам ежедневной проверки сохранится только последняя копия дня.
Изображения
Изображения не хранятся в базе данных, поэтому они не включаются в резервную копию.
Вы можете найти изображения:
Восстановление из резервной копии
Восстановление через интерфейс
Процесс восстановления запускается на странице управления резервным копированием: Инструменты → Резервное копирование → выделить нужную копию → кнопка Восстановить. Такой способ запускает полное восстановление биллинговой платформы.
Также, система поддерживает восстановление отдельных компонентов системы. Кнопка Данные открывает список доступных компонентов:
- Файлы. Компонент хранит настройки панели управления, настройки пользователей и т.п. Для восстановления всех файлов, необходимо выделить компонент Файлы и нажать кнопку Подробнее, затем выделить элемент "files" и нажать кнопку Восстановить. Также, поддерживается восстановление отдельных файлов. Для этого необходимо перейти к форме выбора файлов: выделить элемент "files" и нажать кнопку Просмотр файлов.
- База данных. Компонент хранит всю информацию: об учетных записях, тарифных планах, расходах клиентов и т.п. Для восстановления данных, необходимо выделить компонент База данных и нажать кнопку Подробнее", затем выделить элемент "<имя БД на сервере>" и нажать кнопку Восстановить.
В процессе восстановления:
- Архив с данными копируется из хранилища во временный каталог сервера.
- Содержимое архива извлекается во временный каталог сервера.
- В зависимости от выбранных компонентов, выбранные файлы будут перемещены в пункт назначения или база данных будет заполнена данными.
Восстановление через терминал
Восстановление файлов
В произвольную директорию на сервере с BILLmanager необходимо поместить файл резервной копии (архив) из хранилища, а затем выполнить команду:
tar -xz -C / -f <директория файла резервной копии>
Команда для восстановления конкретных файлов из архива:
tar -xz -C / -f <директория файла резервной копии> <имя файла>
Команда для восстановления из архива на FTP-сервере:
curl ftp://example.com/backup_2015-04-01_03-00-00/plan1-files-0.tgz | tar -xz -C / -f -
Восстановление базы данных
В произвольную директорию на сервере с BILLmanager необходимо поместить файл резервной копии (архив) из хранилища, а затем выполнить команду:
tar -xz --wildcards -O -f /путь/до/архива/с/БД '*.sql' | mysql -uroot -p billmgr
Команда для восстановления из архива на FTP-сервере:
curl ftp://example.com/backup_2015-04-01_03-00-00/database-billmgr-1.tgz | tar -xz --wildcards -O -f - '*.sql' | mysql -uroot -p billmgr
Среднее время восстановления работоспособного состояния платформы занимает не более 10 мин.