Oamc

Ceph 集群入门 · 修改记录

这是 storage/Ceph 集群入门.md 的改动记录。后台每次保存都会留一份快照, 这里显示的是快照之间的差异,不会混入其他文章的改动。

还没有后台修改记录。

Git 提交记录

下面是 Git 里的提交,可能包含其他文章的改动(因为一次提交会带上工作区所有变化)。

#1 2026-10-25 +0 −0 refactor: 全部文章文件名中文化 0aa8fe6

这次没有正文改动。

#2 2026-10-18 +70 −0 docs: 新增存储/中间件/自动化/云与K8s/证书/流程 6 个分类和 16 篇文章 e4d2cd0
 @@ -0,0 +1,70 @@
+---
+tags: [Ceph, 分布式存储, 集群]
+order: 30
+---
+
+# Ceph 集群入门
+
+## 场景
+
+要一套能横向扩展的共享存储,给虚拟化或容器用,又不想买商业存储。
+
+## 前置条件
+
+- 至少 3 台机器,每台至少 2 块盘(系统盘 + 数据盘)
+- 万兆网络更稳,千兆也能跑但慢
+- 全部机器时间同步
+- 主机名能互相解析
+
+## 配置
+
+```bash
+# 1. 在第一个节点装 cephadm
+dnf install -y cephadm
+cephadm bootstrap --mon-ip 10.0.0.11
+
+# 2. 把其他节点加进来(需要免密)
+ceph orch host add node2 10.0.0.12
+ceph orch host add node3 10.0.0.13
+ceph orch host label add node1 mon
+ceph orch host label add node2 mon
+ceph orch host label add node3 mon
+
+# 3. 加 OSD(用裸盘,别提前分区)
+ceph orch apply osd --all-available-devices
+
+# 4. 建池
+ceph osd pool create rbd 128
+ceph osd pool application enable rbd rbd
+
+# 5. 建块设备
+rbd create disk01 --size 100G --pool rbd
+```
+
+## 验证
+
+```bash
+ceph -s                    # HEALTH_OK
+ceph osd tree
+ceph df
+rbd ls -p rbd
+```
+
+`ceph -s` 要看到 `HEALTH_OK` 或者明确列出的 warning,别忽略 `HEALTH_WARN`。
+
+## 回滚
+
+```bash
+cephadm rm-cluster --fsid <fsid> --force
+```
+
+会清掉集群,数据一起没。
+
+## 坑
+
+- **时间不同步**,MON 会不断踢节点,集群起不来。
+- OSD 用了做过分区的盘,`ceph-volume` 会拒绝,先 `wipefs`。
+- 千兆网络下重建一块盘要很久,期间性能明显下降。
+- `HEALTH_WARN` 里如果是 `POOL_APP_NOT_ENABLED` 之类的小事可以稍后处理,但 `PG_DEGRADED` 要马上看。
+- 别把 MON 全放一台机器上。
+- Ceph 不是备份,误删照样丢。