導(dǎo)語:針對Facebook的開源技術(shù)開發(fā),科技博客Venturebeat近日專門訪問了Facebook開源項目主管大衛(wèi)-瑞科多(David Recordon)和阿米爾-米迦勒(Amir Michael)以下為文章正文。
今年4月份,F(xiàn)acebook發(fā)布Open Compute Project,意在加速數(shù)據(jù)中心和服務(wù)器創(chuàng)新。但是,實施一個開源項目不只是發(fā)布數(shù)據(jù)那么簡單。Facebook還需要獲得其他社區(qū)成員的支持。除此之外,F(xiàn)acebook開源硬件團隊還要更為嚴(yán)峻的挑戰(zhàn)。
Open Compute的始端
米迦勒此前曾效力于Google公司,他告訴VentureBeat,當(dāng)他第一次來到Facebook時,“我對服務(wù)器和數(shù)據(jù)中心非常了解”。他不僅了解服務(wù)器網(wǎng)絡(luò)架構(gòu),甚至可以作為數(shù)據(jù)中心維護人員親自動手。在數(shù)據(jù)中心里,他經(jīng)常參與服務(wù)器維護工作。
米迦勒表示,初到Facebook時,F(xiàn)acebook的業(yè)務(wù)范圍非常大。我們向惠普和戴爾購置服務(wù)器,然后將服務(wù)器托管在Data Realty Trust。
但米迦勒暗示,十年間多數(shù)大型公司都無法以最智能、最有效的方式處理自己的數(shù)據(jù)。他表示:“我做過一些分析。我登陸過電子商務(wù)網(wǎng)站NewEgg.com,發(fā)現(xiàn)拼裝起來的服務(wù)器價格與整臺服務(wù)器是一樣的??梢?,商業(yè)模式并未發(fā)生作用。”
米迦勒意識到,F(xiàn)acebook不能盲目增加服務(wù)器的數(shù)量,而應(yīng)該關(guān)注服務(wù)器的性能。他表示:“我意識到我們做了很多的無用功。我們開始思考如何改進我們的做法。通過優(yōu)化數(shù)據(jù)中心和淡化服務(wù)器,你能取得一些效果。通過優(yōu)化服務(wù)器和淡化數(shù)據(jù)中心,你也能取得一些效果。兩者同時優(yōu)化方可獲得最大的利益。”
簡而言之,這就是Open Compute Project項目誕生的原因。
最初,米迦勒和Facebook團隊試圖與硬件供應(yīng)商合作。米迦勒表示:“供應(yīng)商對我們的想法反應(yīng)冷淡。他們計劃做另外一些事情,但這些事對我們而言沒有用處。他們想讓我們購買其他客戶使用的機器,但這些機器并不能滿足我們的要求。”
重新設(shè)計服務(wù)器
從那時開始,F(xiàn)acebook硬件設(shè)計主管米迦勒便開始構(gòu)思新一代服務(wù)器的設(shè)計。
“我們注意到事物總是按照原有的方式發(fā)展,這就是因循守舊。挑戰(zhàn)舊觀念,一切從零開始,這就是該項目的創(chuàng)新所在,”米迦勒表示。
例如,在Facebook新服務(wù)器中,電源傳輸?shù)轿⑻幚砥鞯姆绞骄屯耆煌?。Facebook硬件團隊改變了服務(wù)器的布局和電源供應(yīng)方式,甚至連電源線和電源插頭都被重新設(shè)計,而且服務(wù)器的組裝和維護無需任何工具。
實際上,新式服務(wù)器的耐用性是Facebook硬件團隊的最大創(chuàng)新之一。米迦勒表示:“當(dāng)你擁有數(shù)萬臺服務(wù)器時,每小時都會出現(xiàn)宕機問題,例如硬盤損壞,內(nèi)存損毀等。我們的數(shù)據(jù)中心技術(shù)人員負(fù)責(zé)維護服務(wù)器。有時,他們會用上一整天的時間安裝服務(wù)器配件。我們希望讓他們的工作盡可能地輕松,并且更有效率。無需任何工具我們便可組裝服務(wù)器,多數(shù)組件的組裝速度是一般服務(wù)器組件的2至10倍。”
為了設(shè)計新服務(wù)器,F(xiàn)acebook每周六晚上會舉行一次原型搭建聚會。
米迦勒表示:“我們讓一些工程師組裝服務(wù)器,我們則在一旁吃皮薩喝啤酒,比賽的目的就是看誰能以最快的速度組裝一臺服務(wù)器。數(shù)據(jù)中心的技術(shù)人員在8分鐘內(nèi)便可完成。”
革新的困境
當(dāng)米迦勒完成新服務(wù)器的基本模型時,最初他并沒有得到人們的認(rèn)可。米迦勒表示,F(xiàn)acebook工程師們“滿腹狐疑地”與這種服務(wù)器打交道,甚至連供應(yīng)商也對它表示了“懷疑”。
米迦勒表示:“墨守成規(guī)和讓人們接受新架構(gòu)是我們遇到的最大挑戰(zhàn)。讓人們嘗試一些新東西很難。”
對于硬件變革而言,情況尤為嚴(yán)重。相較之下,軟件變革廉價且簡單。米迦勒表示:“組織一項硬件開發(fā),你需要一間實驗室,新員工,以及設(shè)計原型。相關(guān)投資高達數(shù)百萬美元。值得贊揚的是,F(xiàn)acebook管理層選擇了這個邊緣項目,這證明了Facebook有能力冒大風(fēng)險,并鼓勵創(chuàng)新。”
為了尋找新的硬件制造商,F(xiàn)acebook團隊成員一次又一次地往返在美國與臺灣之間。在招募一名機械工程師的同時,F(xiàn)acebook還起草了一份50多頁的新服務(wù)器設(shè)計說明書。
米迦勒表示:“在白紙上設(shè)計是一回事,而設(shè)計細(xì)節(jié)更需要慎重。我們要定制所有的組件,并且要重新設(shè)計服務(wù)器,這些尤其應(yīng)當(dāng)謹(jǐn)慎。”
硬件開源
最終,F(xiàn)acebook團隊還是選擇讓Open Compute Project開源,以此接受硬件開發(fā)者社區(qū)的貢獻。
米迦勒表示:“很多工具尚未到位。如果有人想改變我們的電路板,他需要花費數(shù)十萬美元來獲得開發(fā)包。開發(fā)者一般無法負(fù)擔(dān)得起。目前,多數(shù)貢獻者都來自大公司。未來,我們有望進行改進,車庫中的開發(fā)者也可以參與設(shè)計。”
借助合適的軟件,普通開發(fā)者的創(chuàng)新設(shè)計不會遜于惠普或戴爾實驗室的成果。目前,設(shè)計軟件的價格也相當(dāng)昂貴。不過,既然這是一種看不見摸不著的代碼,它沒有理由不免費。
Facebook希望與軟件開發(fā)商合作,向Open Compute Project貢獻者提供免費軟件授權(quán)。Facebook也在考慮與其他公司和組織(如政府和大學(xué))合作開發(fā)開源硬件設(shè)計軟件。
新服務(wù)器原型開發(fā)還包括另一項高昂的成本。傳統(tǒng)原型服務(wù)器的組建成本是量產(chǎn)服務(wù)器成本的5到10倍,因此普通開發(fā)者還是需要獲得資金上的支持。
Facebook的開源哲學(xué)
Venturebeat問米迦勒,身在一家專有軟件公司,踐行開源項目是否有思想上的顧慮。米迦勒表示:“與項目中的其他人員一樣,我與Facebook軟件開發(fā)部門是分開的。這不是我每天所顧慮的問題。”
但米迦勒認(rèn)為:“如果一家公司能夠保持盈利,那么公司自然會選擇在某些方面進行創(chuàng)新。Facebook需要與社區(qū)用戶分享信息,激勵他們進行開發(fā)。鑒于我們的商業(yè)模式,它就是向用戶提供一種有價值的服務(wù)。我們使用的基礎(chǔ)實施不是商業(yè)模式的核心部分。我們的優(yōu)勢是產(chǎn)品,不是服務(wù)器。”
米迦勒也認(rèn)為:“工程師也是社會人,他們愿意討論他們所從事的領(lǐng)域。當(dāng)你分享信息,你就獲得利益。你從其他人那獲得反饋信息,即事半功倍,又節(jié)約成本。”
米迦勒稱:“細(xì)究Facebook的相關(guān)開發(fā),你會發(fā)現(xiàn)Facebook使用很多開源軟件。我們?yōu)檐浖澜缲暙I了很多,但我們沒有為硬件世界貢獻什么。這也沒有先例。但如果我們這樣做,可能其他公司也會如此。他們無需浪費精力,他們也無需重復(fù)我們的開發(fā)過程。”
就與大學(xué)分享信息一事,米迦勒表示:“他們擁有有趣的方案,但他們沒有足夠的有關(guān)現(xiàn)實問題的數(shù)據(jù)。他們不了解產(chǎn)業(yè)經(jīng)營。因此,與他們分享信息很有意義。”
米迦勒表示:“接著是環(huán)境影響問題。如果我們分享這些最佳的實踐信息,我們希望其他人能接受它,并也能對行業(yè)環(huán)境產(chǎn)生影響。”