4-Drive Software RAID1 vs RAID10 标题告诉你我在考虑什么。
硬件:2x 1TB 企业级 HDD + 2x 1TB 消费级 HDD。
操作系统和软件:Linux Debian Jessie (stable) with mdadm
.
预期用途:极高的可靠性存储。不能承受数据丢失。这样的事情简直不能接受。这就是我考虑 RAID1 而不是 RAID10 的原因,因为 RAID1 的容错应该是 3 驱动器故障。
我看到了一个缺点:将全局存储大小限制为 1/4。疯狂的。
除了我可能已经做出的决定 RAID1 与 RAID10 之外,RAID1 就是,除非你另有建议,否则我有一个关于 RAID1 的问题:
假设我被限制为 4 个驱动器,我将使用 RAID10 的可能性有限,而不是 RAID1,我可以定义 3 个活动驱动器和第 4 个作为备用驱动器。或者直接定义活动的 4 个 HDD。
请告诉我你的想法?
在这样的设置中(仅 4 个磁盘和 RAID1),最好直接将第 4 个磁盘用作阵列成员而不是备用。
将它用作备用不会在冗余方面为您带来任何好处,而将第 4 个磁盘用作完整阵列成员会将您的冗余从 3 个副本增加到 4 个副本,从而使您能够在 3 个磁盘故障时幸免于难。
无论如何,如果您非常担心数据冗余/可用性以承受损失 3/4 的原始空间,那么您可能从错误的角度来处理问题。
记住:RAID 不是备份!!!
与其在 3 路镜像上增加 RAID1 设置,不如确保有一个强大的备份/恢复计划。
如果您正在寻找具有高可用性的系统并且担心驱动器崩溃,那么 RAID1 无疑是最佳解决方案。但如果您想要更多空间,RAID6可能是一种折衷方案。您“松动”了两个磁盘的空间以进行奇偶校验,但您最多也可以保存两个故障磁盘。
如果您确实关心高可用性,那么您可能还应该考虑使用同步的第二台服务器。如果您担心数据丢失,那么您应该首先确保有一个良好的备份。RAID永远不能替代备份,因为它只能防止出现故障的磁盘,而不是防止意外删除数据、恶意软件或攻击者加密或删除您的数据等。
同意,如果您确实对存储有如此严格的要求,我也建议采用多节点方法。目前,我们在每台服务器上运行 2 个节点备份存储库和 RAID 10 阵列。看起来稳定而多余。
如果您非常关心数据的可用性和完整性,并且您愿意执行类似四成员 RAID-1 之类的操作来获得它,那么您可能应该考虑节点级别的冗余。
无论您在控制器中放置多少磁盘,仍然存在单点故障,那就是机器本身。不必担心在 RAID 级别打包冗余,您可以实现 DRDB、GlusterFS 或 Ceph 之类的东西。
DRDB 将更像网络 RAID-1,简单地描述它。Gluster 和 Ceph 也可以这样做,但也可以通过复制到节点和跨副本集分布数据来大规模扩展。
您仍然可以使用这些类型的存储在节点级别实现 RAID,但是使用这些节点间复制系统,它变得不再那么重要,并且降低了大型部署中的可扩展性。也很容易将整个节点从集群中取出,对其进行修复,然后将其放回原处。在存储云中,由于这些原因,RAID 的使用越来越少。