VMmanager

Перенос платформы на ВМ

Вы можете перенести сервер с платформой на виртуальную машину (ВМ) в кластере, которым эта платформа управляет. Это позволит:

  • сэкономить ресурсы — для платформы не потребуется отдельный сервер;
  • повысить надёжность системы — если платформа будет размещена в отказоустойчивом кластере, то при отказе узла с платформой её работа будет восстановлена на другом узле;
  • гибко масштабировать платформу — добавить ресурсы для сервера платформы можно будет как для обычной ВМ.

ВМ, на которую переносится платформа, называется мастер-VM

Ограничения

Требования к платформе

В текущей реализации поддерживается перенос платформы, установленной на ОС:

  • AlmaLinux 8;
  • Astra Linux Special Edition 1.7.4 с уровнем защищённости "Орел";
  • Astra Linux Special Edition 1.8.1 с уровнем защищённости "Орел".
Перенос платформы, установленной на ОС Ubuntu и ОС Astra Linux с уровнем защищённости "Воронеж" не поддерживается.

Требования к кластеру для переноса

Кластер, в который переносится платформа, должен обладать следующими характеристиками:

  • тип виртуализации — KVM;
  • тип сетевых настроек — "Коммутация" или "IP-fabric";
  • в кластере доступен пул, из которого будет выделен новый IP-адрес платформы;
  • в кластере доступен шаблон ОС, установленной на сервере с платформой;
  • на узле кластера есть достаточно ресурсов для создания ВМ с платформой;
  • значение оверселлинга RAM, vCPU и дискового пространства на узле не превышает 1.

Требования к именам шаблонов ОС

При создании ВМ с платформой на неё устанавливается ОС, совпадающая с ОС исходного сервера. Подходящая версия ОС определяется по имени шаблона:

  1. Для ОС AlmaLinux в первую очередь используется шаблон с указанием подходящей минорной версии (например, AlmaLinux 8.10). Если такой не найден, то шаблон с указанием мажорной версии (например, AlmaLinux 8).
  2. Имя шаблона ОС Astra Linux может содержать номер оперативного обновления. Например, Astra Linux 1.8.1 UU1. В этом случае более подходящим будет шаблон, в имени которого есть номер обновления, установленного на исходном сервере.
  3. Более предпочтительным считается шаблон с пробелом в названии ОС. Например, шаблон Astra Linux 1.8.1 считается более подходящим, чем шаблон AstraLinux 1.8.1.

Логика работы

Процесс переноса

Основные действия по переносу платформы выполняет сервис vm-mover. Сервис находится в контейнере vm_box и при запуске переноса копируется в директорию /opt/ispsystem/vm-mover/ на исходном сервере с платформой. В процессе переноса сервис:

  1. Подготавливает ВМ для работы платформы.
  2. Ожидает завершения текущих задач и блокирует запуск новых до окончания переноса. 
  3. Создаёт архив с Docker-образами платформы.
  4. Переносит на подготовленную ВМ:
    • установщик платформы;
    • архивы с Docker-образами;
    • содержимое директории /opt/ispsystem/vm/;
    • патчи платформы.
  5. Останавливает и отключает платформу на исходном сервере.
  6. Запускает установку платформы на ВМ.
  • Данные статистики не переносятся автоматически, вы можете перенести их вручную. Подробнее см. в разделе Перенос данных статистики.
  • Резервные копии платформы не переносятся. Восстановление мастер-ВМ из резервных копий, созданных на исходном сервере, не поддерживается.
  • Настройки для передачи событий аудита в сторонние сервисы не будут перенесены. Потребуется заново выполнить настройку по инструкции из статьи Логирование событий аудита.
  • Во время переноса платформа недоступна и выполнение операций на ней невозможно. Отмена операции переноса не поддерживается.

В процессе переноса для платформы будет создана ВМ со следующими характеристиками:

  • vCPU, RAM, дисковое пространство — при переносе вы можете выбрать конфигурации в зависимости от количества ВМ, которыми будет управлять платформа:
    • до 1500 ВМ — 4 vCPU / 8 GB RAM / 300 GB Storage;
    • от 1500 до 3000 ВМ — 8 vCPU / 16 GB RAM / 600 GB Storage;
    • от 3000 до 15000 ВМ — 32 vCPU / 64 GB RAM / 2 TB Storage; 
      Конфигурации для управления более 15000 ВМ не поддерживаются.
  • ОС — совпадает с ОС на исходном сервере;
  • количество дисков — 1;
  • количество сетевых интерфейсов — 1;
  • количество IP-адресов — 1;
  • виртуальные сети — не поддерживаются;
  • выделение IP-адреса через DHCP — не поддерживается;
  • возможность увеличения vCPU, RAM и дискового пространства без перезагрузки; 
    Увеличение RAM без перезагрузки доступно только с шагом 1024 МБ не более 16 раз.
  • при переносе в отказоустойчивый кластер ВМ будет добавлена в список для восстановления.

Работа платформы после переноса

После переноса платформа будет доступна по новому IP-адресу, выделенному из пула кластера. Настройки доступа останутся прежними. При необходимости вы можете сменить IP-адрес мастер-VM на адрес исходного сервера.

Узел, на который будет перенесена платформа, будет отображаться в списке узлов со значком . Если этот узел потребуется перезагрузить, предварительно выполните миграцию мастер-VM на другой узел.

Мастер-VM не будет переноситься балансировщиком.

Если платформа была установлена с лицензией для закрытого контура, то после переноса требуется повторная активация лицензия. Подробнее об активации см. в статье Установка в закрытом информационном контуре.

Сервис vm-agent на узле кластера контролирует работу мастер-VM и при необходимости восстанавливает его (например, запускает, если ВМ остановлена). В случае, если мастер-VM находится в отказоустойчивом кластере, то его восстановление будет выполняться автоматически сервисами кластера.

Запуск переноса

Если вы используете платформу с лицензией для закрытого контура, то перед переносом:

  1. Подключитесь к серверу с платформой по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места .
  2. Подключите ISO-образ платформы: 

    mount -t iso9660 <path_to_iso> /mnt/
    Пояснения к команде

Чтобы запустить перенос:

  1. В правом меню нажмите значок → вкладка VM с платформой  кнопка Перенести платформу на VM.
  2. Укажите параметры ВМ для переноса:
    1. Кластер.
    2. Конфигурацию в зависимости от количества ВМ, которыми будет управлять платформа:
      • До 1500 VM — 4 vCPU / 8 GB RAM / 300 GB Storage;
      • От 1500 до 3000 VM — 8 vCPU / 16 GB RAM / 600 GB Storage;
      • От 3000 до 15000 VM — 32 vCPU / 64 GB RAM / 2 TB Storage.
    3. Узел.
    4. Распределение дисков VM по хранилищам.
    5. Настройки сети.
  3. Нажмите кнопку Перенести платформу на VM Начать перенос платформы. Откроется страница с отображением статуса переноса. 
    Если закрыть эту вкладку интерфейса, то перенос продолжится, но отследить его статус в интерфейсе будет невозможно.
  4. Дождитесь завершения всех этапов переноса. В случае проблем с переносом работа платформы восстановится на исходном сервере.

Если платформа перенесена успешно:

  • на e-mail администратора будет отправлено письмо с информацией для доступа к платформе;
  • появится сообщение Платформа перенесена на VM со ссылкой для перехода в интерфейс платформы.
    При открытии ссылки браузер может выдать предупреждение о вероятной угрозе безопасности. Это происходит, если сервер использует самоподписанный SSL-сертификат. Вы можете подключить валидный SSL-сертификат к платформе  по инструкции .

Управление ВМ с платформой

Мастер-VM не отображается в общем списке ВМ и не учитывается в общем количестве ВМ. Для управления мастер-VM в правом меню нажмите значок  → вкладка VM с платформой. Вкладка содержит сведения о ВМ и текущую статистику потребления ресурсов. Чтобы просмотреть статистику за определённый период, нажмите кнопку подробнее по периодам. Для выполнения операций с ВМ нажмите Меню. Доступные операции:

  • Мигрировать;
  • VNC — подключиться к ВМ по VNC;
  • Изменить пароль;
  • Изменить ресурсы
    После увеличения размера диска выполните инструкции из раздела Увеличение диска мастер-VM.
  • Изменить IP-адрес.

Интерфейс вкладки

Действия после переноса

Изменение NS-записей

Если доступ к платформе осуществлялся по доменному имени, измените A-запись на вашем NS-сервере: поменяйте IP-адрес исходного сервера на IP-адрес мастер-VM.

Перенос данных статистики

Данные статистики не переносятся автоматически. Чтобы перенести их:

  1. Подключитесь к исходному серверу по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
  2. Перенесите данные с помощью утилиты mover-cli
    cd /opt/ispsystem/vm-mover && sh mover-cli.sh copy-backup-statistic --vm-ip <IP-адрес мастер-VM>

Подключение исходного сервера в качестве узла кластера

Вы можете использовать исходный сервер в качестве узла кластера. Для этого:

  1. Подключитесь к исходному серверу по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
  2. Удалите файлы платформы с помощью утилиты mover-cli
    cd /opt/ispsystem/vm-mover && sh mover-cli.sh destroy
  3. Удалите установленные Docker-образы и контейнеры: 

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

    AlmaLinux
    dnf remove docker-ce docker-ce-cli docker-ce-rootless-extras containerd.io
    Astra Linux
    apt remove docker-ce docker-ce-cli docker-ce-rootless-extras containerd.io
  5. В интерфейсе платформы подключите узел по инструкции из статьи Управление серверами кластера.

Увеличение диска мастер-VM

При увеличении диска через интерфейс платформы изменится только размер блочного устройства, а фактический размер диска останется без изменений. Чтобы увеличить раздел диска:

  1. Подключитесь к мастер-VM по SSH. Подробнее о подключении по SSH см. в статье  Настройка рабочего места.
  2. Установите утилиты для изменения размера диска: 

    Astra Linux
    apt-get install cloud-guest-utils
    AlmaLinux
    dnf install cloud-utils-growpart
  3. Определите раздел и тип файловой системы: 

    lsblk -f

    В примере ниже раздел — vda2, а тип файловой системы — EXT4.

    NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
    vda                                                      
    ├─vda1                                                   
    └─vda2 ext4         4a9ea381-1b1c-f135-a540-685a8d3e82f8 /
  4. Выполните расширение раздела: 

    growpart /dev/<partition_name> <partition_number>
    Пояснения к команде
  5. Измените размер файловой системы: 

    EXT4
    resize2fs /dev/<partition>
    XFS
    xfs_growfs -d /dev/<partition>
    Пояснения к командам

Диагностика

Для диагностики ошибок, связанных с переносом, изучите логи:

  • сервис vm-mover — файлы /opt/ispsystem/vm-mover/vm_mover_*.log на исходном сервере с платформой;
  • установщик — файл /opt/ispsystem/vm/install.log на исходном сервере с платформой и мастер-VM;
  • сервис vm-agent — файл /var/log/vm-agent.log на узле кластера с мастер-VM.


Дата последнего обновления статьи: 24.04.2025. Статья подготовлена техническими писателями ISPsystem.