DMXAPI实测:abab6.5轻量网关的原理、限免机制与工程边界
2026/6/19 17:32:08
好,这次我们完全不用“内核、librbd、块设备”这些术语,只用生活化的比喻,把它讲清楚。你只需要记住一个核心问题:
Ceph 的磁盘是“谁在帮你和 Ceph 打交道”?
内核模式:
👉操作系统自己直接去找 Ceph 拿数据
librbd 模式:
👉一个普通程序先去找 Ceph,再转交给操作系统
这就是本质区别。
你现在要从一个**远程仓库(Ceph)**拿货,用在你本地。
操作系统里自带一个“Ceph 驾驶员”
每次你读写磁盘:
中间没有别人插手
系统里多了一块“硬盘”
名字像这样:
/dev/rbd0对系统来说:
“这就是一块真·磁盘”
内核模式 = Ceph 磁盘已经长进了操作系统身体里
操作系统自己不会直接找 Ceph
先启动一个普通程序(rbd-nbd)
流程变成:
你的程序 ↓ 操作系统 ↓ 中介程序 rbd-nbd ↓ Ceph 仓库也就是说:
系统里也多了一块磁盘:
/dev/nbd0但这块磁盘背后有人一直在跑
librbd 模式 = 一个程序假装成磁盘,替你和 Ceph 聊天
内核模式
librbd 模式
👉 就像:
内核模式:
程序 → 操作系统 → Cephlibrbd 模式:
程序 → 操作系统 → 中介程序 → Ceph👉 多了一层,就更慢一点,也更复杂一点。
内核模式:
librbd 模式:
👉 就像:
| 你关心的点 | 内核模式 | librbd 模式 |
|---|---|---|
| 谁和 Ceph 说话 | 操作系统 | 一个普通程序 |
| 系统认不认为是真硬盘 | 是 | 表面是 |
| 稳定性 | 非常高 | 依赖程序 |
| 性能 | 更好 | 稍差 |
| 出问题好不好修 | 偏底层 | 好查 |
| 要不要守护进程 | 不用 | 必须 |
能用内核模式,就用内核模式
只有内核不行、版本太老、功能不够,才用 librbd
如果我现在说:
“这台机器一重启,磁盘还在,不用管任何后台进程”
👉一定是内核模式
如果我说:
“这个磁盘必须有一个 rbd-nbd 进程一直活着”
👉一定是 librbd 模式