pve 使用 lxc 容器直通硬盘

2023-02-05 20:09:26 +08:00
 kerb15

最近想用 pve 新建一个 lxc 容器,用 docker 跑私有云相册,需要读取 ntfs 格式的硬盘,通过 usb 硬盘盒连接,为了提高性能想让 lxc 容器直通硬盘,但网上只有 kvm 虚拟机的直通硬盘教程,也就是 qm set 指令,想问一下 lxc 是不是本身就不需要直通操作,因为宿主机是 pve 本身,pve 已经挂载了硬盘,所以理论上就是直通的,性能也是最大化的?

5265 次点击
所在节点    NAS
17 条回复
wccc
2023-02-05 20:25:25 +08:00
kerb15
2023-02-05 20:28:33 +08:00
@wccc 言简意赅的回答,谢谢!
kerb15
2023-02-05 20:36:14 +08:00
@wccc 多一个 docker 应用就多建一个 lxc 容器,还是一个 lxc 容器运行 n 个 docker 好呢
des
2023-02-05 20:49:55 +08:00
Nextcloud 吗?好像 Nextcloud 对 LXC 不好
HarveyLiu
2023-02-05 20:50:20 +08:00
lxc 理论上和 docker 属于同一个隔离度,只不过 lxc 驱动的是 cpu 里已经集成的指令集,而 docker 驱动的是寄主的操作系统。
HarveyLiu
2023-02-05 20:52:12 +08:00
我做过实验,如果你的应用极度依赖 cpu ,那么 lxc 物理上更直接一点,如果是 io 应用频繁的,那么两者相差不大,也只有 3%的误差区间。
cm2gseh
2023-02-05 20:53:00 +08:00
@kerb15
资源上没多大区别,要看业务需求,即这几个 docker 内容是否有关联,是否经常一起 up/down 。如果是,那么建议放一起,如果不是可以分开多个 lxc ,避免出问题时一起炸了。
WinkeyLin
2023-02-05 20:56:42 +08:00
不建议用 lxc 跑 docker ,嵌套虚拟化有性能问题
单独起个 alpine 虚拟机吧
FrankAdler
2023-02-05 23:04:12 +08:00
pct set 143 -mp0 /mnt/down,mp=/data 可以直接映射目录
des
2023-02-06 02:10:32 +08:00
lxc 什么时候变成虚拟化了?
lxc 和 docker 都是基于内核 Cgroup 及 Namespace 能力开发啊
ltkun
2023-02-06 06:58:44 +08:00
@WinkeyLin 用 lxc 可以在非特权容器下跑 docker 安全性更高 还有不建议用 alpine 跑 docker 没有 glibc 遇到有些应用会不兼容 发生内存泄漏 虽然概率很小 虽然我也用 alpine 来跑 docker
sidkang
2023-02-06 09:05:53 +08:00
专门测试过 docker 在 lxc 下的性能,平常用的各种都没发现什么问题,很好使~~
wccc
2023-02-06 10:14:38 +08:00
虽然 我也在 lxc 下跑 docker 但是我不太建议.尽量单独一个 lxc. 普通使用还是没有太大的问题的
ikidou
2023-02-06 12:35:32 +08:00
我也遇到了,必须要特权容器才可以读写硬盘目录,总感觉有些膈应
ResidualBlood
2023-02-06 16:55:59 +08:00
如果个人用的话
直接 PVE 宿主跑 Docker
joyanhui
2023-02-08 07:26:23 +08:00
lxc 你可以叫他直通,也可以叫他挂载。无论 你怎么叫,他都是你说的`理论上就是直通的,性能也是最大化的`

除了楼上说的 pct set 143 -mp0 /mnt/down,mp=/data

还有 pct set XXXX -mpXXX /dev/sda1,mp=/data

都可以直通硬盘进去。。。

甚至 你可以 lxc 跑了 smb ,然后 pve 再反向挂回来。。。。

你也可以一个硬盘 /目录 直通 /挂载 到多个 lxc


当然,lxc 内部 smart 是用不了的。pve 自己可以搞定。
devli
31 天前
@WinkeyLin 胡说八道

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/913405

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX