黑客故事:12个月制造Facebook开源服务器

导读:Facebook从开源服务器、数据中心直刚刚宣布将开源存储方案,Facebook 正在帮助互联网企业除去那些昂贵而且不必要的组件来降低成本,从新设计供电、主板和散热系统,并将方案分享给所有人。Wired记者Cade Metz对Facebook的系统工程经理Amir Michael进行了采访,为我们描绘了Facebook开源服务器和数据中心的诞生过程。你很难想象,Michael和他的团队仅仅用了12个月就完成 了这一切。以下为全文翻译:

Amir Michael在Faceobook的服务器实验室

Amir Michael在Facebook工作,作为一名黑客这没有什么值得惊讶的。但他并非一名传统意义的软件黑客,而是一名硬件黑客——在作为临时实验室的收发室里。

到2010年底,Facebook在Palo Alto的总部码头不再接收任何货物。Michael和另外几名工程师随之涌入,因为他们需要建立更大的服务器实验室,这不,他们已经在隔壁建立了存储房间。

这里曾是发货码头,在地板上有一个巨大的标尺。有时候,这个巨大的标尺用来给包裹称重。当Michael和他的团队搬进来后,标尺用来测量从零开始 制造的服务器。12个月后,他们为Prineville数据中心设计的服务器完成,其中一台放在标尺上。他爱不释手,这个服务器已经批量生产并在世界各地 使用。

Michael制造的服务器轻了10磅。

像其他互联网巨头一样,Facebook为他的互联网帝国提供了大量数据中心网络和服务器,投入巨大,很多很多钱。如果你要为上亿的用户提供网页, 就需要花掉大量的金钱,不仅仅要购买硬件,而且要为这些硬件提供电力。从某种角度上说,你真的花了太多钱了。你需要的东西与世界上的任何一件东西都不一 样。

2009年春天,Facebook将Michael招募进来,帮助公司提高效率。“我的主管和我说:‘嘿,来吧,我们有很多架构要建立,我们要做许 多创新,更加经济以及更高的能源效率’”,Michael回忆。“我问道有没有什么具体的目标么?他说:‘没有。为什么不来加入我们并找到它呢?’”于 是,Michael就做了这些。

为了保持Facebook世界知名“黑客文化”,他从一块空白的地板开始,利用能触手可及的一切东西,以工程师的疯狂速度建造了Facebook IT存储间以及隔壁的收货“码头”。结果就是一个全新的服务器诞生了,不仅能效高、更加经济,而且外形(physically )更高效。

“为了优化成本,我们拿掉了标准服务器中很多组件,”Michael说,“这使得它更容易维修。由于少了很多阻挡物,散热变得更加高效。并且轻了10磅:这让我们少购买了10磅,任何时候把它放入或从机架上卸下变的更轻松,最后到报废的那一天,也少回收了10磅。”

Facebook并不是独自设计自己的服务器。Google参与几年了。不同的是,Facebook会邀请你进入临时的实验室,参观他们是怎么做 的,还会把Michael设计的服务器提供给你,甚至包括Prineville数据中心的设计蓝图,有了它你就可以用把这些服务器串联起来工作了。

互联网巨头需要高效的硬件处理各种大量的业务。无论是金融机构、生物医药还是其它的商业机构,都遇到了同样的问题。Facebook希望帮助自己,也帮助他们。通过Michael以及其他Facebook的硬件智能团,可以将双方紧密携手。

在曾经的收发室内,Michael把服务器从机架上卸下。

最好的经验就是没有经验

在加入Facebook前,Michael在Google做了5年半多的硬件工程师。他调试过各种主板和电源,但从未设计过自己的服务器。这就是为 什么他适合为Facebook制造一台服务器的原因。“我的愿景并不是混乱的,”他说。“我研究了很多独立的部件,但我从未涉及整个系统。”

他开始摆弄Facebook数据中心中的各种服务器和设备,Facebook仅仅租赁空间和基础设施。他和其他工程师做了一些改进,但他们很快意识 到他们不能改变多少,除非从头设计数据中心和服务器。“我们不能改变一点数据中心,再改变一点服务器,”Michael说。“我们的确改进一些,但我们想 走的更长远。”

于是一名叫Jay Park的工程师发力研究数据中心,Michael专注服务器。但他们还在一起工作。设计的想法由两个人密切合作完成。

一般而言,数据中心在交流、直流电转换以及不同电压间转换会浪费很多电能。但一天晚上,Jay Park说,他梦见了一个新的数据中心不存在这些浪费。当他醒过来,手边并没有纸,就随手在餐巾纸上画出了他的构想图。

我们没有采用大量的分散的装置将电压降到208伏,而是直接将277伏电流供给服务器机房。“我们这么做的原因和供电公司在传输网络上采用高电压的 原因是一样的。”Michael说。“更高的电压,意味着更少的浪费,更高的效率。”而且,省去了那些庞大的不间断电源(UPS),从而减少了损耗。取而 代之的是,Park和其他工程师将直流电池放进旁边的机架上,并将其装进服务器。这意味着,后备电源的供电距离较短,而且不需要从直流电转换到交流电,再 从直流电转换到交流的长途跋涉。

但Park梦想中的数据中心还不能工作,除非你有能够适应这些变化的服务器。Michael对数据中心生态系统的贡献是将提供了两个而不是一个电源 接口。其中包含一个277伏特交流电源,和一个在旁边机架上的48伏特的直流电池。“电源装置十分智能,当交流供电失效时,将自动切换到电池供 电,”Michael说。“服务器甚至不知道电源供电消失了。”

但他并没有停下脚步。他设计了从服务器底架、风扇、主板等一切东西。Michael和他的团队并不是在现有的基础上修修补补,而且完全设计了一个新的机器。

一个Facebook的服务器部门的工作台。有时候会增加一倍大小。

哪里的世界是Amir Michael的?

以前从来没有做过一台服务器,你该怎么做呢?你阅读了大量描述供电装置的技术手册。于是,你找到了一个能真正制造电源的家伙。

当他开始设计服务器,他想到了Synnex,一家全能公司,在过去30年,深耕于全球的电脑硬件的购买和销售业务。Synnex总部位于美国加利福 尼亚州的佛瑞蒙,他与台湾、中国大陆以及其它地区的原始设备制造商(ODM)关系紧密。Michael要求公司指派他与各种各样的电源制造商、主板制造商 联系。

“我们也很愉快,”Synnex高级副总裁、总经理Steve Ichinaga表示。Steve Ichinaga与Michael紧密合作。毕竟这是在Facebook。最终,Facebook成为了Synnex的客户。在服务器运往 Prineville的数据中心前,Synnex负责对其进行测试。

通过Synnex和其它渠道,Michael与许多设备制造商取得联系,至少3家同意帮助制造服务器:广达,一位于台湾的主板和电脑制造商;台达, 另一家台湾制造商,专攻电源装置;宝威,另一家总部在美国的电源制造商。宝威拒绝接收采访,台达和广达没有对采访要求做出回应。但据Michael透露, 三家公司不仅为Facebook服务,而且他们之间彼此还有合作。

“我们选择的伙伴非常开放,沟通很顺利,并给我们分享了很多经验,帮助我们更好的优化,”Michael说。“我们与主板供应商分享了我们的供电设计,并邀请他们一起工作。因此,我们紧密的合作。每个人都能看到全局,这让所有的工程师更有效率。让我们有同样的思考方向。”

别的服务器设计师并不这样工作,他补充道,显然在暗指Google。“其它公司将这些事情分离开来,要花很多精力来进行沟通和理解。工程师不可能集中精力设计好的服务器。许多很小的细节,人们也不得不亲自描述。”

Facebook也与Intel和AMD合作,他们的CPU用于制造服务器。Intel数据中心群组高密度计算业务总经理 Jason Waxman拒绝透露合作的细节,但他表示Intel与Facebook在设计服务器项目上工作“非常和谐”。

通过与这些伙伴合作,Michael的目标是制造一个“无浪费”(vanity-free)的服务器,不含有任何一个Facebook不需要的组 件。“我们不需要花精力去照看服务器,”他说。“没有喷漆,前面板上没有按键,没有logo或徽章。”但是,这朴实的设计只是我们努力的一部分,这帮助我 们减少制冷的成本。

最终,他们被固定在底架上,由于比一般的服务器高,所以可以容纳更大的风扇和散热器。大风扇提供更高效的气流。由于采用更大的散热器,不需要那么多流动的空气。散热器有更大的表面积,帮助CPU散热的效率更高。

同时,Michael的团队从新设计了主板上的芯片位置来增大气流。“这个主意产生了一些列连锁反应,”冷空气吹向发热的设备。设备彼此间不会“遮挡”。更多的冷空气直接吹向需要冷却的设备。通过调整电路设计,我们提升了散热设计。”

Michael从2010年1月开始设计,第一台原型机在夏天到达他的临时实验室。

Facebook风洞,测试服务器散热。

批萨、啤酒、薯片和主板

批萨和啤酒运到这里已经几周了。在Santa Clara的数据中心,Michael组建了“build聚会。”批萨和啤酒用来招待来自Facebook和其它地方的服务器技术员,技术员被分好区,并 在Michael的原型机上工作,他的团队在一边观看。技术员会把他们放在一起,然后再分开。“这很有趣,令人兴奋,并从中学到很多经验,”Steve Ichinaga说,“这是个好办法,让所有的人都知道每件东西是怎么工作的。”

包括Amir Michael和他的工程师在内,工程师们通过众所周知的方法来测试原型机的极端状态。他们安装了热量测试间,并对服务器极端加热和冷却。有时,他们会让 服务器迅速加热或冷却,会产生严重的凝结,生成一大块冰。在第三个房间,他们建立的风道,用来测试服务器散热。在风道边旁,一台示波器用于追踪通过主板的 信号。

Facebook的热量测试间,也称服务器烤箱。

经过3轮原型机、5个月反复测试,他们确定了最终设计方案。12月,整整7个机架的服务器运送到Oregon Prineville的数据中心,Michael和几个工程师也来到这里,不过他们并没有做什么。“我们启动了机架上的服务器,一切都开始工作。没有 bug。婴儿的死亡率——服务器在运输过程中的损坏率非常低,比我们用过的那些服务器要低。”他说。“事实上,那是非常无聊的一天。服务器运来。我们调 试。然后我们鼓掌。我们没有其它事可做。”对于过去的5个月测试,这是一份遗书,他说。

他在那里多待了一天防止出任何差错。但什么都没发生。于是他就回家了。

生命的2.0

请拿走我的服务器

Michael说,一个工程师喜欢在Facebook工作的原因就是,我们经常讨论谁不愿意在Facebook工作。与数据中心和服务器一起工作,公司给予了极端的企业文化。 去年四月,在Michael启动那些服务器后3个月后,公司发布了他的设计方案,这成为 了Open Compute Project的一部分。任何人都可以获得它。

任何人都能对其更新。Open Compute Project 1.0发布一年后,Michael和他的团队将要发布2.0版。Synnex建立了新的组织——Hyve,提供开放服务器和其它定制机,一些设备已经在订单系统中,其中包括1、2个互联网大佬级企业的名字。

为了分享设计,Facebook希望降低设备的价格,也鼓励其它组织帮助提高设计。公司清楚这些对大家协作制造服务器有所帮助。

为了制造Facebook的服务器,Michael同宝威的工程师奋斗在意大利,与台达的工程师在德国工作,其它工程师则前往台湾。为了2.0版, 他联合了第二家台湾主板制造商纬创。在圣诞假期到来前,我们站在他的服务器实验室中谈论,一名叫Peter Ha的Facebook工程师,以及两名来自其它公司叫不上名字的朋友,一起仔细检查新设计的细节。尽管Michael正走向Facebook的新总部的 实验室,这里曾是Sun Microsystems在California Menlo Park的老校区。

他们并不常说英语。碰巧的是,在与Michael结束谈话前我问道,你和你的团队如何应对语言障碍。“我们工程师中的许多人都熟练的说普通话(Mandarin。Facebook中有许多华人工程师?),”他说。“如果沟通中出现困难,谈话语言会变成普通话。”

和其他自称Facebook黑客的同事一样, Amir Michael和他的团队知道如何解决手头的问题,并且与来自世界各地的伙伴良好合作。

文/CSDN

分享:
最近更新
©2011-2014 云时代_YunSD.Net THEMES DESIGN YUNSD.NET 苏ICP备14002919号-1