我有一台较旧的机器 (HP DL180 G6),它使用连接了 12 个驱动器的 HP SmartArray 控制器(型号 P410)。我对控制器的功能并不是很感兴趣,因为我想设置一个 ZFS 阵列,但我发现控制器没有直通模式为时已晚。
作为一种解决方法,我创建了 12 个逻辑“RAID 0”卷 - 每个驱动器一个。这种设置已经运行了大约 3 年。
控制器已经开始出现故障迹象,所以我想借此机会转移到一个普通的旧 SATA HBA,因为资金可用。
将控制器换成 HBA 后,我是否需要采取其他步骤才能让我的驱动器可读,还是“正常工作”?(换句话说:SmartArray 是否对数据结构做了任何会导致数据无法读取的操作?)
对于 DL180 G6,您有几个选择:
继续使用多个 RAID 0 阵列 - 问题在于驱动器故障本质上是逻辑驱动器故障,可能需要重新启动才能识别替换磁盘。
升级到 Smart Array P420 或 H220 或 H240。P420 可以置于“HBA 模式”。H220 和 H240 是 HBA(LSI 芯片组)。这将为您提供所需的原始磁盘访问权限。
搞砸它,只需创建一个您想要的级别的硬件 RAID 阵列 (RAID 1+0),为您的操作系统 (sda) 创建一个小型逻辑驱动器,以及另一个可供 zpool 使用的大型逻辑驱动器。这为您提供了 ZFS 卷管理和灵活性,以及硬件 RAID、轻松更换驱动器、监控和闪存/电池支持的写入缓存。
互联网上的人会说“不,不要这样做...... ZFS 想要原始磁盘”,但实际上,这会最大化您的磁盘空间,因为您不需要分配 OS 磁盘。HP 硬件 RAID 非常有弹性。写缓存很不错。ZFS 确实最适合 lz4 压缩和 ARC/L2ARC 的灵活性和性能增强。如果您没有合适的 ZIL SLOG 设备和非常好的架构设置,那么 ZFS 纯粹的原始磁盘就不是那么重要了。
不,它不能在正常情况下无论如何。您在该磁盘上创建了一个元数据和专门的分区层,然后 RAID 控制器在其上创建分区,并将其连接到抽象中。这些都不是操作系统能够直接读取的“正常”分区和磁盘元数据。既然是这种情况,除了能够读取位于传统磁盘结构下方的卷的任何格式之外,您还需要以特定偏移量读取该磁盘上的数据。
备份这个系统通常是最简单的,然后将其恢复到新磁盘和新 HBA,不会将抽象置于磁盘访问的方式中。