Перенос VMmanager с исходного сервера на сервер назначения состоит из следующих шагов:

  1. Перенос данных VMmanager.
  2. Перенос доменного имени, если к исходному серверу привязан домен.
  3. Изменение токена лицензии.

Шаг 1. Перенос данных VMmanager


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

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

  1. На сервере назначения:
    1. Установите VMmanager. Подробнее см. в статье Установка.
    2. Остановите VMmanager и удалите созданные контейнеры:

      docker-compose -f /opt/ispsystem/vm/docker-compose.yaml down
      CODE
    3. Удалите данные, созданные установщиком:

      rm -rf /opt/ispsystem/vm/mysql /opt/ispsystem/vm/clickhouse /opt/ispsystem/vm/config.json
      
      CODE
    4. Убедитесь, что узлы и виртуальные машины исходного сервера доступны с сервера назначения. При необходимости внесите изменения в конфигурацию файрвола.
  2. На исходном сервере:

    1. Остановите VMmanager и удалите его docker-контейнеры:

      vm down
      CODE
    2. Перенесите директории /opt/ispsystem/vm/mysql/, /opt/ispsystem/vm/telegram-srv/, /opt/ispsystem/vm/clickhouse/ и файл /opt/ispsystem/vm/config.json на сервер назначения. Например:

      Перенос данных с использованием rsync

      rsync -avzP /opt/ispsystem/vm/{mysql,clickhouse,config.json} user@1.2.3.4:/opt/ispsystem/vm/
      CODE

      user имя пользователя на сервере назначения;

      1.2.3.4 IP-адрес сервера назначения.

      Файл config.json обязательно перенесите на сервер назначения.

      Директории:

      • mysql  обязательно переносите на сервер назначения;
      • telegram-srv — переносите, если настроена интеграция с telegram;
      • clickhouse — переносите, если необходимо сохранить статистику;
      • socket и consul — переносить не требуется.

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

       Утилита rsync должна быть установлена и на исходном сервере, и на сервере назначения.

  3. Запустите VMmanager на сервере назначения:

    vm start
    CODE
  4. Если перенос завершился успешно, удалите платформу с исходного сервера:
    1. Остановите и удалите из автозагрузки службу VMmanager: 

      systemctl stop vm.service
      CODE
      systemctl disable vm.service
      CODE
    2. Удалите информацию о работе платформы: 

      rm /opt/ispsystem/vm -rf
      CODE
    3. Удалите установленные docker-образы и контейнеры: 

      docker system prune -a -f
      CODE
    4. Удалите ПО Docker: 

      AlmaLinux, CentOS, РЕД ОС

      yum remove docker-ce docker-ce-cli docker-ce-rootless-extras containerd.io
      CODE

      Ubuntu, Astra Linux

      apt remove docker-ce docker-ce-cli docker-ce-rootless-extras containerd.io
      CODE

Шаг 2. Перенос доменного имени


  1. Внесите изменения в A-запись NS: поменяйте IP-адрес исходного сервера на IP-адрес сервера назначения.
  2. Если к домену подключен SSL-сертификат, скопируйте файлы сертификата с исходного сервера на сервер назначения.

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

 На период переноса доменного имени рекомендуем создать на сервере назначения временный поддомен. Если у вас SSL-сертификат без поддержки Wildcard, получите для поддомена бесплатный сертификат Let's Encrypt.

Шаг 3. Изменение токена лицензии


При переносе платформы на новый сервер нужно заново создать токен лицензии. Если вы приобретали лицензию в ISPsystem, измените значение Token для вашей лицензии в личном кабинете my.ispsystem.com.

Чтобы обновить информацию о токене лицензии:

  1. Подключитесь к серверу с VMmanager по SSH с правами суперпользователя (по умолчанию root).
  2. В конфигурационном файле /opt/ispsystem/vm/config.json укажите новое значение токена лицензии в параметре LicenseToken.

    Пример файла config.json

    {"MysqlRootPassword":"password","LicenseToken":"aaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbb","DomainName":"1.2.3.4","CurrentVersion":"3.2.0"}
    CODE
  3. Введите команды для пересоздания контейнера vm_auth_back_1:

    docker stop vm_auth_back_1
    CODE
    docker rm -f vm_auth_back_1
    CODE
    vm start
    CODE
  4. Чтобы проверить установку лицензии, введите команду:

    docker exec -it vm_auth_back_1 env | grep TOKEN
    CODE

    Если лицензия изменена успешно, то будет получен ответ вида: LICENSE_AUTH_TOKEN=aaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbb

    aaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbb — новое значение токена лицензии.

5. В интерфейсе VMmanager перейдите в Обзор системыОбновить лицензию.