миграция lxc в lxd

Я осмотрел все, но не вижу, есть ли способ. У меня есть пара контейнеров LXC, работающих под управлением Ubuntu 14.04 поверх хоста Ubuntu 14.04. Они стали для меня очень важными, поэтому я хочу иметь возможность легко создавать резервные копии / переносить контейнеры LXC на другой сервер, если оборудование хоста выйдет из строя.

Я построил новый сервер Ubuntu 15.1 с LXD, вышел из системы, а затем вернулся в нее и увидел новую группу. Для тестирования я установил один из моих существующих контейнеров LXC с переключателем --numeric-owner на моем хосте 14.04:

tar --numeric-owner -czvf ContToBeMoved.tgz /var/lib/lxc/my_container

--- затем на новом сервере ---

tar --numeric-owner -xzvf ContToBeMoved.tgz -C /var/lib/lxc/

... и успешно восстановили контейнер LXC на новом сервере server 15.1.

Однако, когда я запускаю команды LXD, LXD не видит контейнер. Я попытался переместить контейнер в каталог /var/lib/lxd/containers, но LXD его не видит. Есть ли способ отредактировать / клонировать / перенести контейнер LXC, чтобы мы могли использовать LXD в дальнейшем?

Заранее спасибо.


person Mark    schedule 27.10.2015    source источник


Ответы (1)


LXD использует базу данных sqlite для конфигурации контейнера, поэтому просто сбросить rootfs контейнера на месте будет недостаточно.

Самый простой способ сделать то, что вы хотите, - создать новый контейнер с LXD, затем удалить его rootfs из / var / lib / lxd / container / NAME / rootfs и заменить контейнер с исходного хоста.

Обратите внимание, что LXD по умолчанию запускает непривилегированные контейнеры, если ваш исходный контейнер был привилегированным (/ var / lib / lxc / NAME / rootfs принадлежит root: root вместо 100000: 100000), тогда вы также захотите запустить следующее:

lxc config set NAME security.privileged true
person stgraber    schedule 23.11.2015
comment
Большое спасибо за отзыв, и ваша информация имеет смысл. Я попробую, как только смогу. Прямо сейчас настроили резервный сервер LXC, но живая миграция с LXD слишком впечатляет, чтобы отказаться от нее! =) Ура. - person Mark; 01.12.2015
comment
Большое спасибо за этот полезный ответ, однако он, похоже, не принимает во внимание конфигурацию сети IPv4, вероятно, именно потому, что копируется только содержимое rootfs .. Я только что наткнулся на скрипт github.com/lxc/lxd/blob/master/scripts/lxc-to-lxd , но это тоже не похоже на конфигурационные ключи lxc.network.ipv4? - person djvdorp; 30.01.2017