问题标签 [lxd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - 使用“fork from here”快速虚拟化到新的 LXC/docker 容器
看看 LXC 和 docker,它们都需要某种模板或图像来运行容器。是否有一种技术可以将当前会话分叉到并行世界并在最后提交或丢弃所有更改?
例如:
有什么接近的吗?
docker - “lxd”与 lxc/docker 有何不同?
问题
- lxd 如何在容器中提供完整的操作系统功能,而不仅仅是单个进程?
- 它与 lxc/docker + wrappers 有何不同?
- 它是否类似于使用 docker + supervisor/wrapper 脚本启动以在一个容器中包含多个进程的容器?
换句话说:
- 我可以用 lxd 做什么,而我不能用 lxc 和 docker 上的一些包装器来做?
- 如果它们使用主线内核功能(命名空间和 cgroup ),为什么它仅在 ubuntu 中可用?
lxc - 如何访问mongodb部署的insde lxc容器
我一直在玩 lxc-lxd。我能够在 lxc 容器(ubuntu 15.04)中安装 mongodb。我能够从容器内访问所有内容,但反之则不行。容器和 lxc-bridge 被赋予 10.xxx ip 地址,而我的网络路由器 IP 地址以 192.xxx 开头 如何从容器外部(也在主机外部)访问 mongodb。我计划为 nginx 和 node.js 创建更多容器,因此主机传递可能不是一个选项。
我的 Ubuntu 主机在 virtualbox VM 中运行,希望这不会导致问题。
ubuntu - LXD 错误无法启动容器
我正在使用 LXD 创建一个 Ubuntu 容器:
当我收到此错误时:
我查看了日志并在结尾收到了这条消息:
lxc - LXD 与 LVM backingstore 实现磁盘配额
我从LXD 存储规范中看到 LVM 可以用作后备存储。我以前设法让 LVM 与 LXC 一起工作。这是非常令人愉快的,因为它允许对磁盘消耗进行配额式控制。
如何使用 LXD 实现这一目标?
据我了解,storage.lvm_vg_name
必须指向我的卷组。我已经通过创建配置文件并将该配置文件应用到容器来为容器设置它。整个配置文件配置如下所示:
根据主机框上的 pvdisplay ,该卷组应该可用并且正在工作:
但是,在应用配置文件并启动容器后,它似乎正在使用文件后备存储:
我究竟做错了什么?
node.js - LXD - 如何通过 nodejs 下的 unix 套接字域连接到 LXD API?
如何通过 nodejs 下的 unix 套接字域连接到 LXD API?我尝试以下代码但失败了。我得到了这个答案:HTTP/1.1 400 Bad Request
从命令行尝试以下操作:
输出:
node.js - NodeJs 错误:编写 EPIPE http unix 套接字域 LXD API
整个想法是在 unix 套接字上使用 LXD RESTful API 进行本地操作。以下代码对于每 2 或 3 个错误运行良好一次。我不知道是否与node.js有关或与lxd api有关。
有错误的输出
请求问题:写 EPIPE { [错误:写 EPIPE] 代码:'EPIPE',errno:'EPIPE',系统调用:'write',地址:未定义}
编码:
migration - 将 lxc 迁移到 lxd
我已经看遍了,但看不到有没有办法。我有几个在 Ubuntu 14.04 主机上运行 Ubuntu 14.04 的 LXC 容器。它们对我来说变得非常重要,所以如果主机的硬件出现故障,我希望能够轻松地将 LXC 容器备份/迁移到另一台服务器。
我现在使用 LXD 构建了一个新的 Ubuntu 15.1 服务器,并已注销并重新登录并查看新组。--numeric-owner
为了进行测试,我使用14.04 主机上的开关 tar'd 了一个现有的 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?
提前致谢。
containers - LXC/LXD 错误:无法更改 LVM 配置。图像或容器仍在使用 LV:
要求:在自己的磁盘上创建两个可信赖的容器,以便我可以设置一个 2 节点 mongodb 副本集。我的想法是创建两个 LVM 卷组,以便每个容器拥有自己的卷组(以及关联的磁盘)。
然后我能够在这个新的卷组上创建一个容器。
现在我想切换到我的第二卷组,但 lxc 不允许我这样做。
有人可以提出解决方案或解决方法吗?
ubuntu - 在节点之间迁移 LXD 虚拟机/容器
我正在使用 VM(主)和 3 台裸机服务器(全部运行 Ubuntu 14.04)设置一个小型集群。每个裸机服务器还具有使用Ceph 0.94.5导出的 2T 磁盘空间。
我希望能够在这个集群上运行 LXD 虚拟机(容器),并轻松地将这些虚拟机迁移到不同的节点。我本可以安装 OpenStack,但这对我来说似乎相当复杂(对于像我这样的小型集群来说,OpenStack 可能有点过分了)。因此,我的解决方案是创建一个大的 Ceph/rbd 块卷并将其挂载/var/lib/lxd/containers
到所有节点的 LXD 容器文件夹 ( ) 中。要移动虚拟机,我只需在一个节点中将其关闭,然后在另一个节点中重新启动它。
对于一个虚拟机来说,它运行良好,但在我看来,它并不是一个长期的解决方案。我的问题:
有没有办法将块卷(Ceph/rbd)或文件夹传递给 LXD VM,所以 LXD 本身会挂载根文件夹(
/
)?最好为每个虚拟机(而不是所有虚拟机都使用同一个文件夹)设置一个块卷。对于我的用例,是否有比 OpenStack 更简单的解决方案(或者更简单的 OpenStack 安装过程)?
最终,我希望我的集群能够将虚拟机调度到节点,从故障节点移动虚拟机等。关于如何获得它的任何建议?