我已经用 Google 搜索了尽可能多的内容,但并没有找到一个我能理解的答案。
我正在创建一个网站,我想为每个用户提供 5gb 的磁盘空间,用于存放他们的个人文件、主题页面和脚本页面。
我考察了每一个主机提供商并决定选择 SoftLayer,因为他们有 24HDD 服务器。
我对如何实现这一目标的想法是
1 个 Web 服务器,用于保存网站登录部分的网页
1 个存储服务器,用于存储属于用户的所有文件
我想将存储服务器安装到 Web 服务器上,以便我可以轻松地通过 php 将用户重定向到安装点。
现在,我的问题是,因为我给用户提供了 5GB 的空间,所以我需要大量的空间来让每台服务器拥有大量注册用户。SoftLayer 提供 2TB 硬盘,所以我考虑使用 12 个 2TB 硬盘,将另外 12 个用作 raid 或备份
这里最好的生产环境是什么呢?目前他们只提供 RAID 0、1、10、5。由于我计划在存储服务器上看到高 IO,我担心磁盘会发生故障,并且重建 RAID 需要几天的停机时间。
针对我的情况有什么好的建议?
或者,什么才是满足我的存储需求的好的解决方案
答案1
您似乎搞混了。RAID 不是 BACKUP,但您可以互换使用这些术语。
您的所有鸡蛋都放在一个篮子里(所有磁盘都在同一台服务器上),因此无论您做什么:我不会称之为备份。它可以防止磁盘故障,但如果数据中心着火或有人入侵并执行“rm -fr *”,则无法提供任何保护。正确的备份位于异地(或至少位于不同的火灾区域),并且无法从备份系统的文件系统级别访问。
Raid 10 似乎最合适。否则,Raid 6:如果磁盘发生故障,那么使用那么多磁盘的 RAID 5 或 6 就意味着需要数天时间进行重建。顺便说一句,大多数 raid5 实现在超过 9 个磁盘时,操作性能都会下降。至少 Raid 6 可以防止 2 个磁盘发生故障,这在重建时间较长时更安全。因此,我宁愿使用 6(如果可能)而不是 5。
不管以上所有情况如何:我真的想知道这是否是一个明智的想法。考虑到如今云存储的价格,如果你只是从亚马逊或谷歌等公司租用云存储,那么似乎会便宜得多,而且麻烦也少得多。让他们担心备份、冗余等问题吧。
此外:标准解决方案比自制解决方案更易于维护和管理。别忘了:如果您自己开发,那么您是唯一可以提供支持的人。如果您向客户出售 24/7 SLA,那么您就是需要 24/7 待命提供支持的人。
答案2
对于拥有如此多磁盘的 RAID 0,我会尽量避免,试想一下 - 丢失这 24 个磁盘中的一个,您就会失去一切!
当您拥有 2 个以上的磁盘时,RAID 1 实际上就是 RAID 10。
在包含如此多磁盘的阵列上,RAID 5 会让我担心,重建时间和重建过程中阵列故障的风险让我不寒而栗。
RAID 6(如果您可以配置它)将为您提供大量空间,比 RAID 5 更具弹性,并且在这种设置下表现良好,特别是当您没有执行 >80% 的写入时。
当然,RAID 10(即 12+12)设置是安全的,并且实际上可能比您提供服务的速度更快。
所以我建议 R6 或 R10。