FreeBSD云计算Ceph架构

作为 FreeBSD云计算架构 架构的底层分布式存储:

备注

我最初想要在FreeBSD构建一个类似我之前在Linux的 KVM 环境部署的 采用OVMF实现passthrough GPU和NVMe存储 ,也就是运行3个 bhyve(BSD hypervisor) 虚拟机来构建Ceph集群。不过,由于我攒机的小型服务器 PCIe 插槽有限需要全部用于 NVIDIA GPU ,最多只能分配2个 NVMe存储 ,所以我考虑仅仅作为一个模拟演练,缩小Ceph使用的磁盘(分区),并且也演练 Gluster ,仅用来验证方案。

LLM 大型语言模型 数据量巨大,我没有经费来购买3个副本的存储空间(Ceph),所以会直接采用 ZFS 存储提供给Linux bhyve 虚拟机加载。

对于数据实际存储有安全性要求的,我将采用3个 树莓派Raspberry Pi 5 来构建 CephGluster ,存储实际需要确保安全性的数据。

Ceph on FreeBSD当前的实现是基于 ZFS pools:

  • 所有Ceph数据创建在 /var/lib/ceph

  • 日志文件存储在 /var/log/ceph

  • PID文件存储在 /var/log/run

  • 每个 OSD 需要分配 一个 ZFS pool (也就是说,至少需要准备3个物理分区,每个物理分区创建一个ZFS pool,并分配给一个PSD)

警告

我最初考虑使用轻量级的 FreeBSD VNET Jail 来模拟构建Ceph on FreeBSD,但是 FreeBSD Jail访问ZFS文件系统 仅能够访问 dataset ,即不能直接访问 zpool : 这对部署Ceph是一个冲突,所以可能不得不构建 bhyve 虚拟机来部署。

参考