容器化部署 DeepSeek 3FS 存储系统
💡
原文中文,约17000字,阅读约需41分钟。
📝
内容提要
本文介绍了如何容器化部署 DeepSeek 3FS 存储系统,包括编译镜像、部署 ClickHouse 和 FoundationDB 中间件,以及启动 Monitor、Admin CLI、MgmtD、Meta 和 Storage 服务。通过设置环境变量和启动参数,可以灵活启动不同服务,提供了具体步骤和脚本。
🎯
关键要点
- 部署方案包括一个 Monitor、Admin CLI、三个 MgmtD、三个 Meta 和多个 Storage 服务。
- 所有服务需要在支持 RDMA 的主机上部署,并且 Monitor 和 MgmtD 可以部署在同一台机器上。
- 编译 3FS 镜像的基础镜像为 Ubuntu 22.04,提供了具体的 Dockerfile 和编译命令。
- 部署 ClickHouse 和 FoundationDB 中间件需要使用 kubectl 命令,并设置相应的访问凭证。
- 启动服务时需要设置公共环境变量,并根据服务类型设置特定的环境变量。
- Monitor、Admin CLI、MgmtD、Meta 和 Storage 服务的启动命令提供了详细的参数设置。
- 创建 3FS 存储实例需要在 Admin CLI 中添加用户和执行数据放置计算命令。
- Fuse 挂载需要使用 --mount 参数进行主机目录的挂载,并确保挂载点的可用性。
- 总结了容器化部署 DeepSeek 3FS 存储系统的主要步骤和相关脚本的参考链接。
❓
延伸问答
如何编译 DeepSeek 3FS 镜像?
使用基础镜像 Ubuntu 22.04,运行命令 `nerdctl build --build-arg BASE_IMAGE=shaowenchen/demo-3fsbuilder -t shaowenchen/demo-3fs .` 来编译镜像。
DeepSeek 3FS 存储系统需要哪些服务?
需要部署一个 Monitor、一个 Admin CLI、三个 MgmtD、三个 Meta 和多个 Storage 服务。
如何部署 ClickHouse 和 FoundationDB 中间件?
使用 `kubectl apply` 命令部署 ClickHouse 和 FoundationDB 的 Operator 和集群,具体命令在文章中有详细说明。
如何启动 DeepSeek 3FS 的 Monitor 服务?
设置环境变量后,运行命令 `nerdctl run --name 3fs_monitor --privileged --network host -d --restart always ... ./3fs-entrypoint.sh monitor` 启动 Monitor 服务。
Fuse 挂载需要注意什么?
Fuse 挂载需要使用 `--mount` 参数进行主机目录的挂载,并确保挂载点的可用性。
如何创建 3FS 存储实例?
在 Admin CLI 中添加用户并执行数据放置计算命令,具体步骤包括创建用户和上传链表。
➡️