Создание бэкапа
Запустить вручную создание бэкапа можно через консоль:
chroot /app/asr_billing /usr/local/bin/db_backup
Настройка бэкапов FTP
Настройка бэкпов производится в консольном меню -> Carbon Billing 5 -> Настройки резервного копирования...
Заполняете все нужные поля и сохраняете изменения.
IP-адрес FTP-сервера - адрес удаленнго FTP-сервера. На него будут копироваться копии БД.
Имя пользователя - логин для авторизации на FTP-сервере.
Пароль - пароль для авторизации на FTP-сервере.
Каталог на FTP-сервере - непосредственно в этот каталог будут записываться копии БД.
Ежедневная/Еженедельная/Ежемесячная запись - временные интервалы за которые будет производится резервное копирование БД пользователей. Можно выбрать все 3 пункта одновременно.
Настоятельно рекомендуется активировать Ежедневную запись
Запустить вручную создание и копирование на FTP бэкапа можно через консоль:
chroot /app/asr_billing /etc/cron.daily/05_backup
Восстановление БД из бэкапа
Резервное копирование и восстановление из бекапов при помощи WinSCP
В случае переноса данных системы на другой компьютер или переустановки системы с последующим восстановлением конфигурации и базы пользователей, необходимо сначала сделать полный бекап данных с работающей системы. Для того чтобы сделать полный бекап системы необходимо скопировать резервные копии самой базы пользователей и бекап конфигурационного файла системы. Это делается с помощью программы winscp, дистрибутив которой вы всегда можете найти в Интернете по адресу: http://winscp.net/ Программа бесплатна.
Процесс восстановления данных из бекапов можно разбить на два шага:
ШАГ 1: Копирование данных с сервера.
Подключаемся к серверу на 33 порт.
Убедитесь что данные введены верно и нажимайте "Login", после подключения вы увидите окно, похожее на обычный файловый менеджер с двумя панелями, слева будет ваш локальный компьютер, справа - файловая система Carbon Billing, вас интересует каталог BACKUP на ней.
Путь такой: /app/asr_billing/mnt/backup/
Здесь хранятся ежедневные, ежемесячные и еженедельные бэкапы. Вы можете выбрать те, которые нужны Вам.
Примечание: Статистика копируется отдельно из папки: /app/collector/var/stat/raw/
Примечание: Восстановиться можно из локальных бэкапов, которые хранятся в /mnt/backup/app/asr_billing/backup/ Эти бэкапы не архивированные, поэтому при восстановлении из бэкапа пункт 1 ШАГа 2 нужно пропустить.
ШАГ 2: Восстановление из бэкапа (При переезде).
1. Копируем бэкап на сервер по WinSCP, распаковываем архив.
tar xzf ваш_бэкап.tar.gz /mnt/backup/app/asr_billing/backup/
2. Восстанавливаем БД из бэкапа
chroot /app/asr_billing/
gbk2gdb.sh /mnt/backup/ваш_бекап /var/db/billing_prepare.gdb
exit
3. Останавливаем биллинг
/app/asr_billing/service stop
4. Проверяем, что в /app/asr_billing/var/db есть файл billing.gdb.stop (это файл текущей БД)
Если он есть, то перемещаем его рядом (в этот же каталог) с указанием даты (позже можно будет удалить):
cd /app/asr_billing/var/db/
mv billing.gdb.stop blling<дата>.gdb.stop
Если же файла нет, то приступайте к пункту 5
5. Превращаем восстановленный бэкап в полноценную БД
chroot /app/asr_billing/
cd /var/db
mv ./billing_prepare.gdb ./billing.gdb.stop
chown firebird:firebird ./billing.gdb.stop
exit
6. Запускаем биллинг
echo 'stop OK' > /app/asr_billing/var/lib/app.state
/app/asr_billing/service restart
7. Проверяем что все демоны стартовали и не растут ошибки
Для этого 2 раза подряд запускаем проверку сервера:
server_check
При этом могут быть записи вида:
- Критические ошибки в логе worker за последний час: 3 [СБОЙ]
или
- Ошибки в логе traf-reporter за последний час: 4 [СБОЙ]
Если в течение двух запусков проверки значения не меняются - все в порядке.
Если растут значения "Критические ошибки в логе worker за последний час" - сразу обратитесь в техническую поддержку.
Если растут значения "Ошибки в логе traf-reporter за последний час" - выполните команды
chroot /app/asr_billing/ yes \| cp /skelet/var/db/buff_traf.gdb /var/db/
После этого выполните проверку сервера еще 2 раза подряд. Если все-таки растут значения "Ошибки в логе traf-reporter за последний час" - сразу обратитесь в техническую поддержку.