我正在为网络业务构建一个服务器场,我需要前端网络服务服务器和通用的 NAS 文件服务器后端。
有些公司选择购买速度最快、最可靠的硬件,但价格不菲。其他公司则选择购买规格较低的廉价 PC 硬件,但数量更多。他们构建高度冗余的系统,当系统出现故障时,他们会更换系统。我相信 Google 采取的是后者的方法。
有没有人能给我提供一些现实生活中的具体经验和建议?
答案1
这取决于您的应用程序和对故障的容忍度。
如果您正在为金融企业运行 Oracle 数据库,则需要昂贵的服务器,这些服务器具有热插拔部件和内置冗余(电源、磁盘,甚至 CPU 和内存)。
如果它是 Web 服务器或者带有 NAS 存储的计算服务器,那么就选择便宜的(在服务器上,而不是 NAS 上),只要您可以容忍一个盒子的丢失而不会造成太大影响。
不要太吝啬以至于不断更换损坏的硬件。
对我来说,一般的经验法则是使用 raid 来保护重要的磁盘数据,但购买便宜的商用硬件用于计算和网络农场。获得一个好的负载平衡器,它可以检测网络服务器何时没有响应并将其标记为离线。
现实生活经历:
缺点:在商用硬件上运行 Oracle 是一种廉价的解决方案,我们能够非常快速地完成它,但是一个损坏的 CPU 风扇导致服务器崩溃,迫使我们从磁带中恢复 Oracle(呃!)。
优点:我们用 70 台商用机架式服务器取代了 2 台高端高度冗余的机器。我们能够放弃对 2 台机器的维护,并开始只购买 2500 美元的“备件”。在大约 2 年的时间里,我认为我们只使用了大约 6 台“备件”(真正的挑战是避免将备件用于其他目的)。
答案2
我个人向我的客户建议,需要高可靠性的计算机是具有当前顶级支持的名牌计算机。
我将其称为“Packled 级支持”,以《星际迷航》中的外星种族命名,因为无论白天还是晚上,你都可以拨打支持热线并说我是 $COMPANY 的 $NAME。我的支持合同编号是 $X。我的计算机是 $TYPE,序列号是 $NUMBER。它坏了,修好它吧。并期望 2-4 小时后有人会出现并做同样的事情。
现在要为这种支持付出高昂的代价。但如果你必须起床,这是值得的。
大多数情况下,我更喜欢带有保修和支持的预装电脑,因为客户花钱让我指定、订购和组装廉价电脑通常是不值得的。
对于可以忍受停机几个小时/几天的计算机,较便宜的硬件可能没问题。例如,如果我有五台 Web 服务器,我希望其中两台具有高可用性,并能容忍其余服务器较便宜。对于计算场,我会选择较便宜的硬件。
答案3
构建热插拔服务器极其困难。
选择昂贵一点的。
答案4
根据我的经验,廉价的硬件确实也花费不少。我确信你不需要高端的专业服务器来为一些网站提供服务。但你不想错过
- 热插拔电源
- IPMI(远程管理)
- 系统磁盘的真实硬件 RAID 控制器
- 机箱通风良好
此外,如果适合您的 Web 应用程序,请考虑使用良好的负载均衡器、HTTP 缓存(例如Squid
)、PHP 缓存(例如ACP
)和memcachd
。这可能会淘汰相当繁忙的网站上的一些后端服务器。