将lxc迁移到lxd

use*_*597 3 migration lxc lxd

我看了一遍,但看不出是否有办法.我有一些LXC容器在Ubuntu 14.04主机上运行Ubuntu 14.04.它们对我来说变得非常重要,所以如果主机的硬件出现故障,我希望能够轻松地将LXC容器备份/迁移到另一台服务器.

我已经使用LXD构建了一个新的Ubuntu 15.1服务器,并已注销并重新登录并查看新组.为了进行测试,我使用--numeric-owner14.04主机上的开关将我现有的一个LXC容器打开:

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

---然后在新服务器上---

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

...并已成功恢复新服务器15.1服务器上的LXC容器.

当我运行LXD命令时,LXD看不到容器.我尝试将容器移动到/var/lib/lxd/containers目录中,但LXD仍然没有看到它.有没有办法编辑/克隆/迁移LXC容器,以便我们可以使用LXD前进?

提前致谢.

小智 5

LXD使用sqlite数据库进行容器配置,因此只是将容器的rootfs转储到位就不够了.

做你想做的最简单的方法是创建LXD一个新的容器,然后在/ var/lib中/ LXD /集装箱/姓名/根文件系统删除其根文件,并替换从原来的主机之一.

请注意,默认情况下,LXD运行非特权容器,如果您的源容器具有特权(/ var/lib/lxc/NAME/rootfs由root拥有,而不是100000:100000),那么您还需要运行以下命令:

lxc config set NAME security.privileged true
Run Code Online (Sandbox Code Playgroud)