我打算购买一个 7 端口 USB 3.0 集线器,并将 7 个便携式 HDD 连接到它,以构建 RAID 6 阵列。该集线器带有一个上游微型 USB 3.0 B 型端口,以及一个额定为 5V 2A 的辅助电源适配器(微型 USB 2.0 B 型连接器)。
每个 2.5 英寸硬盘可以轻松消耗 5V 0.9A,这是单个 USB 3.0 端口的最大值。现在我要将其中的 7 个连接到所有可用端口。
我的问题是:
我打算购买一个 7 端口 USB 3.0 集线器,并将 7 个便携式 HDD 连接到它,以构建 RAID 6 阵列。该集线器带有一个上游微型 USB 3.0 B 型端口,以及一个额定为 5V 2A 的辅助电源适配器(微型 USB 2.0 B 型连接器)。
每个 2.5 英寸硬盘可以轻松消耗 5V 0.9A,这是单个 USB 3.0 端口的最大值。现在我要将其中的 7 个连接到所有可用端口。
我的问题是:
这是一个可怕的想法;不要这样做!
对于电子设备,总输入功率始终等于总输出功率。您有两个电源:高达 2 A 的电源和 0.9 A 的上游端口,总计高达 2.9 A。如果驱动器试图拉更多的东西会发生什么?
使用菊花链集线器:
更重要的是,硬盘驱动器在启动时会消耗比额定电流大得多的电流。一旦获得动力,它们就会旋转,即同时旋转。服务器通过间隔一个接一个地启动驱动器来处理这个问题。您不能在此处执行此操作,因为您没有高级驱动控制器;每个驱动器在其集成的 SATA 转 USB 适配器中都有一个。更强大的电源会改善情况,但它仍然会超级不可靠。
撇开电源问题不谈,这仍然是一个糟糕的主意
我不知道你打算如何使用这个奇特的 RAID 阵列,但它从根本上是有缺陷的。
RAID 不是关于备份,RAID 是关于可靠性。如果您想防止数据丢失,RAID 不是您所需要的。所以我假设这个项目的目标是可靠性和可用性。您的阵列非常不可靠,因此它不能满足其唯一目的。
一旦单个驱动器由于某种原因出现故障或从阵列中掉线,就必须将其带回阵列并重建。重建一个十几 TB 的驱动器需要几天时间。您想使用 2.5" 驱动器,所以我们可能在 500 GB - 5 TB 的范围内。这样的驱动器可能需要三小时到两天的时间。现在考虑一下:
使用RAID 6,您可以丢失两个驱动器而不会丢失数据,包括等待重建的驱动器。考虑到这些问题,如果您丢失驱动器的速度快于重建驱动器的速度,我不会感到惊讶。这将是一场等待发生的灾难。
解决方案
您需要一个DAS(直连存储)。它是一个机箱,您可以在其中放置驱动器、将它们配置为阵列并将它们作为单个设备呈现。RAID 完全由 DAS 本身管理。NAS(网络附加存储)也是一种选择,但它将通过网络而不是直接连接可用。
DAS 和 NAS 设备在构建时考虑了多个驱动器。电源问题已经为您解决了,磁盘使用 SATA 连接器连接并拧入(最好使用 3.5" 磁盘,但如果您出于某种原因更喜欢 2.5" + 适配器)。建议使用专为 NAS 设计的驱动器。
这将花费更多,但它会可靠地工作,这就是重点。
您可以通过购买外部驱动器(它们比内部驱动器便宜)并将它们从 USB 外壳中取出(“剥壳”)来降低价格。但是你可能会失去保修,你得到的驱动器没有经过阵列认证(振动问题),你必须知道要买什么:例如,一些 2.5 英寸便携式驱动器的 USB 端口直接焊接到它们的 PCB 上,没有任何 SATA 端口。
一些流行的 DAS 品牌是铁威马和 Drobo。
TL;DR:不要这样做。
如果您的预算紧张,请缩小规模并选择 DAS。
这似乎是一个 XY 问题。根据评论,您实际上想要实现的是以一种廉价的方式扩大文件服务器的存储容量。
这里的问题是,由于以下几个原因,在可靠性很重要的任何情况下,USB 都是可怕的:
根据您可以花多少钱,有一些“正确”的方法:
集线器与任何 USB 设备一样,都是“总线”或“自”供电的。
设备被正常枚举,并出现在配置 0 中,其中没有实现接口并且功率限制为 100 mA。
只有在功率预算允许的情况下,操作系统才能启用具有更高功率要求的配置。
总线供电的 USB 1.1 或 2.0 集线器为其工作配置要求 500 mA,这足以为其自身和四个下游设备(这就是 USB 集线器总是有四个端口的原因)各提供 100 mA,并且下游设备仅在该请求获得批准。
自供电 USB 集线器需要 4 mA,这几乎是一个象征性的值——这种配置比非活动配置使用更少的功率,因此它始终在功率预算之内。如果未连接电源适配器,集线器必须拒绝配置切换。
集线器提供自供电和总线供电两种配置,操作系统将依次尝试它们。如果电源适配器不存在,则拒绝自供电配置,并且操作系统检查电源预算是否足以用于总线供电配置。
因此,在具有任意数量的集线器的树中,要么有足够的电源供所有设备使用,要么操作系统知道电源预算不允许激活“工作”配置的设备,这会导致消息显示在 UI 中。
一个七端口 USB 1.1 或 2.0 集线器由两个四端口集线器组成,其中一个位于另一个的下游,因此该集线器的电源不足会使四个下游端口完全断电,并且操作系统会要求用户插入集线器的电源供应。
使用 USB 3.0,数字会发生一些变化,因为现在可以请求更多功率,但总体思路保持不变:如果功率预算不允许,设备将不会被激活。
集线器知道其下行端口的总功率预算为 2 A,并将该事实报告给操作系统。操作系统将拒绝激活超出预算允许的更多磁盘,因此预计只有少数磁盘可以启动。
理论上,磁盘可能会在未经许可的情况下尝试启动,这将违反 USB 规范。然后会发生什么取决于集线器是否主动限制端口功率。我不会将数据委托给任何不等待显式切换到活动配置的磁盘。
我认为 gronostay 的“TL;DR:不要这样做”是出于根本原因。
也就是说,我想你可以简单地为驱动器提供自己的 5V。忽略集线器电源,切断驱动器的电缆(或更好:连接器)打开并将VCC 和 GND引脚连接到足够的 5V 电源。您甚至可以提供简单的开关来单独打开它们,以避免初始电涌。
其他人可能会回答一些细节:您需要与集线器有共同点吗?5V 电源必须具备什么品质(纹波、电压精度)?
自从我使用 USB 规范以来已经有一段时间了,但是符合 USB 的设备会通过设备枚举,主机基本上会询问它们需要多少功率。在枚举完成之前,允许它们通过 100mA 的电流。电流请求是协商过程的一部分。顶级 USB 主机管理总线上的整体电流消耗,我的理解是,当预算不允许时,它会拒绝新设备的电源请求。当预算用完时,即使是适度的请求也应该被拒绝。如果我没记错的话,其他人可以确认。
最佳情况下(USB2.0)它们可以允许高达 500mA,这取决于总线上的其他人。使用 USB3.0 时,电流高达 900mA。