Инструкция в данной статье подходит для переноса BILLmanager с CentOS 7 на AlmaLinux. Подробнее о поддерживаемых ОС см. Требования к серверу.

Статья описывает процесс переноса BILLmanager и лицензии между серверами. Эта процедура может потребоваться, например, при смене оборудования или при необходимости перенести платформу на поддерживаемую ОС.

Для переноса потребуется подключение к серверам по SSH и копирование файлов между серверами. Подробнее см. Настройка рабочего места.

Перенос можно осуществлять между серверами с разными операционными системами.

Перед переносом рекомендуем обновить BILLmanager. Версия BILLmanager на новом сервере должна быть не ниже, чем на старом сервере.

Для переноса BILLmanager нужно:

  1. Подготовить новый сервер.
  2. На время переноса включить режим технического обслуживания платформы на старом сервере.
  3. Импортировать данные пользователей со старого сервера на новый.
  4. Перенести кастомные XML-файлы, дополнения и плагины на новый сервер.
  5. Перенести настройки витрины.
  6. Установить отсутствующие пакеты ПО (обработчиков услуг, платёжных систем, почтовых шлюзов).
  7. Привязать лицензию на BILLmanager к новому серверу.
  8. Отключить режим технического обслуживания платформы на старом сервере.

    После переноса BILLmanager рекомендуем отключить или удалить платформу со старого сервера. Одинаковые настройки обработчиков услуг в двух BILLmanager приведут к некорректному открытию услуг.

Подготовка


  1. Установите на новый сервер BILLmanager. Подробнее см. Процесс установки.
  2. Активируйте триальную лицензию на новом сервере.  Для этого обратитесь в техническую поддержку вашего дистрибьютора.

Обратите внимание!

На момент переноса на каждом сервере должна быть активная лицензия.

Триальная лицензия имеет ограничение по количеству клиентов. После переноса BILLmanager активируйте на новом сервере коммерческую лицензию.

Шаг 1. Включите режим технического обслуживания


Maintenance mode — это режим технического обслуживания в BILLmanager. Пока включён этот режим, модули обработки и почтовые шлюзы в BILLmanager не будут выполнять операции.

Чтобы на старом сервере включить режим технического обслуживания, создайте пустой файл /usr/local/mgr5/etc/billmgr.DoNothing.

Шаг 2. Импортируйте данные


  1. На старом сервере:
    1. Создайте резервную копию:
      1. В веб-интерфейсе BILLmanager перейдите в раздел Инструменты Резервное копирование. Подробнее см. Резервное копирование.
      2. Создайте резервную копию, для этого нажмите кнопку Запустить.
      3. Сохраните архив с резервной копией, для этого выберите в списке созданную резервную копию и нажмите Скачать.
    2. Сохраните настройки брендирования. Вы можете пропустить этот шаг, если не изменяли оформление веб-интерфейса BILLmanager. Подробнее см. Брендирование.
      1. Скопируйте директории на новый сервер:

        scp -r /usr/local/mgr5/skins/dragon/local_* root@<IP-адрес_нового_сервера>:/usr/local/mgr5/skins/dragon/
        CODE
      2. Скопируйте конфигурационный файл на новый сервер:

        scp /usr/local/mgr5/etc/brand_settings.billmgr.xml root@<IP-адрес_нового_сервера>:/usr/local/mgr5/etc/
        CODE
  2. На новом сервере:
    1. Перейдите в раздел Инструменты Резервное копирование → кнопка Закачать:
      1. Выберите архив с резервной копией, который вы скачали со старого сервера.
      2. Выберите загруженную резервную копию и нажмите Восстановить.
      3. Дождитесь окончания операции восстановления. В веб-интерфейсе BILLmanager система отобразит уведомление о завершении.
    2. После восстановления из резервной копии на новом сервере в конфигурационном файле будет указан IP-адрес от старого сервера.
      Чтобы BILLmanager был доступен на новом сервере, укажите IP-адрес нового сервера в конфигурационном файле ihttpd /usr/local/mgr5/etc/ihttpd.conf. Подробнее см. Адреса панели управления.
    3. Проверьте, что файл /usr/local/mgr5/etc/billmgr.pem успешно перенесён.
    4. Перезапустите BILLmanager:

      /usr/local/mgr5/sbin/mgrctl -m billmgr exit
      BASH

Обратите внимание!

Тарифы, шаблоны сообщений и документов, которые вы создали, хранятся в БД BILLmanager и будут перенесены вместе с БД.

Шаг 3. Перенесите кастомные XML-файлы, дополнения, плагины и иконки


Если вы создавали кастомные XML-файлы, дополнения, плагины или иконки, для переноса их на новый сервер:

  1. Создайте на новом сервере директорию /usr/local/mgr5/backup/, если такой директории нет.
  2. Перенесите со старого сервера на новый в директорию /usr/local/mgr5/backup/:

    Рекомендуем сохранить кастомные XML-файлы, дополнения и плагины в качестве резервной копии в директории /usr/local/mgr5/backup/. Это поможет выявить причины неисправности, если после переноса возникнут сбои в их работе.

    • /usr/local/mgr5/etc/xml/ — директория с кастомными XML-файлами;

      scp -r /usr/local/mgr5/etc/xml/ root@<IP-адрес_нового_сервера>:/usr/local/mgr5/backup/
      CODE
    • /usr/local/mgr5/addon/ — директория с кастомными дополнениям;

      scp -r /usr/local/mgr5/addon/ root@<IP-адрес_нового_сервера>:/usr/local/mgr5/backup/
      CODE
    • /usr/local/mgr5/src/ — директория с кастомными плагинами;

      scp -r /usr/local/mgr5/src/ root@<IP-адрес_нового_сервера>:/usr/local/mgr5/backup/
      CODE
    • /usr/local/mgr5/skins/userdata/ — директория с кастомными иконками. 
      scp -r /usr/local/mgr5/skins/userdata/ root@<IP-адрес_нового_сервера>:/usr/local/mgr5/backup/
      CODE
  3. Скопируйте содержимое директорий с пропуском существующих файлов:

    cp -n /usr/local/mgr5/backup/xml/* /usr/local/mgr5/etc/xml/
    CODE
    cp -n /usr/local/mgr5/backup/addon/* /usr/local/mgr5/addon/
    CODE
    cp -n /usr/local/mgr5/backup/src/* /usr/local/mgr5/src/
    CODE
  4. Выполните повторную сборку и установку необходимых плагинов. Подробнее об этом см. Взаимодействие на низком уровне, плагины с++.

Шаг 4. Перенесите файлы витрины


Чтобы перенести витрину со старого сервера на новый, скопируйте на новый сервер директории:

  • /usr/local/mgr5/skins/showroom/ — файлы витрины провайдера;

    scp -r /usr/local/mgr5/skins/showroom/ root@<IP-адрес_нового_сервера>:/usr/local/mgr5/skins/showroom/
    CODE
  • /usr/local/mgr5/etc/showroom.sample.dragon/ — файлы шаблонов, на основе которых создаются витрины.

    scp -r /usr/local/mgr5/etc/showroom.sample.dragon/ root@<IP-адрес_нового_сервера>:/usr/local/mgr5/etc/showroom.sample.dragon/
    CODE

Шаг 5. Запустите установку отсутствующих пакетов


После переноса БД запустите на новом сервере установку всех отсутствующих пакетов обработчиков услуг, платёжных систем и почтовых шлюзов.

Чтобы установить недостающие пакеты, выполните:

/usr/local/mgr5/sbin/mgrctl -m billmgr fix.modules
CODE

Если после выполнения команды не все модули установились, установите их вручную.

Шаг 6. Привяжите коммерческую лицензию к новому серверу


  1. Укажите IP-адрес нового сервера в настройках коммерческой лицензии: Для этого обратитесь в техническую поддержку вашего дистрибьютора.
  2. Обновите файл лицензии. Для этого перейдите в веб-интерфейс BILLmanager, откройте раздел Помощь О программе и нажмите кнопку Обновить лицензию. Либо загрузите лицензию вручную командой:

    /usr/local/mgr5/sbin/licctl fetch billmgr
    BASH

Шаг 7. Отключите режим технического обслуживания


Чтобы отключить режим технического обслуживания, удалите файл /usr/local/mgr5/etc/billmgr.DoNothing.