Ceph:模型、数据与日志的分布式存储¶
本方向是 llama.cpp 主线任务的延伸,关注的问题是:
在一个多机大模型推理系统中,模型文件、输入数据和推理日志应该如何存储、共享和管理?
Ceph 在本实验中不再作为独立的存储系统性能测试题,而是作为 AI 推理系统的分布式存储层 使用。同学们需要部署一个小规模 Ceph 环境,并围绕 llama.cpp 的模型文件、prompt 数据和推理输出进行存储实验。
背景介绍¶
Ceph 是一个开源分布式存储系统,能够把多台机器上的磁盘组织成一个统一的存储集群。它支持对象存储、块存储和文件系统三种使用方式。
在 AI 系统中,Ceph 这类分布式存储常用于:
- 保存模型权重文件;
- 保存训练或推理数据集;
- 保存推理请求和响应日志;
- 为多台计算节点提供共享数据访问;
- 通过副本机制提高数据可靠性。
本实验不要求部署生产级 Ceph 集群,也不要求使用大容量磁盘。推荐使用组员电脑、虚拟机或 Docker 搭建小规模环境,重点观察分布式存储对 AI 推理工作流的影响。
基础知识¶
Ceph 中常见组件包括:
- Monitor:维护集群状态和集群 map。
- OSD:真正负责存储数据的守护进程,通常对应磁盘或目录。
- Pool:对象存储池,用于组织和管理对象。
- RADOS / RGW / CephFS:分别对应底层对象存储、兼容 S3 的对象网关和分布式文件系统。
在本实验中,推荐优先使用对象存储或 CephFS:
- 使用对象存储时,可以把模型、prompt 文件和日志作为对象上传下载;
- 使用 CephFS 时,可以把 Ceph 挂载为共享目录,让多台机器从同一目录读取输入和写入结果。
建议系统结构¶
推荐结构如下:
Ceph cluster
----------------------
| model / prompts / logs |
----------------------
| | |
llama.cpp llama.cpp llama.cpp
node A node B node C
同学们可以将 GGUF 模型文件、prompt 数据集和推理结果日志放入 Ceph。多台运行 llama.cpp 的机器从 Ceph 中读取输入数据,并将结果写回 Ceph。
如果机器资源有限,可以使用较小模型和较小 prompt 数据集。性能测试不要求大规模数据,重点是说明数据访问路径和系统影响。
必做要求(20 分)¶
选择 Ceph 方向的小组需要完成以下任务:
-
完成小规模 Ceph 环境部署,并说明部署方式、节点数量、Monitor、OSD 和存储池配置。可以使用真实多机、虚拟机或 Docker。(4 分)
-
将 llama.cpp 实验相关文件存入 Ceph,包括至少一个模型文件或模型占位测试文件、一组 prompt 数据和一份推理结果日志。(3 分)
-
设计一个基于 Ceph 的推理工作流:从 Ceph 读取 prompt,调用 llama.cpp 完成推理,并将输出结果写回 Ceph。(4 分)
-
测量至少两个存储相关指标,例如上传时间、下载时间、读取吞吐、写入吞吐、模型加载时间、日志写入延迟等。(3 分)
-
比较 Ceph 存储路径和本地文件系统路径的差异。可以比较模型文件读取、prompt 读取或日志写入中的任意一项。(3 分)
-
分析实验现象,说明分布式存储的副本、网络、磁盘 I/O、对象大小、缓存和数据共享方式对 AI 推理系统的影响。(3 分)
选做加分(最高 10 分)¶
以下任务任选完成,按完成质量计分,最高 10 分。每项需提交配置说明、运行命令、测试数据和结果分析。
-
副本数对比(5 分):在至少两种副本数配置下测试同一批文件的上传和下载,例如 size=1 与 size=2/3;比较读写吞吐、耗时和空间开销。
-
故障恢复观察(5 分):手动停止一个 OSD 或节点,记录
ceph status变化、数据是否可读、恢复后集群状态;报告中需说明故障注入步骤和恢复现象。 -
存储路径对比(5 分):比较本地文件系统、CephFS 或对象存储中至少两种路径的模型文件读取或 prompt 读取耗时;测试文件大小需明确,至少重复 3 次取平均。
-
多节点共享日志(5 分):至少两个 llama.cpp 节点同时读取 Ceph 中的 prompt,并将结果写回统一日志目录或对象前缀;报告中需说明命名规则、冲突处理和结果汇总方式。
报告建议¶
报告中建议包含:
- Ceph 集群拓扑图;
- 每个节点的硬件、系统和磁盘配置;
- Ceph 部署命令和关键配置;
- 存储池、对象或挂载目录说明;
- llama.cpp 与 Ceph 结合的工作流;
- 本地存储与 Ceph 存储的对比数据;
- 对分布式存储在 AI 推理系统中作用的分析。
本方向的重点不是追求存储系统极限性能,而是理解:当模型、数据和日志不再只放在本地磁盘时,分布式存储会如何影响大模型推理系统的部署、共享、可靠性和性能。