JBOD 与直通模式
JBOD(Just a Bunch Of Disks)让每块盘独立呈现给操作系统,不做条带也不做冗余,容量 100% 可用;直通(pass-through)则更进一步,让盘不被卡上固件管理,交给上层软件栈(ZFS、Ceph 等)处理。两个词经常被混用,实际含义与实现方式依厂商与固件而不同,切换前必须核对卡的文档,而不是凭名字推断。
基本信息
| JBOD | 每块盘独立 LUN(或映射为单盘 RAID 0),容量 100%,无容错 |
|---|---|
| 直通 / Pass-through | 盘不被卡固件管理,交给上层软件(ZFS、Ceph、软件 RAID) |
| 典型用途 | 超融合、对象存储、软件定义存储节点与归档节点 |
| 与 HBA 的关系 | HBA 卡天然透传,RAID 卡需切换到 JBOD 或 HBA 模式才能达到类似效果 |
| 切换代价 | 通常需要重启、重建阵列或清空配置,生产变更前要预留窗口 |
LSI 卡开启 JBOD(megacli,重启后生效)
LSI 卡开启 JBOD(megacli,重启后生效)
MegaCli -AdpSetProp -EnableJBOD -1 -a0 # 开启 JBOD 模式
MegaCli -AdpSetProp -EnableJBOD -0 -a0 # 关闭 JBOD 模式
MegaCli -PDList -a0 | grep -i "Firmware State" # 核对盘状态
storcli /c0 show | grep -i -E "JBOD|Mode" # storcli 侧查看当前模式
lsblk -o NAME,SIZE,MODEL # 操作系统侧确认盘是否直通可见三种模式对照
| 模式 | 冗余 | 操作系统可见性 | 适用 |
|---|---|---|---|
| 硬件 RAID | 由卡提供 | 只看到逻辑盘 | 传统数据库与虚拟化 |
| JBOD | 无 | 每块盘独立可见 | 需要逐盘管理的场景 |
| 直通 / HBA 模式 | 由上层软件提供 | 看到真实盘与 SMART | ZFS、Ceph 等软件定义存储 |
什么时候该选 JBOD 或直通
- 上层要用 ZFS、Ceph 等自带冗余与校验的软件栈:需要看到真实盘与 SMART 信息
- 需要按盘归档、逐盘替换的冷数据节点:不希望被阵列结构束缚
- 硬件 RAID 卡缓存与电池已失效或不打算使用:不如把盘直接交给操作系统
- 反向提醒:如果上层没有任何冗余机制,JBOD 就等于每块盘都是单点故障
同一块盘不要同时被硬件 RAID 与软 RAID 管理:混用会造成状态与数据归属混乱,出故障时两边都不知道该信谁。