如果使用zfs,LXD在从它们创建容器后丢失快照

时间:2016-06-16 11:12:58

标签: lxc zfs lxd

使用lxd时,我在使用snaphot创建容器时遇到问题 zfs作为后备存储。我可以创建容器,但当我删除它时, 在zfs级别(不是在lxd)删除快照。

我在Ubuntu 16.04中使用lxd,有趣的是它不会发生在 每一个盒子:一些工作正常,其他人从未做过,其他工作正常一段时间 然后破了。

我现在想知道从快照创建容器是合法的还是操作 语义未指定。

这可以在这个例子中看到

$ lxc launch ubuntu:14.04 mycontainer  # Happens with other images
$ lxc stop mycontainer                 # stop is optional
$ lxc snapshot mycontainer mysnap0
$ lxc copy mycontainer/mysnap0 mycontainer1
$ lxc delete mycontainer1
$ lxc copy mycontainer/mysnap0 mycontainer2
error: rsync failed: rsync: change_dir "/var/lib/lxd/snapshots/mycontainer/mysnap0" failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.1]

但是lxd仍然认为快照很好。

$ lxc info mycontainer
Name: mycontainer
Architecture: x86_64
Created: 2016/06/16 10:53 UTC
Status: Stopped
Type: persistent
Profiles: default
Snapshots:
  mysnap0 (taken at 2016/06/16 10:54 UTC) (stateless)

让我想到的另一个例子是请求zfs删除快照的lxd:

$ lxc snapshot mycontainer mysnap1
$ lxc copy mycontainer/mysnap1 mycontainer2
$ lxc copy mycontainer/mysnap1 mycontainer3
$ lxc delete mycontainer2
error: Failed to destroy ZFS filesystem: cannot destroy 'debtool/containers/mycontainer@snapshot-mysnap1': snapshot has dependent clones

关于我使用的版本的一些信息:

zfs-zed                   0.6.5.6-0ubuntu8
zfsutils-linux            0.6.5.6-0ubuntu8
lxd                       2.0.2-0ubuntu1~16.04.1
lxd-client                2.0.2-0ubuntu1~16.04.1
lxd-tools                 2.0.2-0ubuntu1~16.04.1
liblxc1                   2.0.0-0ubuntu2
lxc                       2.0.0-0ubuntu2
lxc-common                2.0.0-0ubuntu2
lxc-templates             2.0.0-0ubuntu2
lxc1                      2.0.0-0ubuntu2
lxcfs                     2.0.0-0ubuntu2.1

有关如何修复/解决问题的任何想法?

0 个答案:

没有答案