balupton
(Benjamin Lupton)
12
我在树莓派 4 的 Ubuntu 服务器上尝试通过 LXD 运行 Discourse,并使用 USB SSD。在重建过程中,它会挂起并超时。使用 btrfs 回环存储池时挂起更严重/更早,使用 zfs 回环存储池时挂起稍晚。内存占用稳定在 1GB 左右,峰值达到 3GB。挂起时 SSH/top 仍然响应,但所有使用活动都会下降到可忽略的水平,表明它已放弃。
如今,LXD 文档仅建议将 security.nesting 设置为字符串值 true 来启用 Docker 使用,我就是这样做的。然而,LXD 文档还有一个关于生产环境配置的页面,其中包含大约 20 个需要更改的设置,我还没有尝试过。
最后,我放弃了在 LXD 中运行 Discourse 的尝试,而是在同一台机器上通过 Docker 运行 Discourse。
我的努力细节如下:
奇怪的是,下面的 LXD Docker 指南推荐使用 btrfs,尽管LXD 文档不推荐它,并且似乎没有为它使用分区(但他们设置了一些额外的设置,安装了 docker.io 以外的其他软件包,并将 btrfs 卷仅附加到 Docker),所以我很想知道为什么我遇到了这些问题:
@vmsman 你能分享更多关于你的 LXD 设置的细节吗?例如配置文件、存储池以及需要更改的任何系统设置,因为你似乎拥有迄今为止最成功的设置:
对于 LXD,我有一些疑问:
- 使用存储池分区而不是回环文件是否足以解决性能问题,从而消除挂起问题?
- 使用 MicroCloud 或 LXD 集群是否有帮助,或者使用 Ceph 作为存储池是否有帮助?
总而言之,尽管没有在 LXD 中成功运行 Discourse,但我对 LXD 及其易用性印象深刻。我之前花了几个月的时间在 HashiCorp 上挣扎,因为 HashiCorp 似乎只对企业用例感兴趣。而 LXD 则能正常工作,而且人们似乎足够支持,能够让小型团队和独立开发者取得进展。