AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 120934
Accepted
user37245
user37245
Asked: 2010-03-10 14:18:05 +0800 CST2010-03-10 14:18:05 +0800 CST 2010-03-10 14:18:05 +0800 CST

SCM 服务器的 RAID

  • 772

我需要购买/构建一个服务器来托管我们的 Subversion 存储库(仅供参考:我是开发人员/不是 IT 人员)。显然,这是关键任务,需要具有高网络和磁盘 i/o 性能。我们的存储库目前是 5GB,我们支持 20 个开发人员。服务器将是 Windows 2008,但如果 Linux 是一个引人注目且更简单/更容易的解决方案,它是一个选项。

澄清:5GB 的存储库大约有 2GB 的源,是的,它需要处理 20 名开发人员整天进行多次小型提交、日志、历史记录和签出。(我如何澄清源代码提交?到处都是一些 C# 文件,有几行更改?非常标准的东西。)

更新:预算:我希望能用 2,000 美元或更少的钱过日子,只是因为我认为我们不需要花那么多钱。但是,如果它需要 5,000 美元,那么这就是它所需要的。这就是我们的生活。但是,如果 2500 美元获得 100%,而 5000 美元获得 103%,那么额外的钱就不值得了。

当然,我的首要任务是数据完整性。如果驱动器出现故障,我希望机器停止写入并能够快速插入新驱动器,以使机器尽快备份和运行。(我可以处理几个小时的停机时间,但不能在停机期间处理几个小时的“工作”)。

我认为我不需要(或想要)RAID 5,因为重建成本似乎很高/很复杂。

至少,我可以使用 RAID 1,并有一个备份磁盘(显然不是来自同一批次,甚至不是制造商 ;-)

RAID 1+0 看起来可能更快?值得这么复杂吗?

有人可以向我指出一些管理 RAID 驱动器的建议和最佳实践,特别是,无论提供什么解决方案,我如何管理磁盘故障。如果驱动器死机,是否有软件可以通知我(电子邮件/寻呼机)?那时会阻止写入磁盘的软件?

还有什么我需要考虑的吗?

更新:我的问题是:硬件 RAID 与 Windows Server 2008 软件 RAID 对于 RAID 1+0 wrt 速度、管理(死磁盘)和磁盘故障警报之间有什么优势。

谢谢

svn raid scm software-raid
  • 4 4 个回答
  • 427 Views

4 个回答

  • Voted
  1. Best Answer
    user2874
    2010-03-10T15:22:45+08:002010-03-10T15:22:45+08:00

    如果驱动器出现故障,我希望机器停止写入并能够放入新驱动器

    RAID 控制器通常不会这样运行。如果驱动器发生故障,控制器会将阵列标记为降级,并继续让阵列运行(但速度较低,因为它需要进行更多错误处理)。

    我认为我不需要(或想要)RAID 5,因为重建成本似乎很高/很复杂。

    通常 RAID 5 和 6 是完全有效的选择,很少会产生重建成本。更糟糕的是,RAID 5/6 的写入性能可能相当低。

    我可以使用 RAID 1

    对于 20 个用户来说,如果有不错的磁盘,我想这会很好。

    RAID 1+0 看起来可能更快?值得这么复杂吗?

    是的,RAID 1+0 更快,并且没有任何明显的额外复杂性——这是最常用的 RAID 级别之一,所有好的控制器都有成熟的实现。在理想情况下,一个 4 磁盘 RAID 1+0 可以具有单个驱动器的 4 倍读取性能和 2 倍写入性能。但有一件事,因为您需要至少 4 个驱动器,成本会上升,并且相对于使用的驱动器数量而言,有效存储大小并不太大。

    如何管理磁盘故障。是否有软件可以通知我(电子邮件/寻呼机)

    如果你买了一个像样的控制器,它会附带控制器;您只需安装管理软件并将其设置为电子邮件通知。此外,您可以在控制器上放置一个热备用驱动器,以便它立即重建(请注意,重建期间性能会下降)。

    3个提示:

    • 在现有服务器(perfmon 等)上测量您当前的磁盘 I/O 模式和性能需求。如果您的实际磁盘 I/O 没有那么高,请不要过度使用 RAID。20 个用户并不多,但当然 Subversion 可能需要比人们想象的更多的磁盘 I/O。
    • 购买名牌服务器(Dell、HP、IBM 等),不要 DYI。对于通用标准服务器来说,这几乎是不值得的。
    • 请记住,RAID!= 备份。您似乎对磁盘故障情况有些着迷——RAID 为您提供了更长的服务器正常运行时间和更多的磁盘 I/O,但您仍然需要适当的备份。
    • 5
  2. Zero0ne
    2010-03-10T14:48:07+08:002010-03-10T14:48:07+08:00

    您的存储库是 5GB,但是您的提交/更新频率是多少?它们的粗略大小是多少?

    我们在这里工作多少钱?这确实是您应该问自己的最重要的第一个问题。

    我认为带有 1 或 2 个热备件的 RAID 1 或 1+0 将是理想的,这样如果驱动器发生故障,raid 卡将自动开始使用热备件驱动器重建 RAID。然后,您只需购买一个新驱动器以匹配您在那里的驱动器,然后用它替换坏的驱动器。

    • 1
  3. bta
    2010-03-10T15:32:41+08:002010-03-10T15:32:41+08:00

    我会推荐硬件 RAID 1+0 设置。这将为您提供良好的性能和冗余/故障容限,但代价是成本更高(与 RAID 5 相比,需要更多驱动器)。

    镜像 RAID 卷具有所有数据的 2 个副本,因此如果驱动器发生故障,您仍然有一个可访问的副本。您无需在驱动器故障时阻止磁盘访问。您可以使用“热备用”驱动器配置您的系统,这些驱动器在发生驱动器故障之前一直处于未使用状态,然后恢复活力并自动取代发生故障的驱动器。这应该为您提供一个功能齐全的 RAID 卷,它可以容忍另一个驱动器故障,并为您赢得足够的时间来更换故障驱动器。为了使 RAID 1+0 卷完全失败,您需要在短时间内发生多个驱动器故障(这通常很少见)。

    大多数硬件 RAID 控制器都带有管理软件,可以在出现故障时提醒您。

    我的大部分服务器经验都是使用惠普产品,所以我主要是从这个角度说的(尽管大多数其他品牌都做类似的事情)。

    • 1
  4. user20285
    2010-03-10T15:35:55+08:002010-03-10T15:35:55+08:00

    从您的描述中我看不到可能发生高网络或磁盘 IO 负载的地方。5 GB 是 SCM 的一个非常小的存储库,C# 文件只有几 KB 大小,20 个开发人员完全没有问题。因此,您应该专注于设置的可靠性,因此具有冗余电源和 RAID 1 的服务器应该没问题。您主要关心的应该是灾难恢复,但正如您可能知道的那样,RAID 设置不会为您带来任何好处。

    • 0

相关问题

  • 使用 crontab 和 /etc/cron.hourly,daily,weekly 的区别

  • 如何定期复制 SVN 存储库而不会丢失目标标签和分支?

  • 如何通过 SVN 命令行接受 SSL 证书?

  • 如何在 slicehost 上设置集市

  • 如何在 Mac OS X 中正确安装 Subversion?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve