Как импортировать контейнеры LXC из ранее используемого ZFS lxc шпулька?

Я использую все значение по умолчанию lxc настройки с ZFS как backstore.

Что означает, у меня есть шпулька lxc и созданные контейнеры с lxc-create -B zfs -n ubuntu-base -t ubuntu

Теперь, корневая фс исчерпала пространство, потому что я тестировал lxc с ZFS и шпулькой, созданной из файла.

Я присоединил виртуальный диск к VM /dev/sdb, экспортируемый выход lxc шпулька, и созданный новый lxc буферизуют с /dev/sdb

Затем импортировал старую шпульку lxc как lxc-old Затем используемый zfs send все наборы данных от lxc-old кому: lxc, уничтоженный lxc-old

Теперь lxc-ls -f больше шоу любые существующие контейнеры, но zfs показывает наборы данных

root@lxc:~# lxc-ls -f root@lxc:~#

root@lxc:~# zfs list NAME USED AVAIL REFER MOUNTPOINT lxc 5.40G 45.1G 19K /lxc lxc/clamav 679M 45.1G 870M /var/lib/lxc/clamav/rootfs lxc/hadoop 541M 45.1G 710M /var/lib/lxc/hadoop/rootfs lxc/hulk 1.11G 45.1G 1.26G /var/lib/lxc/hulk/rootfs lxc/mongodb 1.03G 45.1G 1.16G /var/lib/lxc/mongodb/rootfs lxc/mongodb2 1.03G 45.1G 1.16G /var/lib/lxc/mongodb/rootfs lxc/python 48.2M 45.1G 185M /var/lib/lxc/python/rootfs lxc/slamdata 427M 45.1G 576M /var/lib/lxc/slamdata/rootfs lxc/splunk 172M 45.1G 324M /var/lib/lxc/splunk/rootfs lxc/ubuntu-base 229M 45.1G 210M /var/lib/lxc/ubuntu-base/rootfs lxc/ubuntu-base@python 1K - 151M - lxc/ubuntu-base@mongodb 1K - 151M - lxc/ubuntu-base@slamdata 1K - 151M - lxc/ubuntu-base@hulk 1K - 151M - lxc/ubuntu-base@splunk 1K - 151M - lxc/ubuntu-base@hadoop 17.0M - 187M - lxc/ubuntu-base@new 1K - 210M - lxc/ubuntu-base@clamav 1K - 210M -

Я не абсолютно уверен, как заставить lxc видеть существующие контейнеры в новой шпульке lxc

0
задан 31 March 2016 в 02:24

2 ответа

Причина I "проиграла", все мои контейнеры были тем, что я ранее подозревал, config файл, являющийся недостающим.

, Когда ZFS используется в качестве backstore, и новый контейнер создается, такой как /var/lib/lxc/clamav/rootfs, только rootfs каталог содержится в backstore (ZFS)

config, файл хранится в пути /var/lib/lxc/<container>/config, который не хранится в backstore.

решение состоит в том, чтобы создать набор данных с точкой монтирования /var/lib/lxc/

root@lxc:~# zfs list NAME USED AVAIL REFER MOUNTPOINT lxc 11.4G 37.5G 526M /lxc lxc/_configs 44K 37.5G 44K /var/lib/lxc/ lxc/_share 252K 37.5G 252K /usr/share/lxc/

решенная проблема.

1
ответ дан 29 September 2019 в 09:15

Я беру определенный выстрел в темноте, но пробую следующее. Я заметил, что в Вашем zfs list у Вас есть следующее:

NAME                       USED  AVAIL  REFER  MOUNTPOINT
lxc                       5.40G  45.1G    19K  /lxc
...

, Возможно, Ваш новый lxc набор данных должен быть смонтирован к /var/lib/lxc.

zfs set mountpoint=/var/lib/lxc lxc
0
ответ дан 29 September 2019 в 09:15

Другие вопросы по тегам:

Похожие вопросы: