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 мин.