Перенос OVZ-контейнера в LXD-кластер
Вы можете перенести в LXD-кластер виртуальную машину (ВМ), созданную с помощью OVZ-виртуализации. Чтобы сделать это:
- Сохраните информацию о правах на файлы ВМ.
- Создайте LXD-контейнер для ВМ и очистите его.
- Перенесите каталог исходной ВМ в созданный LXD-контейнер.
Восстановите права на файлы ВМ.
Обратите внимание!
Вы можете применить этот способ только для переноса ВМ в LXD-кластер с типом настройки сети "Коммутация".
Пример для ОС CentOS 7
Обновите пакеты ПО до последней версии:
BASHНа запущенной ВМ установите пакет ПО acl:
BASHУстановите пакет ПО Cloud-init:
CODECохраните информацию о правах на файлы и каталоги ВМ:
BASHОстановите ВМ:
Обратите внимание!
Если вы используете VMmanager 5 OVZ, остановите ВМ в панели управления: Управление → Виртуальные машины → выберите ВМ → кнопка Стоп.
BASHСохраните каталог ВМ в архив:
Если вы используете simfs
BASHЕсли вы используете ploop
BASH- Скопируйте созданный архив на узел LXD-кластера.
В интерфейсе VMmanager cоздайте ВМ в LXD-кластере и остановите её.
Обратите внимание!
Создайте ВМ с той же ОС и теми же параметрами, что у исходной ВМ.
Определите, где находится контейнер с ВМ:
BASHПримонтируйте контейнер с созданной ВМ:
BASHОчистите контейнер:
BASHРаспакуйте архив с исходной ВМ:
BASHИзмените владельца файловой системы на root-пользователя LXD-контейнера:
BASHУдалите старые конфигурационные файлы сети:
CODEОтредактируйте файл /var/snap/lxd/common/lxd/storage-pools/zfs_pool/containers/vm-624/rootfs/etc/sysconfig/network:
Пример файла
CODEСоздайте новый конфигурационный файл для сетевого интерфейса:
CODEСодержимое файла
CODEОтмонтируйте контейнер:
BASHУдалите содержимое директории /var/snap/lxd/common/lxd/storage-pools/zfs_pool/containers/vm-624/.
Запустите ВМ в интерфейсе VMmanager.
Восстановите права на файлы ВМ:
BASHBASHПерезагрузите ВМ для применения настроек:
BASH
Пример для ОС Debian 9
Обновить пакеты ПО до последней версии:
BASHНа запущенной ВМ установите пакет ПО acl:
BASH- Если на сервере не установлена утилита curl, установите её: BASH
Загрузите пакеты ПО Cloud-init:
CODEУстановите ПО Cloud-init:
BASHBASHBASHCохраните информацию о правах на файлы и каталоги ВМ:
BASHОстановите ВМ:
Обратите внимание!
Если вы используете VMmanager 5 OVZ, остановите ВМ в панели управления: Управление → Виртуальные машины → выберите ВМ → кнопка Стоп.
BASHСохраните каталог ВМ в архив:
Если вы используете simfs
BASHЕсли вы используете ploop
BASH- Скопируйте созданный архив на узел LXD-кластера.
В интерфейсе VMmanager cоздайте ВМ в LXD-кластере и остановите её.
Обратите внимание!
Создайте ВМ с той же ОС и теми же параметрами, что у исходной ВМ.
Определите, где находится контейнер с ВМ:
BASHПримонтируйте контейнер с созданной ВМ:
BASHОчистите контейнер:
BASHРаспакуйте архив с исходной ВМ:
BASHИзмените владельца файловой системы на root-пользователя LXD-контейнера:
BASHОтредактируйте конфигурационный файл сетевого интерфейса:
CODEСодержимое файла
CODEОтредактируйте конфигурационный файл сетевых настроек для Cloud-init:
CODEСодержимое файла
CODEОтмонтируйте контейнер:
BASHУдалите содержимое директории /var/snap/lxd/common/lxd/storage-pools/zfs_pool/containers/vm-624/.
Запустите ВМ в интерфейсе VMmanager.
Восстановите права на файлы ВМ:
BASHBASHПерезагрузите ВМ для применения настроек:
BASH