Миграция позволяет перенести управление виртуальными машинами (ВМ) из панели VMmanager 5 KVM в платформу VMmanager 6. Миграция включает перенос:
- адресного пространства — используемых IP-адресов, пулов и сетей;
- учётных записей пользователей;
- ограничений доступа к ВМ;
- пользователей BILLmanager, если была настроена интеграция.
Для мигрируемых ВМ платформа создаст временный кластер с ограниченной функциональностью. После миграции вы можете перенести ВМ из этого кластера в другие кластеры платформы.
Обратите внимание!
В статье описана миграция из панели управления VMmanager 5 KVM. Если вы используете VMmanager 5 OVZ, ВМ можно перенести вручную по инструкции из статьи Как перенести OVZ-контейнер в LXD-кластер?
Ограничения миграции
Вы можете перенести в VMmanager 6 любой кластер из VMmanager 5. Дальнейшая миграция ВМ в кластеры VMmanager 6 имеет ограничения в текущей версии платформы:
Ограничение | Возможное решение |
---|---|
для узлов кластера с QEMU версии ниже 2.0.0 недоступна "живая" миграция ВМ | выключить ВМ перед миграцией |
изменение типа хранилища может привести к временной недоступности ВМ | не менять тип хранилища при миграции |
у ВМ не должно быть сетевых интерфейсов, подключённых к NAT | изменить сетевую конфигурацию ВМ |
у ВМ не должно быть созданных снимков (snapshot) | удалить снимки перед миграцией |
у ВМ не должно быть подключённых ISO-образов | отключить ISO-образы перед миграцией |
диск ВМ должен находиться в локальном хранилище — файловом или LVM | возможность миграции появится в следующих версиях платформы |
Миграция ВМ возможна в кластеры с сетевой настройкой "Коммутация" или IP-fabric.
Порядок миграции
Импорт адресного пространства
Для управления адресным пространством VMmanager 5 и VMmanager 6 используют разное ПО:
- VMmanager 5 — панель управления IPmanager 5;
- VMmanager 6 — встроенный модуль IPmanager 6.
При миграции вы можете импортировать адресное пространство из IPmanager 5 в IPmanager 6.
IPmanager 6 поддерживает режим эмуляции API IPmanager 5. Если вы используете другие программные продукты, которым требуется интеграция с IPmanager 5 (например, BILLmanager, DCImanager 5, ISPmanager), вы сможете перенастроить их на работу с IPmanager 6.
Пример управления адресным пространством
Импорт кластера VMmanager 5
Чтобы импортировать кластер VMmanager 5, сервис миграции:
- Подключается к VMmanager 5 и получает информацию о сущностях, созданных в панели управления — ВМ, пользователях, настройках кластера.
- Блокирует работу VMmanager 5.
- Создаёт резервную копию платформы VMmanager 6.
- Импортирует информацию о настройках VMmanager 5 в VMmanager 6.
- Если в VMmanager 5 была настроена интеграция с BILLmanager:
- Подключается к BILLmanager.
- Меняет тип обработчика услуг на VMmanager 6.
- Добавляет в VMmanager 6 пользователей BILLmanager с услугами VMmanager 5.
Подготовка к миграции
VMmanager 5
- Создайте резервную копию ВМ и панели управления. Подробнее см. в статье Управление планами резервного копирования документации VMmanager 5.
- Разрешите доступ к серверу по SSH-ключу:
В файле /etc/ssh/sshd_config укажите параметр
PubkeyAuthentication yes
Перезапустите службу sshd:
systemctl restart sshd
VMmanager 6
Если платформа не установлена:
- Убедитесь, что сервер для VMmanager 6 удовлетворяет системным требованиям.
- Установите VMmanager 6 по инструкции.
- Выполните начальную настройку платформы.
BILLmanager
- Создайте временного пользователя для настройки интеграции. При создании включите опцию Полный доступ.
- Создайте обработчик VMmanager 6 и тарифные планы для услуг виртуальных серверов.
- Создайте резервную копию BILLmanager. Подробнее см. в статье Резервное копирование документации BILLmanager.
- Сформируйте ключ для авторизации:
- Подключитесь к серверу с BILLmanager по SSH с правами суперпользователя.
Выполните команду:
/usr/local/mgr5/sbin/mgrctl -m billmgr session.newkey user='<integration_user>' key='<secret_key>'
- Сохраните значение ключа.
IPmanager 5
Убедитесь, что IPmanager 5 использует СУБД MySQL или MariaDB. Если IPmanager 5 использует СУБД SQLite, перейдите на использование СУБД MySQL. Подробнее см. в статье Использование MySQL в качестве СУБД документации IPmanager.
Обратите внимание!
Рекомендуемая версия MySQL/MariaDB – не ниже 5.5.x. Для более ранних версий успешный импорт ВМ не гарантируется.
- Убедитесь, что cервер MySQL доступен со стороны VMmanager 6 — проверьте открыты ли в настройках файрвола порты 3306/TCP, 3306/UDP и возможно ли удалённое подключение к БД:
- Подключитесь к серверу IPmanager 5 по SSH.
Проверьте текущие настройки файрволла:
firewall-cmd --list-all
Откройте порты 3306/TCP, 3306/UDP:
firewall-cmd --permanent --add-port=3306/tcp firewall-cmd --permanent --add-port=3306/udp
Перезапустите сервис файрволла:
service firewalld restart
Откройте конфигурационный файл MySQL /etc/my.cnf. В раздел [mysqld] добавьте параметр bind-address=xxx.xxx.xx.x и закомментируйте строку с параметром skip-networking.
Подключитесь к сервису mysql:
mysql -u root
use mysql;
Разрешите пользователю удалённое подключение к MySQL:
GRANT ALL PRIVILEGES ON <DB_NAME> . * TO '<DB_USER>'@'<REMOTE_IP>' IDENTIFIED BY '<DB_PASSWORD>';
FLUSH PRIVILEGES;
Миграция
Миграция IP-адресов
- Перейдите в → Миграция → Мигрировать IP-адреса из IPmanager 5 .
Укажите настройки подключения к IPmanager 5:
Обратите внимание!
Настройки подключения указаны в конфигурационном файле IPmanager /usr/local/mgr5/etc/ipmgr.conf:
- Адрес сервера с IPmanager — параметр DBHost;
- Имя базы данных — параметр DBName;
- Логин пользователя для интеграции — параметр DBUser;
- Пароль — параметр DBPassword.
- Адрес сервера с IPmanager — IP-адрес БД IPmanager 5;
- Имя базы данных — имя БД IPmanager 5;
- Логин пользователя для интеграции — имя пользователя БД IPmanager 5;
- Пароль — пароль пользователя БД IPmanager 5.
- Адрес сервера с IPmanager — параметр DBHost;
- Нажмите Мигрировать IP.
Чтобы VMmanager 5 и BILLmanager могли работать с IPmanager 6:
- Если требуется доступ только к определённому пулу IP-адресов, создайте в VMmanager 6 пул с суффиксом public. Например, VM5_public.
Создайте в VMmanager 6 учётную запись администратора с именем ipmgr5@example.com.
Обратите внимание!
ipmgr5@example.com — не пример, а точное имя, которое нужно указать при создании учётной записи.
- В VMmanager 5 и BILLmanager:
- Перейдите в Интеграция → IPmanager.
- Укажите настройки для интеграции:
Имя пользователя:
чтобы панель управления имела доступ только к определённому пулу IP-адресов, укажите pool_XXX;
- чтобы панель управления имела доступ ко всему адресному пространству, укажите произвольное имя пользователя.
- Пароль — пароль пользователя ipmgr5@example.com.
- Нажмите Ok.
Если у VMmanager 6 настроена интеграция с PowerDNS, то после создания адресного пространства необходимо синхронизировать PTR-записи с DNS-сервером. Для этого:
- Удалите модуль "Интеграция с PowerDNS": Настройки → Модули → Интеграция с PowerDNS → Удалить модуль → Удалить модуль .
- Повторно установите и настройте модуль интеграции. Подробнее см. в статье Интеграция с PowerDNS.
Проверить выполнение синхронизации вы можете по лог-файлу /var/log/dns_proxy_integration.log в контейнере vm_dns_proxy_1 на сервере с VMmanager.
Миграция виртуальных машин
Обратите внимание!
Вы можете перенести виртуальные машины из нескольких экземпляров VMmanager 5 в один экземпляр VMmanager 6. Для ВМ из каждого экземпляра VMmanager 5 будет создан отдельный временый кластер.
- Перейдите в → Миграция → Мигрировать виртуальные машины из VMmanager 5.
- Укажите настройки миграции:
- Название временного кластера, который будет создан в VMmanager 6.
- SSH-адрес сервера VMmanager 5.
- Имя пользователя SSH для подключения к серверу с VMmanager 5.
- SSH-порт.
Скопируйте Публичный ssh-ключ и добавьте его в файл ~/.ssh/authorized_keys на сервере с VMmanager 5.
- Укажите настройки подключения к BILLmanager, если у VMmanager 5 настроена интеграция:
- Адрес сервера BILLmanager 5 — IP-адрес или доменное имя сервера.
Логин администратора панели — введите имя временного пользователя для интеграции, созданного при подготовке BILLmanager.
- Временный ключ, созданный при подготовке BILLmanager.
- Название обработчика VMmanager 5.
- Нажмите Мигрировать VMmanager 5.
Перенос ВМ из временного кластера
Для ВМ из VMmanager 5 создаётся временный кластер с типом VM5 KVM и сетевой настройкой "Коммутация". Доступные операции с ВМ во временном кластере:
- запуск;
- остановка;
- перезагрузка;
- подключение по VNC;
- удаление;
- миграция на другой узел кластера;
- миграция в другой кластер, если конфигурация ВМ соответствует требованиям.
Чтобы на мигрируемых ВМ были доступны все функции, перенесите их в другие кластеры платформы.
Если ВМ не удовлетворяет требованиям для переноса в кластер VMmanager 6, рядом с её названием отображается ссылка Миграция в кластер VM6 недоступна. Чтобы получить подробную информацию, нажмите на ссылку.
Платформа взаимодействует с ВМ через программу QEMU Guest Agent. Например, QEMU Guest Agent нужен, чтобы VMmanager мог изменить пароль, запустить скрипт и выполнить миграцию ВМ в кластер с типом сетевых настроек "IP fabric". Если QEMU Guest Agent на ВМ не установлен или не отвечает, в столбце Состояние у ВМ отображается сообщение Проблема с Guest Agent. Чтобы установить QEMU Guest Agent на ВМ, нажмите на Проблема с Guest Agent → Установить GA и перезапустить ВМ. Вы можете установить QEMU Guest Agent вручную. Подробнее см. в статье Как проверить и восстановить работу QEMU Guest Agent?
Перенос ВМ без отключения ("живая" миграция) возможен, если:
- на узле кластера VMmanager 5 установлен QEMU версии 2.0.0 и выше;
- версия libvirt на узле кластера VMmanager 6 не ниже версии libvirt на узле кластера VMmanager 5.
В остальных случаях ВМ необходимо отключить перед переносом.
Чтобы перенести ВМ из временного кластера:
- Выделите нужные ВМ → еще... → Мигрировать.
- Укажите параметры миграции:
- Отключите опцию Сжимать диск VM перед миграцией, если сжатие диска не требуется. Опция доступна только для выключенных ВМ.
- Отключите опцию Учитывать фильтры распределения, если использование фильтров не требуется. Подробнее о фильтрах распределения см. в статье Управление серверами кластера.
- Выберите кластер для миграции.
- Выберите узел для миграции.
- Выберите Доступные хранилища на узле, в которых будут размещены диски ВМ. Диски одной ВМ могут быть размещены в разных хранилищах.
- Изучите информацию в разделе Резюме по VM. Раздел содержит информацию о том, все ли диски распределены и требуется ли для ВМ перезагрузка.
- Нажмите Мигрировать (Мигрировать и перезагрузить).
Перенос услуг в BILLmanager
Если у VMmanager 5 была настроена интеграция с BILLmanager, то сервис миграции:
- Изменит тип обработчика услуг с VMmanager 5 на VMmanager 6.
- Добавит к его названию префикс _imported.
Новый обработчик создаётся для управления ВМ во временном кластере. Заказ новых услуг через этот обработчик недоступен. После переноса ВМ в другие кластеры платформы переключите услуги на тарифные планы с другим обработчиком VMmanager 6.
Порядок настройки:
- Подключите для тарифных планов VMmanager 5 обработчик услуг VMmanager 6. Для этого:
- Перейдите в Продукты → Тарифные планы → выберите тариф, с которого была продана услуга виртуального сервера для VMmanager 5 → кнопка Обработчики.
- Включите обработчик VMmanager 6.
- Отключите виртуальные машины из BILLmanager:
- Перейдите в Товары/Услуги → Виртуальные серверы → выберите все услуги виртуальных серверов VMmanager 5 (зажмите CTRL) → кнопка Изменить.
- Нажмите кнопку Выкл.
- Подтвердите выключение при помощи кнопки Ok.
- Перенесите услуги виртуальных серверов на тарифные планы с обработчиком VMmanager 6:
- Перейдите в Товары/Услуги → Виртуальные серверы → выберите все услуги виртуальных серверов VMmanager 5 (зажмите CTRL) → кнопка Изменить.
- Укажите в поле Модуль обработки обработчик услуг VMmanager 6.
- Нажмите Ok.
- Включите услуги в BILLmanager.
- Удалите временного пользователя, созданного для интеграции.
Повторная миграция
Если первый запуск миграции завершился с ошибкой, вы можете выполнить миграцию повторно. Если при первой миграции было импортировано адресное пространство, для повторной миграции удалять его не нужно.
Отмена миграции
Вы можете вернуть управление ВМ в VMmanager 5 после миграции. Отмена миграции возможна, только если ВМ после миграции не были удалены или перенесены в другие кластеры.
Чтобы отменить миграцию:
- Восстановите состояние VMmanager 6 из резервной копии. Подробнее см. в статье Резервное копирование платформы.
- Если вы изменяли настройки BILLmanager, восстановите состояние панели управления из резервной копии. Подробнее см. в статье Резервное копирование документации BILLmanager.
Разблокируйте VMmanager 5:
Подключитесь к серверу с VMmanager 5 по SSH:
Выполните команду:
/usr/local/mgr5/sbin/mgrctl -m vmmgr -u