精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當前位置:數據中心企業動態 → 正文

Facebook數據中心實踐分析,OCP主要工作成果介紹

責任編輯:editor005 作者:張廣斌 |來源:企業網D1Net  2015-03-12 14:37:37 本文摘自:大數網

保密本就是數據中心行業的慣例。2014年11月,我獨自去拉斯維加斯(Las Vegas)南部參觀SuperNAP數據中心。下車后,幾次試圖用手機拍建筑外景,迅速被開著悍馬巡邏的警衛阻止。進門等候預約時段,雖說在美國警衛持槍是再平常不過的事,但警衛室里那幾位嚴陣以待、隨時準備應付劫匪的架勢,仍令我印象深刻。參觀數據中心內部不允許拍照是行規,不過之前我參觀數據中心都有專人陪同,還沒享受過這么戒備森嚴的待遇。

圖注:SuperNAP 7數據中心的接待室,我在這里等了20多分鐘,得以觀察小窗子里面的警衛室。圖片來自SuperNAP官網,下同

這與托管數據中心的性質不無關系,必須為租戶保密。自為客戶的Google則將基礎設施視為核心競爭力之一,這從該公司對基礎設施一貫的重視程度也能感受到。因此,Google長期對其數據中心和定制硬件設計秘而不宣,員工入職時要簽署保密協議,離開Google一兩年內也不能透露。

  圖注:夜幕下的SuperNAP 7數據中心,典型的美式大平層結構

但是,那些Google自己公開的數據中心內外景照片,又是怎么回事?

2009年3月,Facebook從Google挖來工作近6年(更早在思科做過實習生)的硬件工程師Amir Michael,主管硬件設計。2010年4月1日,Facebook宣布任命Ken Patchett主管其位于俄勒岡(Oregon)州Prineville的第一個自建數據中心。Ken Patchett的職業生涯從康柏(Compaq)起步,在微軟積累了近6年的數據中心和網絡運營經驗。到Google后指導過位于俄勒岡州Dalles的數據中心,去Facebook之前又在亞洲工作了一年多,管理Google自有和托管的數據中心。轉了一圈,又回到俄勒岡州。

  圖注:SuperNAP數據中心的警衛室

從服務器設計到數據中心運營,Facebook堅持挖Google墻角,后者又不好打官司——這意味著要公開更多細節。更絕的還在后面:2011年4月,乘Prineville數據中心投產之東風,Facebook宣布發起開放計算項目(Open Compute Project,OCP),開源了其包括數據中心、定制服務器在內的一系列硬件設計。

三年兩大招,先挖人,再開放,Facebook在數據中心規模比Google差一個量級的條件下,經常被與前三大(還有微軟和亞馬遜)相提并論,OCP居功至偉,甚至連“百萬富嗡”(指服務器風扇的噪音,非貶義)微軟都來入伙。

Facebook將數據中心宣傳的公關戰提高到一個嶄新的水平。Google在2012年10月對外公開了一些數據中心技術的情況,包括請記者參觀,和網站上近百張高清晰度的照片。但是,對于IT設備(服務器和網絡)及相關技術,Google依然諱莫如深,至多提及其已廢棄的服務器。Urs參與的前后兩版書里,也是以宏觀理念和數據中心層面的建設原則為主。

圖注:Google位于俄勒岡州Dalles的數據中心依山傍水(哥倫比亞河),團隊成員可以享受漂流、風力沖浪、釣魚和徒步的樂趣。注意看左上角的山腰處(來源:Google官網)

有趣的是,James Hamilton還對Google公開的這些信息分析點評了一番。曾被認為在技術中心實力和保密程度上與Google一時瑜亮的AWS,如今似乎是最神秘的了。

總體而言,Google透露的是久遠的歷史和近期的狀況,中間的壯大過程中傳世不多,Facebook的發展史或許可資借鑒。

[page]

從一臺服務器到多個數據中心

2004年2月,Mark Zuckerberg(馬克·扎克伯格)在哈佛大學宿舍內將Facebook上線,當時只有一臺服務器。僅僅五年之后,這個世界最大的社交網站已擁有超過3億活躍用戶,每天處理3.9萬億feed,超過10億聊天信息,1億搜索請求,每月超過2000億PV……

在只有一小撮人使用,少量照片、沒有視頻的草創時期,全部服務運行在一臺服務器上還是沒問題的。2009年時的Facebook網站顯然是另一個樣子:載入用戶主頁這么一個看似簡單的動作,就需要在不到一秒鐘的時間里訪問數以百計的服務器,處理上萬片分散在各處的數據并提交所需的信息。

服務器的增長速度不難想象,有跡象表明,Facebook的服務器數量:

2008年4月約1萬臺;

2009年約3萬臺;

2010年6月至少6萬臺……

即使放在今天,這個數量也可以排在Tier 2互聯網客戶的前列(以10萬臺為界,超過即為Tier 1,Facebook是十幾家之一),能效就是必須要考慮的問題了。以每臺服務器200W的保守計算,年耗電量已經超過1億度。如果數據中心PUE(Power Usage Effectiveness,電源使用效率)能從1.5降到1.1,每年即可節省4200萬度電。

直到2009年,Facebook仍然依靠租用的數據中心空間,沒有自建的數據中心。租用數據中心空間(自己部署服務器、網絡等IT設施)的優點是交付速度較快,可以在5個月內搞定;建設一個數據中心則需要大約一年的時間和更多的前期投資,但是在供電和散熱等方面可以根據自身需求定制,對超大規模用戶更劃算,Google、、微軟和亞馬遜早就自建數據中心了。

  圖注:Prineville的兩座數據中心建筑(來源:Facebook官網,2014年)

2010年1月,Facebook宣布在俄勒岡州的Prineville建設屬于自己的第一個數據中心,規劃面積約1.4萬平米,目標PUE為1.15。同年7月,社交巨頭決定將Prineville數據中心的規模倍增至約3萬平米。2010年12月完工,得益于100%使用外部空氣冷卻、無需空調的一系列高能效設計,PUE可低至1.073。與1.51的“業界平均值”相比,節能幅度還略好于我們剛才的假設。

圖注:2013年8月底,夕陽下的Altoona數據中心建設工地,占地約194英畝。到2013年11月中旬,每天有超過200人工作,累計工時近10萬小時(來源:Facebook官網)

從自建數據中心嘗到甜頭的Facebook再接再厲,先后在北卡羅來納州(North Carolina)的Forest City(2010年11月宣布)、瑞典的Lule(2011年10月宣布)和衣阿華(Iowa)州的Altoona(2013年4月宣布)建設數據中心。每個數據中心建成后都有擴建,像Prineville和Forest City還各增加了一個用于冷存儲的數據中心(建筑),Lule和Altoona的二期工程也在2014年啟動。

OCP緣起:青出于藍以勝藍?

沒有開源就沒有今天的互聯網行業,但這主要是從軟件的角度來說。Google在軟件開源方面還是做了不少工作,著名的Hadoop便可以視為Google無意間“開源”了思路的結果。就在2015年2月,Google宣布將其2014年6月收購獲得的MapReduce for C(MR4C)開源,這是用C++開發的MapReduce框架,此舉讓用戶可以在自己的Hadoop環境中運行原生的C及C++代碼,是Hadoop社區的福音。

支撐互聯網基礎設施的是開放硬件技術,這與開源不太一樣。英特爾通過開放硬件技術營造的生態環境,擊敗了IBM及其他RISC廠商(ARM另當別論),但至少在OCP出現之前,無法想象戴爾和惠普會公開其服務器的詳細設計材料。而且,“開源+開放”也不意味著結果一定是透明的,Google就在開源軟件和開放硬件技術的基礎上打造了專有的數據中心。

應該說,扎克伯格很早就意識到,Facebook與Google必有一戰,而且這一天遠比國人聽著耳熟的某同樣句式表達來得快。Google在整個Web上開展廣告業務,Facebook在自己的社交網絡里開展廣告業務,就像騰訊不讓百度搜索進入微信一樣,Facebook也要發展自己的搜索引擎。2013年Facebook上線了Graph Search,2014年12月初又更新為Facebook Search,隨即在Facebook的搜索中去掉來自微軟Bing的Web搜索結果。

很重要的一個區別是,騰訊并不比百度小,而Facebook自身尚不能與Google抗衡。從服務器到數據中心,Google起步早,規模大,自成體系。為了迅速縮小基礎設施領域與Google的差距,Facebook想出了通過開源壯大生態系統的妙招,即成立開放計算項目(OCP)。

圖注:開放計算項目(Open Compute Project)的Logo,左側是用服務器主板拼成的“f”(來源:張廣彬,2013年)

作為一個開源的硬件項目,OCP不僅是公布Facebook“白手起家”定制數據中心和服務器的細節,直到機架和主板的CAD圖紙,更邀請開源社區及其他合作伙伴使用并改進。也就是分成兩個步驟:先放出規范和機械圖紙,再與社區共同改進它們。

如果我們考慮Facebook和Google身上類似硬件廠商的成分,可以看到,即便是生態系統的核心廠商如英特爾,也很難有如此社區化的思維。沒錯,上一個這樣做的是Google,為了對抗蘋果iOS而開源Android,成功的建設起巨大的生態系統,以群狼圍攻猛虎。

在這個資金和人才密集型行業,開源是爭奪人才的好辦法,還具有顯著的廣告效應。有更多的客戶使用基于OCP規范的硬件,也可以增大采購量,幫助Facebook降低成本,起到類似團購的效果。

當時OpenStack剛剛興起,OCP也采用了一些類似的做法,譬如上下半年各一次峰會(Summit),并在2011年10月27日召開的第二屆OCP Summit上,宣布成立OCP基金會(Open Compute Project Foundation)。不過,硬件設計的周期較長,于是,從2012年開始改為每年一次,2015年3月9至11日召開了第六屆峰會。

  圖注:Facebook的基礎架構部門(來源:張廣彬,2013年)

在2014年1月底召開的第五屆OCP峰會上,Mark Zuckerberg和Facebook工程副總裁Jay Parikh宣布,OCP成立三年來,開源硬件方案幫助Facebook節約了12億美元。

此時,OCP的成員總數已接近200家(不乏2014年加入的微軟、VMware等重量級傳統企業廠商),以廣達(Quanta)為代表的7家解決方案提供商,大量經過驗證的設計,Facebook和Rackspace的采用……接下來,就從董事會和典型項目兩個方面,大致介紹一下OCP這個開源硬件組織的組織架構及主要成果。

[page]

董事會:經驗的傳承

成立基金會,而不是在Facebook一家控制之下,對OCP發展的重要性不言而喻。OCP基金會在董事會的管理下運作,最初有5位董事,分別來自5家公司。

Frank Frankovsky代表Facebook,擔任OCP基金會主席兼總裁。2009年10月加入Facebook,先后擔任硬件設計與供應鏈運營總監和副總裁。此前,在戴爾負責服務器定制業務的數據中心解決方案(Data Center Solutions,DCS)部門擔任總監近四年,上世紀90年代曾任康柏(Compaq)計算機公司的產品經理。

圖注:Facebook硬件實驗室一角。在硬件實驗室里,這已經算相當整潔的了(來源:張廣彬,2013年)

Mark Roenigk是Rackspace Hosting的COO,在微軟工作過9年,大部分時間負責OEM和供應鏈運營,此前7年是康柏的工程師。Rackspace是著名的服務器托管商,有豐富的數據中心建設、運營和硬件經驗,還與NASA共同催生了OpenStack——是惟一在一軟一硬這兩大開源組織中都有肇始之功的公司。

Jason Waxman現任英特爾(Intel)數據中心事業部高密度計算業務總經理,主要負責的領域包括互聯網數據中心、刀片服務器以及與未來密集型數據中心架構相關的技術。他還負責領導英特爾在云計算方面的工作,并在Blade.org和服務器系統架構組織(Server System Infrastructure Forum,SSI Forum)的董事會兼任管理職位。此前曾擔任負責英特爾至強(Xeon)處理器、相關芯片組和平臺產品及其客戶關系的總監。

圖注:Facebook在硅谷的園區以前屬于Sun——一家值得緬懷的偉大公司,順道緬懷拍下這張照片的手機(來源:張廣彬,2013年)

Andy Bechtolshiem來自Arista Networks,更響亮的名頭是“Sun Microsystems共同創辦人”。Andy Bechtolshiem擔任過Sun的首席系統架構師,第一個投資Google,還擔任閃存初創企業DSSD的董事長——后者2014年5月被EMC高調收購。

除高盛(Goldman Sachs)的Don Duet職業生涯主要履歷為CIO之外,以上四人均有深厚的硬件行業背景,從產品、技術到供應鏈都有涉獵,見多識廣,經驗豐富,對把控開源硬件項目的發展方向至關重要。

正如前面所說,OCP下轄的項目很多,從服務器到數據中心,還包括機架(Rack)、存儲、網絡、硬件管理,并于2014年啟動了HPC(High Performance Computing,高性能計算)項目。

服務器:始于Google,終成一派

Facebook開始定制硬件不算早,前期的服務器也來自OEM。Facebook基礎設施工程負責人Jay Parikh在2012年10月中旬的GigaOm Structure歐洲會議上表示,在瑞典Lule的數據中心將是Facebook首次完全沒有采用OEM服務器硬件。

圖注:Facebook的數據中心集群(2014年公開資料),前端(FE)集群包括大量的Web服務器和一些廣告服務器、相對少量的Multifeed服務器;服務集群(SVC)包括搜索、圖片、消息等服務器,后端(BE)集群主要是數據庫服務器。這一配置規模有可能隨著后面提及“6-pack”核心交換機的應用而改變。

這顯然與本章一開始提到的Amir Michael有直接關系,他比Frank Frankovsky還早半年加入Facebook,也是OCP的共同創辦人之一,2013年1月起擔任OCP孵化委員會(Incubation Committee,IC)副主席,4月出任Coolan CEO——該公司與Facebook及OCP頗有淵源,Amir Michael又是共同創辦人。

圖注:區域數據中心之間的基礎設施冗余。FE(前端集群)、SVC(服務集群)、BE(后端集群)組成一個整體,與另一個區域的數據中心互為冗余(來源:Facebook)

[page]

超越往往從學習和模仿開始,雖然牛頓所謂“站在巨人的肩上”并非此意。OCP成立時,Facebook數據中心團隊貢獻的第一代OCP服務器,很大程度借鑒了Google的設計,最明顯的標志就是1.5U(66mm)的服務器機箱。這樣做的好處是可以使用直徑更大的60mm低轉速風扇,與1U服務器的40mm風扇相比,節能效果顯著。450W供電模塊(PSU)支持277V交流和48V直流輸入,前者比208V減少不必要的電壓轉換,后者由備份電池提供短時電力供應,都是為了盡可能的避免能源損耗。散熱與供電雙管齊下,控制電費(省OPEX)。

  圖注:Prinevill數據中心的供電轉換環節與損耗狀況對比(來源:Facebook)

另一點是去掉(前)面板和BMC,沒有VGA接口,以貫徹Facebook的“Vanity-free”(無浪費)精神。目標是盡可能降低購置成本(省CAPEX),盡管做工看起來有點糙。正如Jay Parikh所言,OCP服務器比標準服務器少很多功能,也盡可能需要更少的部件。

  圖注:48伏電池柜的輸電路徑(來源:Facebook)

OCP V1服務器有AMD(12核Opteron 6100)和Intel(6核Xeon 5600)兩種雙路方案,主板尺寸為13×13英寸,由廣達(Quanta)制造。機箱寬度(480mm,略小于19英寸)和高度單位(Rack U,即RU,1RU為1.75英寸,即44.45mm)都遵守工業標準的“老規矩”,后端有3個硬盤托架,與主板均為免工具拆裝。

圖注:OCP服務器V1(左)和V2(右)采用同樣的1.5U機箱,4個60mm風扇位于主板后方,右側的硬盤托架由供電模塊提供冷卻氣流。V2的改進包括:硬盤前置便于維護;2個主板提升計算密度,但犧牲了可能的硬盤數量;CPU性能提升(來源:Facebook)

2012年5月初在圣安東尼奧召開的第三屆OCP峰會之前,AMD和Intel貢獻了第二代OCP主板的設計,得益于至強(Xeon)E5-2600,Intel開始占據壓倒性的優勢。代號“Windmill”的Intel OCP v2.0主板采用雙路Intel Xeon E5-2600,外形長而窄(6.5×20英寸,約165×508mm)。OCP V2服務器仍為1.5U規格,但主板寬度只有第一代的一半,因而能容納兩個計算節點,在同樣的機箱內將密度翻番。

為了支持兩個主板,V2服務器的供電模塊提升為700W,并與硬盤互換位置,這樣從前面可以直接維護硬盤。

經過兩代服務器的摸索,相繼暴露出一些問題:

供電模塊的冗余度差。相比于工業標準服務器的1+1冗余電源,這兩代服務器只有一個供電模塊。OCP V1服務器尚可用“牲口模式”來解釋(關鍵組件出問題即替換整個服務器),OCP V2服務器的供電模塊故障會導致兩個計算節點失效,有點矯“枉”過正。為此Facebook還設計了高可用(High Availability,HA)服務器的方案,即增加一個PSU,替換下來一個主板,等于把計算密度又降回去了。

可以用前一章所述把PSU集中到機架層面的方案(此時中國的天蝎整機柜已經這么做了),但是以19英寸機箱的寬度,拿走PSU剩下的空間,又不足以放下第三個主板(6.5×3=19.5英寸)。

計算與存儲沒有解耦合。這在OCP V1服務器中尤為明顯,3個驅動器托架可以放6個硬盤,計算節點只用一個啟動盤的話,為保留不夠用的靈活性而造成大量的空間浪費;OCP V2還好,因為增加的主板擠占了2個驅動器托架的位置。

60mm風扇還不夠大。

不同程度的保留了USB接口,卻沒有BMC(Baseboard Management Controller,基板管理控制器)。哪個對管理更有價值,不言而喻。

除了最后一點,其他幾點都需要機箱、乃至機架設計的改變。

Open Rack:重新定義數據中心機架

Facebook最初采用19英寸三聯柜設計,名為Freedom Triplet,寬度為1713mm,比三個并排的EIA 310-D機架(600mm×3)略窄。外側的兩個機架(機柜,Rack)上各有一個架頂式(Top of Rack,ToR)交換機,每一列30個Open Compute服務器,共90個。一組三聯柜裝滿90個服務器后總重2600磅(約1179公斤),兩組三聯柜共享一個備份電池柜。

圖注:配合前兩代服務器的Freedom三聯柜,因并聯而略省材料且更穩固,高度也略高于常見19英寸機架,可容納30個1.5U服務器(45U)以及交換機(來源:OCP規范)

Facebook很快認識到,形成于1950年代的EIA 310-D標準不能滿足他們的要求。EIA 310-D標準化了機架內軌之間的寬度(19英寸),但把高度、深度、安裝和布線方案以及連接器的規范留給制造商去定義。Facebook認為,這導致服務器和機架設計不必要的分化,把客戶鎖定于特定的供應商及其實現。

圖注:一個直流UPS電池柜支持兩組三聯柜共180臺服務器的全系統(來源:Facebook,2010年)

[page]

更關鍵的問題在于,傳統的19英寸機架,考慮到側邊和滑軌,留給IT設備(服務器、存儲)的可用寬度只有17.5英寸,不能并排放置3個(6.5英寸寬)主板或5個3.5英寸硬盤。嫌窄者早已有之,如IBM大機和EMC的高端存儲,都有寬度在60cm以上的機架,譬如EMC Symmetrix VMAX,系統和存儲機架寬度均超過75cm(30.2英寸,合76.7cm),為的也是容納更大的服務器(存儲控制器)或更多的硬盤。

不過,一則拓展外寬未必提高效率,二則大機和高端存儲從量上來說,還是小眾產品,很少有人幾千個機架的買。Facebook的辦法是保持外寬600mm(近24英寸)不變,把內部橫向間距從483mm擴大到538mm(21英寸),提高55mm(約2.2英寸),取消占地費錢的滑軌,空間利用率從73%(17.5英寸時)躍升為87.5%,可謂創舉。

圖注:Open Rack俯視圖(下前上后),可以看清內寬擴大,前端維護&后端供電等要素(來源:OCP規范)

既然重要的內寬已經改變,索性把每個Unit也重新定義,高度從傳統Rack U(RU)的44.5mm,略微放大至48mm,名為OpenU,簡稱OU,機架也起名為Open Rack(開放機架)。為與之前的設備兼容,保留0.5 OU為最小單位,不過后來似乎沒有推出過非整數OU的產品。

然后是整合供電模塊,分為3個供電區(Power Zone),每個供電區有3 OU供電框安置7個700W的PSU(來自OCP V2服務器),N+1配置,共4.2kW,整個機架的供電能力達12.6kW。每機架兩個PDU,200-277V交流在左后方,48V直流在右后方。服務器從機架正后方等距分布的3根銅排(Bus bar,母線)上取電,PSU輸出電壓12.5V,正好滿足服務器對12V輸入的要求。

Open Rack v0.5版規范于2011年12月15日釋出,在第三屆OCP峰會上隆重介紹。該版本建議每個供電區為15 OU,12 OU用于IT設備;然后再留2 OU放置ToR交換機,總高度至少47 OU(不低于2300mm,似可見之前Triplet縱向空間分配思路的遺存)。2012年9月18日,Open Rack 1.0規范公布,主要明確了以下幾點:

專注于單列機架設計(非三聯柜);

入口(inlet)溫度提高到35攝氏度,反映其他Open Compute設計和真實數據中心的溫度;

交換機布置更靈活,不僅限于供電區的頂端;

計算設備(服務器/存儲)機箱為1-10 OpenU高,支持L形支架直接承載。L形支架明顯比傳統服務器的測滑軌節省空間和成本,免工具安裝,可以0.5 OpenU(24mm)為增量固定;

最大高度取決于供電區,但建議不要超過2100mm,以保持穩定。常見的做法是每個供電區13 OU,IT設備10 OU,再加2 OU交換機,共41 OU;

新設計的簧片(clip),使機箱電源連接器易與銅排配合。

圖注:Open Rack V1前視圖和側視圖(左前右后),可以看到縱向空間的分配(來源:OCP規范)

綜合起來,Open Rack的特點主要是:

拓展空間。 開創性的提高了內部利用率,特別是留給IT設備的寬度大為增加,單位高度也略有提升,同時盡可能的保持了與原有機架標準的兼容性(外寬一致,高度接近);

集中供電。 提供機架范圍內的共享與冗余,服務器等IT設備直接插拔取電,免去上架時的手動連線工作;

前端維護。 后端用于供電和散熱,維護人員在冷通道一側即可完成日常工作,不用進入熱通道。兩邊跑不僅增加了工作量,在后端識別設備困難,容易導致誤操作。

當然副作用也是有的,即兩側起支撐作用的部分變薄,同時內部IT設備可能的重量還會增加(Open Rack V1.1規范已達950千克,接近本節開頭提到的三聯柜),對機架強度提出挑戰。在整機柜交付等運輸途中尤其如此,早期的Open Rack要在后端加斜梁輔助,防止變形。

不過,在目前的Open Rack V2規范里,基本機架配置在動態環境下支持500千克的IT設備,通過增加緊固螺栓等手段,重載機架配置(Heavy Rack Config)可以支持1400千克的IT設備——作為對比,James Hamilton在re:Invent 2014大會上透露,AWS的存儲優化機架可容納864個(3.5英寸)硬盤,重達2350英鎊(約1066千克)——要怎么裝出這個密度來,也是門學問。

還是類似三聯柜的方式穩固(來源:OCP Engineering Workshop)

圖注:Open Rack V2還有重組供電布局、去掉單獨電池柜等重要改進,將在后面的章節介紹。

[page]

Open Vault:存儲從服務器分離

得益于Open Rack,第四屆OCP峰會上亮相的第三代OCP服務器(代號Winterfell)在設計上有質的飛躍:

主板仍然是v2.0,但服務器高度增至2 OU,并特意強調不是1.5 OU,80mm風扇效率進一步提高;

更大的縱向空間有利于容納全尺寸GPGPU,支持兩個全高的PCIe卡,一個3.5英寸驅動器槽位,均從前端維護;

服務器機箱里沒有PSU,正好并排擺放三臺(2個80mm風扇),分別從后部的銅排取電,密度進一步提高(2 OU3)且相互獨立;

觀感上,做工精細了很多,裸露部分的處理也較好,總體上不輸一般商用服務器的水準。

圖注:用于Open Rack V1的OCP服務器(Winterfell)俯視圖及三聯裝(共占用2 OU機架空間)(來源:網絡圖片組合)

現在的OCP服務器主板已發展到V3.1,尺寸不變,支持Intel Xeon E5-2600 V3,16個DIMM/NVDIMM,加上了BMC,支持Open Rack V1和V2。3個75W PCIe x8插槽,擠占了硬盤的位置,代之以板載mSATA/M.2(2260,60mm長),以前只支持mSATA,且需要通過適配器。

硬盤先是被邊緣化,接著連裝操作系統的工作也被SSD搶走了。那么,大容量存儲怎么辦?

圖注:沒有存儲項目時Facebook的6種服務器類型,Type Ⅱ因與Type Ⅵ配置而被并入(弱勢的AMD啊),多數公開資料里都沒有;Type Ⅳ和Ⅴ的存儲配置看著很像2U的所謂“存儲服務器”(來源:Facebook)

我們常說,互聯網公司是不買存儲(設備)的,這里指的是SAN、NAS等傳統的企業級陣列,而不是沒有對大容量存儲的需求。像前面剛提到的AWS存儲優化機架,即為一例。

OCP V1服務器支持最多6個3.5英寸硬盤,都放滿,不算多;只放一兩個,剩下的空間又派不上別的用場。保持靈活性,就得付出浪費空間的代價,問題是也沒多靈活。

其時Amir宣布了一個面向存儲密集型應用的項目設計,看起來像是個4U設備,支持50個硬盤,分配到兩個控制器,可以連接到多臺服務器,提供可變的計算與存儲配比。

第三屆OCP峰會上,失勢的AMD基于其雙插槽Opteron 6200主板建立了一個代號Roadrunner的項目,包括1U(HPC選項)、1.5U(通用)、2U(云選項)、3U(存儲計算選項)共四個規格。2U支持8個3.5英寸或25個2.5英寸驅動器,3U支持12個3.5英寸或35個2.5英寸驅動器,僅以3.5英寸硬盤的密度而言,還不如OEM廠商推出的服務器。在Open Rack實用后,這個項目愈發沒有下文,AMD也投靠了ARM陣營,在OCP的項目里主要以微服務器卡(Micro-Server Card)刷存在感。

總的來說,還是Amir那個計算與存儲分離(解耦,disaggregation)的思路靠譜。Facebook在時任硬件工程經理Per Brashers和中國籍工程師晏勇等工作人員的努力下,于同一屆峰會上公開的Open Vault(代號Knox)取得了成功。這是一個寬度和高度(2 OU)都適配Open Rack的JBOD(Just a Bunch of Disks,一堆硬盤的簡單集合,無處理能力,需配合計算節點使用),共30個3.5英寸硬盤,分為上下兩層,每層有15個硬盤和一對冗余的“控制器”。電路邏輯比服務器主板簡單許多,基本上是Facebook獨力設計完成,先交由廣達生產,貢獻給OCP之后,與OCP服務器一樣有其他提供商(如Hyve Solutions和Wiwynn)生產的版本。

圖注:抽出一層(tray)共15個硬盤的Open Vault,背景機架供電區上方的2 OU設備為廣達的JBR,也是JBOD(來源:張廣彬,2013年)

Open Vault是個非常經典的設計,后面會有專門的章節展開分析。

圖注:除了CPU、內存和硬盤配置的自然更新,2013年Facebook 的Hadoop(類型4)和Haystack(類型5)服務器都用上了Open Vault,冷存儲機架更成為一種新的服務器類型(7),從硬件架構上也可以理解為一臺單控制器帶8個JBOD組成的低性能存儲系統(來源:根據Facebook數據制表)

現在,需要大容量存儲的Facebook服務器,如Type Ⅳ(用于Hadoop)和Type Ⅴ(用于Haystack,Facebook的圖片應用)都由Open Vault提供存儲,還增加了一個OCP服務器帶8個Open Vault(240個硬盤)的冷存儲(Cold Storage)類型——共18U,占據半個機架。

[page]

數據中心:RDDC與水……

如前面介紹,OCP的孕育便與數據中心建設有著密不可分的關系,Facebook貢獻的基于Prineville數據中心實踐的數據中心電氣和機械設計規范,是OCP最早的文檔之一;Facebook向OCP貢獻的冷存儲硬件設計規范包括了冷存儲數據中心地面布局的建議,冷存儲服務器就是前述的配置。

圖注:位于北極圈邊緣的Facebook Lule數據中心,景象是不是有點像前一章介紹的Google芬蘭Hamina數據中心?為Hamina數據中心提供電能的Maevaara風力發電廠就在Lule北邊不遠……(圖片來源:Facebook)

2014年3月初,Facebook數據中心設計團隊的設計工程師Marco Magarelli在OCP官網上撰文表示,瑞典Lule園區的第二座數據中心建筑(Lule 2)將采用“快速部署數據中心”(Rapid Deployment Data Center,RDDC)的概念模塊化構建。RDDC包括兩種方法,第二種“flat pack”(組合件)方式自稱效仿宜家(Ikea),不過,真正“因地制宜”的是為了適應瑞典寒冷的氣候(Lule離北極圈不到100公里)——Facebook機械和散熱工程師Veerendra Mulay在與我的交流中表示,用傳統的方法建設數據中心需要11~12個月(參見Prineville),RDDC可以縮短為3~8個月,從而盡量避開Lule下雪的季節(騰訊天津數據中心建設過程中也曾被暴雪所阻)。

  圖注:chassis方式的不同類型模塊(來源:Facebook)

第一種“chassis”(底盤)方式來源于12英尺寬、40英尺長的預組裝鋼框架,是類似組裝汽車底盤的理念:構建框架,然后在組裝線上附件部件。電纜槽、輸電排、控制面板乃至照明都在工廠預安裝好。對應的,這種模塊化方法就像搭建樂高積木。

  圖注:flat pack方式的分段組裝(來源:Facebook)

顧名思義,這兩種方法的精髓都體現了由傳統的工程項目到工廠預制產品、現場模塊化組裝的轉變。通過部署預安裝的總成和預制單元模塊、交付可預測和可重用的產品,RDDC能夠實現站點無關設計、減少現場影響、改善執行和工藝的目標,加快數據中心建設的速度,提高利用率且易于復制到其他地區。提高效率,終歸是要服務業務需求。

圖注:Prineville第一座數據中心的散熱設計,上層頂棚(對照前面Altoona數據中心的框架結構照片)對外部冷空氣和回流熱空氣進行處理,按一定比例混合

RDDC很大程度上得益于Facebook著力推行的新風供冷(fresh air cooling),沒有空調(Chiller-less)和冷卻水管道,便于實現數據中心的模塊化,另一好處是很低的PUE(約1.07)。相比之下,Google的數據中心模塊化程度雖然高,但冷卻水管道多少是個阻礙,PUE也略吃虧(約1.12)。不過,因為要靠噴水霧調節溫度和濕度,Facebook的數據中心安全性略遜一籌。

圖注:Google俄勒岡州Dalles數據中心內景,藍色的是冷水供應管道,紅色的把溫水送回致冷。鋪設水管典型的工程項目,費時費力,難以模塊化(來源:Google官網)

2011年夏天,Prineville的數據中心投入使用不久,建筑控制系統錯誤的輸送了富含水分(濕度95%)的冷空氣(80華氏度),“機房里就像飄著一朵雨云”,很多服務器遇濕重啟,或者因電線短路而自動關機。那年6月下旬,Facebook曾計劃將Prineville數據中心二期像北卡Forest城數據中心一樣,把服務器進風溫度從80華氏度(26.7攝氏度)提高到85華氏度(約29度),相對濕度從65%提高到90%,溫升(ΔT)從25華氏度提高到35華氏度,旨在減少環境的影響,并允許減少45%的空氣處理硬件。現在看來其后兩個指標只到80%和22華氏度,且只有Forest城數據中心相對濕度為90%,不知是否與這次事故有直接關聯。

圖注:Facebook三大數據中心(Prineville、Forest City、Lule)基本設計指標對比(來源:Facebook)

[page]

網絡:從邊緣走向核心

Intel在至強E5-2600的參考平臺中力推夾層卡(Mezzanine Card)設計,特別是網卡,讓高密度的機器獲得和標準(PCIe)插卡接近的靈活性。這一思想在同樣基于至強E5-2600的OCP Intel V2.0主板上得到了很好的體現,按照OCP Mezzanine Card 1.0規范設計的夾層卡,安裝位置在主板前端(冷通道側),便于維護。

就標準機架服務器而言,網卡采用夾層卡設計的緊迫性不高,還會提高成本,所以OEM大廠的響應不是很熱烈。支持者如戴爾等將靈活性作為主要賣點,以Broadcom或Intel的網卡模塊為主,希望能推動傳統企業用戶加速向萬兆網卡升級。OCP服務器則大量采用Mellanox的萬兆夾層卡,豐富的特性如能降低傳輸延遲的RoCE(RDMA over Ethernet,以太網遠程內存直接訪問)和硬件虛擬化技術SR-IOV(Single Root I/O Virtualization,單根虛擬化)也是其賣點。甚至國內OEM服務器大廠如聯想,亦在其天蝎2.0服務器節點中采用這種夾層網卡,如此“拿來主義”精神對擴大OCP的覆蓋有一定積極作用。

圖注:聯想天蝎2.0整機柜服務器節點用的就是萬兆OCP夾層卡CX341A,Mellanox ConnectX-3 EN家族的單端口10GbE網卡,以色列原廠生產(來源:張廣彬)

OCP Intel V3.0主板加入了對 OCP Mezzanine Card 2.0的支持。2.0版夾層卡新增了可選的第二連接器,以滿足未來高速網絡(如100GbE)的需求,目前來看更主要的變化是擴大了板上空間,支持的接口模塊也從1.0的2個SFP+升至2個QSFP、4個SFP+或4個RJ45/10GBASE-T的多種選擇。

圖注:OCP夾層卡V2主要有三大改進:增加連接器B、擴大板上空間、可選I/O區域(來源:OCP Engineering Workshop)

說到這里有必要指出,夾層卡屬于服務器項目。OCP在網絡項目上的起步相對較晚,從2013年才開始有規范產生,2014年逐漸壯大。

按照OCP官網上的說法,網絡項目最初的目標是開發邊緣(leaf,指ToR)交換機,然后是骨干(spine,相當于Aggregation)交換機和其他硬件及軟件方案。

圖注:三層網絡的Aggregation(會聚)/Access(訪問,如ToR)與二層網絡的Spine(枝干)/leaf(葉子)存在一定的對應關系(來源:Cumulus Networks)

網絡設備與服務器的同源性還沒有存儲設備那么高,以交換機與服務器的配比,密度早不是一個級別,擴充空間不是優先考慮的事情。已有的幾款OCP定制交換機在外形尺寸上很常規,標準RU、能裝在19英寸機架里即可,電源和風扇的布置方式也很傳統,有助于被企業市場接受。目前,OCP網絡硬件追求的是類似服務器的使用體驗乃至生命周期,包括控制平面與數據平面的高度模塊化、軟件與硬件解耦合,以實現定制的靈活性(DIY),避免被供應商鎖定。

圖注:OCP網絡項目的階段性目標,先從傳統單片式(Monolithic)交換機到軟硬件解耦,再進一步模塊化(來源:Facebook)

數據平面的核心是ASIC(如Broadcom)或FPGA,不乏支持40GbE的方案;控制平面的CPU可以是x86(如AMD的嵌入式SoC,或Intel Atom)、PowerPC(如Freescale多核PPC)、MIPS(如Broadcom多核MIPS)或ARM。截至2015年2月底,OCP已經公開了6款交換機(Accton、Broadcom/Interface Masters、Mellanox和Intel各1款,Alpha Networks有2款)的設計,其中的半數方案可以根據需要配置為ToR或會聚(aggregation)交換機。

軟件與硬件解耦,ONIE是關鍵,也是OCP網絡項目早期的重點工作。ONIE即Open Network Install Environment(開放網絡安裝環境),是一個定義用于裸金屬(bare metal)網絡交換機的開放“安裝環境”的開源項目。傳統的以太網交換機有預安裝的操作系統,拿來就用,直接管理,但會鎖定用戶;所謂的白盒(white-box)網絡交換機提供了選擇硬件的自由,但不同的CPU架構等導致異構的管理子系統,又給上面的網絡操作系統制造了困難。

[page]

ONIE定義了一個開源的“安裝環境”,將boot loader(引導裝載程序)與現代的Linux內核及BusyBox相結合,提供了一個可以安裝任何網絡操作系統的環境,有助于自動化大型數據中心的交換機(上千臺)配給,讓用戶像管理Linux服務器一樣管理交換機。

上述成果的直觀體現就是Juniper Networks(瞻博網絡)2014年12月初發布的OCX1100交換機,在Alpha Networks SNX-60×0-486F的硬件上運行基于Linux的Junos操作系統,預計于2015年第一季度上市。SNX-60×0-486F是Alpha Networks公司設計的OCP交換機,由一個BCM56854(Broadcom Trident Ⅱ)芯片提供48端口10G SFP+和6端口40G QSFP,CPU子系統為Freescale(飛思卡爾)P2020或Intel C2558,可作為ToR或會聚交換機使用。Dell(提供如Z9500-ON數據中心核心及會聚交換機)與Cumulus Networks(提供CLOS)的合作也是類似的情況。

圖注:2014年6月公開的Wedge交換機硬件設計,雙冗余供電單元,4個風扇(來源:Facebook)

沒錯,Facebook正在向核心交換機挺進。2014年6月,Facebook展示了其設計的新款ToR交換機(代號Wedge),有多達16個40GbE端口,支持Intel、AMD和ARM的CPU,配以基于Linux的操作系統(代號FBOSS)。

圖注:6-pack硬件平臺外觀,由于集中了PSU,Wedge交換機寬度更緊湊,兩兩并行放置(來源:Facebook)

2015年2月11日,Facebook宣布推出第一款開放硬件模塊化交換機“6-pack”,7RU的機箱,裝有8個基于Wedge的交換機和2個fabric卡,共6層,底下還有一層電源和風扇。作為Facebook data center fabric的核心,6-pack將使Facebook可以組建更大規模的集群,而不是將集群分為多個,并因集群間的網絡鏈路而限制集群的規模。

  圖注:6-pack內部網絡數據路徑拓撲(來源:Facebook)

Wedge和6-pack都將通過OCP公開設計規范。

反哺與變局:來自傳統廠商的支持

2014年是OCP變動很大的一年,盡管也遇到了一些困惑,但生態系統明顯壯大了起來,特別是體現出對傳統軟硬件廠商的吸引力。

1月底召開的第五屆OCP峰會上,微軟高調宣布加入OCP,風頭明顯蓋過一同亮相的IBM、Yandex、Cumulus Networks、Box、松下、Bloomberg、IO、LSI(已被Avago收購)。相比看起來像是打入內部探聽消息的IBM,微軟可謂誠意十足——貢獻了用于全球云服務(如Windows Azure、Office 365和Bing)的開放云服務器(Open CloudServer,OCS)設計作為“投名狀”。

單論數據中心的規模,微軟應該比Facebook和還在瘋狂趕進度的IBM/SoftLayer(也是10萬+服務器的Tier 2互聯網客戶)加在一起都大,把新硬件的采購換成OCP就已經是天大的喜訊了,再貢獻一組硬件設計規范及管理軟件源碼,Staya Nedella還沒上任就大赦天下?

顯然沒那么簡單,微軟也有與Facebook類似的想法。

現在OCP的服務器規范與設計頁面中,開放云服務器的資料列在最上面,在2014年的Engineering Workshop里也是服務器部分的宣講重頭。OCS的12U機箱為EIA 310-D 19英寸機架而設計,半寬的計算和存儲刀片,每U兩節點(1U2),集中風扇、PSU和管理單元(Chassis Manager),很不Open Rack,更像12U的天蝎1.0整機柜(下一章介紹)。如此看來,要把天蝎項目納入OCP,確實不是技術上的問題——只要BAT愿意……當然是在開放數據中心委員會成立之前。

2014年10月底在巴黎召開的歐洲峰會上,公布了OCS V2規范。V2的計算刀片將CPU從V1的雙路Intel Xeon E5-2400 v2(10核/CPU)升級為最新的雙路Intel Xeon E5-2600 v3(14核/CPU,v3沒有2400),內存隨之由12個DDR3-1333升級為16個DDR4-2133,支持的容量范圍也從64-192GB擴至128-512GB。計算能力大為增強,但CPU的TDP也從95W(應為E5-2470 v2)提高到120W(應為E5-2683 v3),因而每個刀片的能耗從不到250W增至300W或以上。

[page]

圖注:開放云服務器的機箱組件,機箱管理卡類似于天蝎整機柜的RMC,特點是運行Windows Server 2012 R2,微軟已開源機箱管理軟件的代碼(來源:OCP Engineering Workshop)

所以,OCS V2的機箱也進行了升級,首先是6個PSU從1400W換成1600W,N+1配置時總容量8kW,支持24個計算刀片,N+N配置時為4.8kW。付出的代價是供電的停頓時間(hold-up time)從10毫秒倍增為20毫秒,并以新的風扇匹配刀片的能耗。

刀片性能的提高,對I/O帶寬也提出了更高的要求,OCS V2每層托盤(Tray)的I/O從V1的雙10GbE和雙6Gb SAS(x4)升級為10/40GbE和雙12Gb SAS(x4),并增加了PCI Express 3.0 x16的夾層卡。

圖注:2011年微軟IT-PAC(IT Pre-Assembled Components,IT預組裝部件)中的服務器機架,看似是開放云服務器的前身,目測機架高度應該在50U以上

存儲刀片為可容納10個3.5英寸硬盤驅動器的JBOD,V2也是從V1的6Gb SAS升級為12Gb SAS,單就硬盤密度而言,每機架可達800個硬盤。V1 JBOD仍可用于V2機箱,每個計算刀片自帶4個3.5英寸硬盤(V1還支持2個2.5英寸SSD,V2增至4個,以及8個110mm M.2 PCIe NVMe模塊)。每個計算刀片可連接1-8個JBOD,即支持14-84個硬盤。

  圖注:Facebook的PB級藍光歸檔存儲系統(來源:The Register,2014年)

第五屆OCP峰會上還展示了Facebook的藍光光盤歸檔存儲系統,42U的空間內可以容納1萬個三層100GB光盤,容量達1PB,據稱可以保存信息50年。Facebook的前輩Google使用單盤容量更大的磁帶,也有歷史因素,Facebook則認為光盤代表著未來。

圖注:Google南卡Berkeley County數據中心的磁帶備份系統,這張照片以前曾被誤傳為Google的服務器(來源:Google官網)

從離線存儲的角度來看,磁帶與光盤各有千秋,短期內難分勝負。很快見效的是,2014年3月下旬,Frank Frankovsky宣布離開Facebook,去做一個基于光盤的冷存儲初創公司,但以獨立身份保留在OCP基金會董事會的位置,并繼續擔任基金會主席兼總裁。董事會里必須有Facebook的代言人,于是增補了Facebook基礎設施總監Jason Taylor,以及微軟負責云和企業業務的副總裁Bill Laing,規模擴大到7人。

  圖注:調整后的OCP組織架構(來源:OCP官網)

老牌存儲廠商EMC在2013年1月舉辦的第四屆OCP峰會上就宣布入伙,只是風頭被一起加入OCP的ARM壓過。因此,EMC World 2014上發布基于x86商用服務器硬件的ECS(Elastic Cloud Storage,彈性云存儲)設備時,就被問到是否與OCP有關。相比之下,EMC的子公司VMware就爽快得多,在2014年8月底舉辦的VMworld 2015上宣布加入OCP,尚處于技術預覽階段的EVO: RACK則明確表示基于OCP硬件——畢竟,VMware自身沒有硬件包袱。

關鍵字:FacebookOCP數據中心

本文摘自:大數網

x Facebook數據中心實踐分析,OCP主要工作成果介紹 掃一掃
分享本文到朋友圈
當前位置:數據中心企業動態 → 正文

Facebook數據中心實踐分析,OCP主要工作成果介紹

責任編輯:editor005 作者:張廣斌 |來源:企業網D1Net  2015-03-12 14:37:37 本文摘自:大數網

保密本就是數據中心行業的慣例。2014年11月,我獨自去拉斯維加斯(Las Vegas)南部參觀SuperNAP數據中心。下車后,幾次試圖用手機拍建筑外景,迅速被開著悍馬巡邏的警衛阻止。進門等候預約時段,雖說在美國警衛持槍是再平常不過的事,但警衛室里那幾位嚴陣以待、隨時準備應付劫匪的架勢,仍令我印象深刻。參觀數據中心內部不允許拍照是行規,不過之前我參觀數據中心都有專人陪同,還沒享受過這么戒備森嚴的待遇。

圖注:SuperNAP 7數據中心的接待室,我在這里等了20多分鐘,得以觀察小窗子里面的警衛室。圖片來自SuperNAP官網,下同

這與托管數據中心的性質不無關系,必須為租戶保密。自為客戶的Google則將基礎設施視為核心競爭力之一,這從該公司對基礎設施一貫的重視程度也能感受到。因此,Google長期對其數據中心和定制硬件設計秘而不宣,員工入職時要簽署保密協議,離開Google一兩年內也不能透露。

  圖注:夜幕下的SuperNAP 7數據中心,典型的美式大平層結構

但是,那些Google自己公開的數據中心內外景照片,又是怎么回事?

2009年3月,Facebook從Google挖來工作近6年(更早在思科做過實習生)的硬件工程師Amir Michael,主管硬件設計。2010年4月1日,Facebook宣布任命Ken Patchett主管其位于俄勒岡(Oregon)州Prineville的第一個自建數據中心。Ken Patchett的職業生涯從康柏(Compaq)起步,在微軟積累了近6年的數據中心和網絡運營經驗。到Google后指導過位于俄勒岡州Dalles的數據中心,去Facebook之前又在亞洲工作了一年多,管理Google自有和托管的數據中心。轉了一圈,又回到俄勒岡州。

  圖注:SuperNAP數據中心的警衛室

從服務器設計到數據中心運營,Facebook堅持挖Google墻角,后者又不好打官司——這意味著要公開更多細節。更絕的還在后面:2011年4月,乘Prineville數據中心投產之東風,Facebook宣布發起開放計算項目(Open Compute Project,OCP),開源了其包括數據中心、定制服務器在內的一系列硬件設計。

三年兩大招,先挖人,再開放,Facebook在數據中心規模比Google差一個量級的條件下,經常被與前三大(還有微軟和亞馬遜)相提并論,OCP居功至偉,甚至連“百萬富嗡”(指服務器風扇的噪音,非貶義)微軟都來入伙。

Facebook將數據中心宣傳的公關戰提高到一個嶄新的水平。Google在2012年10月對外公開了一些數據中心技術的情況,包括請記者參觀,和網站上近百張高清晰度的照片。但是,對于IT設備(服務器和網絡)及相關技術,Google依然諱莫如深,至多提及其已廢棄的服務器。Urs參與的前后兩版書里,也是以宏觀理念和數據中心層面的建設原則為主。

圖注:Google位于俄勒岡州Dalles的數據中心依山傍水(哥倫比亞河),團隊成員可以享受漂流、風力沖浪、釣魚和徒步的樂趣。注意看左上角的山腰處(來源:Google官網)

有趣的是,James Hamilton還對Google公開的這些信息分析點評了一番。曾被認為在技術中心實力和保密程度上與Google一時瑜亮的AWS,如今似乎是最神秘的了。

總體而言,Google透露的是久遠的歷史和近期的狀況,中間的壯大過程中傳世不多,Facebook的發展史或許可資借鑒。

[page]

從一臺服務器到多個數據中心

2004年2月,Mark Zuckerberg(馬克·扎克伯格)在哈佛大學宿舍內將Facebook上線,當時只有一臺服務器。僅僅五年之后,這個世界最大的社交網站已擁有超過3億活躍用戶,每天處理3.9萬億feed,超過10億聊天信息,1億搜索請求,每月超過2000億PV……

在只有一小撮人使用,少量照片、沒有視頻的草創時期,全部服務運行在一臺服務器上還是沒問題的。2009年時的Facebook網站顯然是另一個樣子:載入用戶主頁這么一個看似簡單的動作,就需要在不到一秒鐘的時間里訪問數以百計的服務器,處理上萬片分散在各處的數據并提交所需的信息。

服務器的增長速度不難想象,有跡象表明,Facebook的服務器數量:

2008年4月約1萬臺;

2009年約3萬臺;

2010年6月至少6萬臺……

即使放在今天,這個數量也可以排在Tier 2互聯網客戶的前列(以10萬臺為界,超過即為Tier 1,Facebook是十幾家之一),能效就是必須要考慮的問題了。以每臺服務器200W的保守計算,年耗電量已經超過1億度。如果數據中心PUE(Power Usage Effectiveness,電源使用效率)能從1.5降到1.1,每年即可節省4200萬度電。

直到2009年,Facebook仍然依靠租用的數據中心空間,沒有自建的數據中心。租用數據中心空間(自己部署服務器、網絡等IT設施)的優點是交付速度較快,可以在5個月內搞定;建設一個數據中心則需要大約一年的時間和更多的前期投資,但是在供電和散熱等方面可以根據自身需求定制,對超大規模用戶更劃算,Google、、微軟和亞馬遜早就自建數據中心了。

  圖注:Prineville的兩座數據中心建筑(來源:Facebook官網,2014年)

2010年1月,Facebook宣布在俄勒岡州的Prineville建設屬于自己的第一個數據中心,規劃面積約1.4萬平米,目標PUE為1.15。同年7月,社交巨頭決定將Prineville數據中心的規模倍增至約3萬平米。2010年12月完工,得益于100%使用外部空氣冷卻、無需空調的一系列高能效設計,PUE可低至1.073。與1.51的“業界平均值”相比,節能幅度還略好于我們剛才的假設。

圖注:2013年8月底,夕陽下的Altoona數據中心建設工地,占地約194英畝。到2013年11月中旬,每天有超過200人工作,累計工時近10萬小時(來源:Facebook官網)

從自建數據中心嘗到甜頭的Facebook再接再厲,先后在北卡羅來納州(North Carolina)的Forest City(2010年11月宣布)、瑞典的Lule(2011年10月宣布)和衣阿華(Iowa)州的Altoona(2013年4月宣布)建設數據中心。每個數據中心建成后都有擴建,像Prineville和Forest City還各增加了一個用于冷存儲的數據中心(建筑),Lule和Altoona的二期工程也在2014年啟動。

OCP緣起:青出于藍以勝藍?

沒有開源就沒有今天的互聯網行業,但這主要是從軟件的角度來說。Google在軟件開源方面還是做了不少工作,著名的Hadoop便可以視為Google無意間“開源”了思路的結果。就在2015年2月,Google宣布將其2014年6月收購獲得的MapReduce for C(MR4C)開源,這是用C++開發的MapReduce框架,此舉讓用戶可以在自己的Hadoop環境中運行原生的C及C++代碼,是Hadoop社區的福音。

支撐互聯網基礎設施的是開放硬件技術,這與開源不太一樣。英特爾通過開放硬件技術營造的生態環境,擊敗了IBM及其他RISC廠商(ARM另當別論),但至少在OCP出現之前,無法想象戴爾和惠普會公開其服務器的詳細設計材料。而且,“開源+開放”也不意味著結果一定是透明的,Google就在開源軟件和開放硬件技術的基礎上打造了專有的數據中心。

應該說,扎克伯格很早就意識到,Facebook與Google必有一戰,而且這一天遠比國人聽著耳熟的某同樣句式表達來得快。Google在整個Web上開展廣告業務,Facebook在自己的社交網絡里開展廣告業務,就像騰訊不讓百度搜索進入微信一樣,Facebook也要發展自己的搜索引擎。2013年Facebook上線了Graph Search,2014年12月初又更新為Facebook Search,隨即在Facebook的搜索中去掉來自微軟Bing的Web搜索結果。

很重要的一個區別是,騰訊并不比百度小,而Facebook自身尚不能與Google抗衡。從服務器到數據中心,Google起步早,規模大,自成體系。為了迅速縮小基礎設施領域與Google的差距,Facebook想出了通過開源壯大生態系統的妙招,即成立開放計算項目(OCP)。

圖注:開放計算項目(Open Compute Project)的Logo,左側是用服務器主板拼成的“f”(來源:張廣彬,2013年)

作為一個開源的硬件項目,OCP不僅是公布Facebook“白手起家”定制數據中心和服務器的細節,直到機架和主板的CAD圖紙,更邀請開源社區及其他合作伙伴使用并改進。也就是分成兩個步驟:先放出規范和機械圖紙,再與社區共同改進它們。

如果我們考慮Facebook和Google身上類似硬件廠商的成分,可以看到,即便是生態系統的核心廠商如英特爾,也很難有如此社區化的思維。沒錯,上一個這樣做的是Google,為了對抗蘋果iOS而開源Android,成功的建設起巨大的生態系統,以群狼圍攻猛虎。

在這個資金和人才密集型行業,開源是爭奪人才的好辦法,還具有顯著的廣告效應。有更多的客戶使用基于OCP規范的硬件,也可以增大采購量,幫助Facebook降低成本,起到類似團購的效果。

當時OpenStack剛剛興起,OCP也采用了一些類似的做法,譬如上下半年各一次峰會(Summit),并在2011年10月27日召開的第二屆OCP Summit上,宣布成立OCP基金會(Open Compute Project Foundation)。不過,硬件設計的周期較長,于是,從2012年開始改為每年一次,2015年3月9至11日召開了第六屆峰會。

  圖注:Facebook的基礎架構部門(來源:張廣彬,2013年)

在2014年1月底召開的第五屆OCP峰會上,Mark Zuckerberg和Facebook工程副總裁Jay Parikh宣布,OCP成立三年來,開源硬件方案幫助Facebook節約了12億美元。

此時,OCP的成員總數已接近200家(不乏2014年加入的微軟、VMware等重量級傳統企業廠商),以廣達(Quanta)為代表的7家解決方案提供商,大量經過驗證的設計,Facebook和Rackspace的采用……接下來,就從董事會和典型項目兩個方面,大致介紹一下OCP這個開源硬件組織的組織架構及主要成果。

[page]

董事會:經驗的傳承

成立基金會,而不是在Facebook一家控制之下,對OCP發展的重要性不言而喻。OCP基金會在董事會的管理下運作,最初有5位董事,分別來自5家公司。

Frank Frankovsky代表Facebook,擔任OCP基金會主席兼總裁。2009年10月加入Facebook,先后擔任硬件設計與供應鏈運營總監和副總裁。此前,在戴爾負責服務器定制業務的數據中心解決方案(Data Center Solutions,DCS)部門擔任總監近四年,上世紀90年代曾任康柏(Compaq)計算機公司的產品經理。

圖注:Facebook硬件實驗室一角。在硬件實驗室里,這已經算相當整潔的了(來源:張廣彬,2013年)

Mark Roenigk是Rackspace Hosting的COO,在微軟工作過9年,大部分時間負責OEM和供應鏈運營,此前7年是康柏的工程師。Rackspace是著名的服務器托管商,有豐富的數據中心建設、運營和硬件經驗,還與NASA共同催生了OpenStack——是惟一在一軟一硬這兩大開源組織中都有肇始之功的公司。

Jason Waxman現任英特爾(Intel)數據中心事業部高密度計算業務總經理,主要負責的領域包括互聯網數據中心、刀片服務器以及與未來密集型數據中心架構相關的技術。他還負責領導英特爾在云計算方面的工作,并在Blade.org和服務器系統架構組織(Server System Infrastructure Forum,SSI Forum)的董事會兼任管理職位。此前曾擔任負責英特爾至強(Xeon)處理器、相關芯片組和平臺產品及其客戶關系的總監。

圖注:Facebook在硅谷的園區以前屬于Sun——一家值得緬懷的偉大公司,順道緬懷拍下這張照片的手機(來源:張廣彬,2013年)

Andy Bechtolshiem來自Arista Networks,更響亮的名頭是“Sun Microsystems共同創辦人”。Andy Bechtolshiem擔任過Sun的首席系統架構師,第一個投資Google,還擔任閃存初創企業DSSD的董事長——后者2014年5月被EMC高調收購。

除高盛(Goldman Sachs)的Don Duet職業生涯主要履歷為CIO之外,以上四人均有深厚的硬件行業背景,從產品、技術到供應鏈都有涉獵,見多識廣,經驗豐富,對把控開源硬件項目的發展方向至關重要。

正如前面所說,OCP下轄的項目很多,從服務器到數據中心,還包括機架(Rack)、存儲、網絡、硬件管理,并于2014年啟動了HPC(High Performance Computing,高性能計算)項目。

服務器:始于Google,終成一派

Facebook開始定制硬件不算早,前期的服務器也來自OEM。Facebook基礎設施工程負責人Jay Parikh在2012年10月中旬的GigaOm Structure歐洲會議上表示,在瑞典Lule的數據中心將是Facebook首次完全沒有采用OEM服務器硬件。

圖注:Facebook的數據中心集群(2014年公開資料),前端(FE)集群包括大量的Web服務器和一些廣告服務器、相對少量的Multifeed服務器;服務集群(SVC)包括搜索、圖片、消息等服務器,后端(BE)集群主要是數據庫服務器。這一配置規模有可能隨著后面提及“6-pack”核心交換機的應用而改變。

這顯然與本章一開始提到的Amir Michael有直接關系,他比Frank Frankovsky還早半年加入Facebook,也是OCP的共同創辦人之一,2013年1月起擔任OCP孵化委員會(Incubation Committee,IC)副主席,4月出任Coolan CEO——該公司與Facebook及OCP頗有淵源,Amir Michael又是共同創辦人。

圖注:區域數據中心之間的基礎設施冗余。FE(前端集群)、SVC(服務集群)、BE(后端集群)組成一個整體,與另一個區域的數據中心互為冗余(來源:Facebook)

[page]

超越往往從學習和模仿開始,雖然牛頓所謂“站在巨人的肩上”并非此意。OCP成立時,Facebook數據中心團隊貢獻的第一代OCP服務器,很大程度借鑒了Google的設計,最明顯的標志就是1.5U(66mm)的服務器機箱。這樣做的好處是可以使用直徑更大的60mm低轉速風扇,與1U服務器的40mm風扇相比,節能效果顯著。450W供電模塊(PSU)支持277V交流和48V直流輸入,前者比208V減少不必要的電壓轉換,后者由備份電池提供短時電力供應,都是為了盡可能的避免能源損耗。散熱與供電雙管齊下,控制電費(省OPEX)。

  圖注:Prinevill數據中心的供電轉換環節與損耗狀況對比(來源:Facebook)

另一點是去掉(前)面板和BMC,沒有VGA接口,以貫徹Facebook的“Vanity-free”(無浪費)精神。目標是盡可能降低購置成本(省CAPEX),盡管做工看起來有點糙。正如Jay Parikh所言,OCP服務器比標準服務器少很多功能,也盡可能需要更少的部件。

  圖注:48伏電池柜的輸電路徑(來源:Facebook)

OCP V1服務器有AMD(12核Opteron 6100)和Intel(6核Xeon 5600)兩種雙路方案,主板尺寸為13×13英寸,由廣達(Quanta)制造。機箱寬度(480mm,略小于19英寸)和高度單位(Rack U,即RU,1RU為1.75英寸,即44.45mm)都遵守工業標準的“老規矩”,后端有3個硬盤托架,與主板均為免工具拆裝。

圖注:OCP服務器V1(左)和V2(右)采用同樣的1.5U機箱,4個60mm風扇位于主板后方,右側的硬盤托架由供電模塊提供冷卻氣流。V2的改進包括:硬盤前置便于維護;2個主板提升計算密度,但犧牲了可能的硬盤數量;CPU性能提升(來源:Facebook)

2012年5月初在圣安東尼奧召開的第三屆OCP峰會之前,AMD和Intel貢獻了第二代OCP主板的設計,得益于至強(Xeon)E5-2600,Intel開始占據壓倒性的優勢。代號“Windmill”的Intel OCP v2.0主板采用雙路Intel Xeon E5-2600,外形長而窄(6.5×20英寸,約165×508mm)。OCP V2服務器仍為1.5U規格,但主板寬度只有第一代的一半,因而能容納兩個計算節點,在同樣的機箱內將密度翻番。

為了支持兩個主板,V2服務器的供電模塊提升為700W,并與硬盤互換位置,這樣從前面可以直接維護硬盤。

經過兩代服務器的摸索,相繼暴露出一些問題:

供電模塊的冗余度差。相比于工業標準服務器的1+1冗余電源,這兩代服務器只有一個供電模塊。OCP V1服務器尚可用“牲口模式”來解釋(關鍵組件出問題即替換整個服務器),OCP V2服務器的供電模塊故障會導致兩個計算節點失效,有點矯“枉”過正。為此Facebook還設計了高可用(High Availability,HA)服務器的方案,即增加一個PSU,替換下來一個主板,等于把計算密度又降回去了。

可以用前一章所述把PSU集中到機架層面的方案(此時中國的天蝎整機柜已經這么做了),但是以19英寸機箱的寬度,拿走PSU剩下的空間,又不足以放下第三個主板(6.5×3=19.5英寸)。

計算與存儲沒有解耦合。這在OCP V1服務器中尤為明顯,3個驅動器托架可以放6個硬盤,計算節點只用一個啟動盤的話,為保留不夠用的靈活性而造成大量的空間浪費;OCP V2還好,因為增加的主板擠占了2個驅動器托架的位置。

60mm風扇還不夠大。

不同程度的保留了USB接口,卻沒有BMC(Baseboard Management Controller,基板管理控制器)。哪個對管理更有價值,不言而喻。

除了最后一點,其他幾點都需要機箱、乃至機架設計的改變。

Open Rack:重新定義數據中心機架

Facebook最初采用19英寸三聯柜設計,名為Freedom Triplet,寬度為1713mm,比三個并排的EIA 310-D機架(600mm×3)略窄。外側的兩個機架(機柜,Rack)上各有一個架頂式(Top of Rack,ToR)交換機,每一列30個Open Compute服務器,共90個。一組三聯柜裝滿90個服務器后總重2600磅(約1179公斤),兩組三聯柜共享一個備份電池柜。

圖注:配合前兩代服務器的Freedom三聯柜,因并聯而略省材料且更穩固,高度也略高于常見19英寸機架,可容納30個1.5U服務器(45U)以及交換機(來源:OCP規范)

Facebook很快認識到,形成于1950年代的EIA 310-D標準不能滿足他們的要求。EIA 310-D標準化了機架內軌之間的寬度(19英寸),但把高度、深度、安裝和布線方案以及連接器的規范留給制造商去定義。Facebook認為,這導致服務器和機架設計不必要的分化,把客戶鎖定于特定的供應商及其實現。

圖注:一個直流UPS電池柜支持兩組三聯柜共180臺服務器的全系統(來源:Facebook,2010年)

[page]

更關鍵的問題在于,傳統的19英寸機架,考慮到側邊和滑軌,留給IT設備(服務器、存儲)的可用寬度只有17.5英寸,不能并排放置3個(6.5英寸寬)主板或5個3.5英寸硬盤。嫌窄者早已有之,如IBM大機和EMC的高端存儲,都有寬度在60cm以上的機架,譬如EMC Symmetrix VMAX,系統和存儲機架寬度均超過75cm(30.2英寸,合76.7cm),為的也是容納更大的服務器(存儲控制器)或更多的硬盤。

不過,一則拓展外寬未必提高效率,二則大機和高端存儲從量上來說,還是小眾產品,很少有人幾千個機架的買。Facebook的辦法是保持外寬600mm(近24英寸)不變,把內部橫向間距從483mm擴大到538mm(21英寸),提高55mm(約2.2英寸),取消占地費錢的滑軌,空間利用率從73%(17.5英寸時)躍升為87.5%,可謂創舉。

圖注:Open Rack俯視圖(下前上后),可以看清內寬擴大,前端維護&后端供電等要素(來源:OCP規范)

既然重要的內寬已經改變,索性把每個Unit也重新定義,高度從傳統Rack U(RU)的44.5mm,略微放大至48mm,名為OpenU,簡稱OU,機架也起名為Open Rack(開放機架)。為與之前的設備兼容,保留0.5 OU為最小單位,不過后來似乎沒有推出過非整數OU的產品。

然后是整合供電模塊,分為3個供電區(Power Zone),每個供電區有3 OU供電框安置7個700W的PSU(來自OCP V2服務器),N+1配置,共4.2kW,整個機架的供電能力達12.6kW。每機架兩個PDU,200-277V交流在左后方,48V直流在右后方。服務器從機架正后方等距分布的3根銅排(Bus bar,母線)上取電,PSU輸出電壓12.5V,正好滿足服務器對12V輸入的要求。

Open Rack v0.5版規范于2011年12月15日釋出,在第三屆OCP峰會上隆重介紹。該版本建議每個供電區為15 OU,12 OU用于IT設備;然后再留2 OU放置ToR交換機,總高度至少47 OU(不低于2300mm,似可見之前Triplet縱向空間分配思路的遺存)。2012年9月18日,Open Rack 1.0規范公布,主要明確了以下幾點:

專注于單列機架設計(非三聯柜);

入口(inlet)溫度提高到35攝氏度,反映其他Open Compute設計和真實數據中心的溫度;

交換機布置更靈活,不僅限于供電區的頂端;

計算設備(服務器/存儲)機箱為1-10 OpenU高,支持L形支架直接承載。L形支架明顯比傳統服務器的測滑軌節省空間和成本,免工具安裝,可以0.5 OpenU(24mm)為增量固定;

最大高度取決于供電區,但建議不要超過2100mm,以保持穩定。常見的做法是每個供電區13 OU,IT設備10 OU,再加2 OU交換機,共41 OU;

新設計的簧片(clip),使機箱電源連接器易與銅排配合。

圖注:Open Rack V1前視圖和側視圖(左前右后),可以看到縱向空間的分配(來源:OCP規范)

綜合起來,Open Rack的特點主要是:

拓展空間。 開創性的提高了內部利用率,特別是留給IT設備的寬度大為增加,單位高度也略有提升,同時盡可能的保持了與原有機架標準的兼容性(外寬一致,高度接近);

集中供電。 提供機架范圍內的共享與冗余,服務器等IT設備直接插拔取電,免去上架時的手動連線工作;

前端維護。 后端用于供電和散熱,維護人員在冷通道一側即可完成日常工作,不用進入熱通道。兩邊跑不僅增加了工作量,在后端識別設備困難,容易導致誤操作。

當然副作用也是有的,即兩側起支撐作用的部分變薄,同時內部IT設備可能的重量還會增加(Open Rack V1.1規范已達950千克,接近本節開頭提到的三聯柜),對機架強度提出挑戰。在整機柜交付等運輸途中尤其如此,早期的Open Rack要在后端加斜梁輔助,防止變形。

不過,在目前的Open Rack V2規范里,基本機架配置在動態環境下支持500千克的IT設備,通過增加緊固螺栓等手段,重載機架配置(Heavy Rack Config)可以支持1400千克的IT設備——作為對比,James Hamilton在re:Invent 2014大會上透露,AWS的存儲優化機架可容納864個(3.5英寸)硬盤,重達2350英鎊(約1066千克)——要怎么裝出這個密度來,也是門學問。

還是類似三聯柜的方式穩固(來源:OCP Engineering Workshop)

圖注:Open Rack V2還有重組供電布局、去掉單獨電池柜等重要改進,將在后面的章節介紹。

[page]

Open Vault:存儲從服務器分離

得益于Open Rack,第四屆OCP峰會上亮相的第三代OCP服務器(代號Winterfell)在設計上有質的飛躍:

主板仍然是v2.0,但服務器高度增至2 OU,并特意強調不是1.5 OU,80mm風扇效率進一步提高;

更大的縱向空間有利于容納全尺寸GPGPU,支持兩個全高的PCIe卡,一個3.5英寸驅動器槽位,均從前端維護;

服務器機箱里沒有PSU,正好并排擺放三臺(2個80mm風扇),分別從后部的銅排取電,密度進一步提高(2 OU3)且相互獨立;

觀感上,做工精細了很多,裸露部分的處理也較好,總體上不輸一般商用服務器的水準。

圖注:用于Open Rack V1的OCP服務器(Winterfell)俯視圖及三聯裝(共占用2 OU機架空間)(來源:網絡圖片組合)

現在的OCP服務器主板已發展到V3.1,尺寸不變,支持Intel Xeon E5-2600 V3,16個DIMM/NVDIMM,加上了BMC,支持Open Rack V1和V2。3個75W PCIe x8插槽,擠占了硬盤的位置,代之以板載mSATA/M.2(2260,60mm長),以前只支持mSATA,且需要通過適配器。

硬盤先是被邊緣化,接著連裝操作系統的工作也被SSD搶走了。那么,大容量存儲怎么辦?

圖注:沒有存儲項目時Facebook的6種服務器類型,Type Ⅱ因與Type Ⅵ配置而被并入(弱勢的AMD啊),多數公開資料里都沒有;Type Ⅳ和Ⅴ的存儲配置看著很像2U的所謂“存儲服務器”(來源:Facebook)

我們常說,互聯網公司是不買存儲(設備)的,這里指的是SAN、NAS等傳統的企業級陣列,而不是沒有對大容量存儲的需求。像前面剛提到的AWS存儲優化機架,即為一例。

OCP V1服務器支持最多6個3.5英寸硬盤,都放滿,不算多;只放一兩個,剩下的空間又派不上別的用場。保持靈活性,就得付出浪費空間的代價,問題是也沒多靈活。

其時Amir宣布了一個面向存儲密集型應用的項目設計,看起來像是個4U設備,支持50個硬盤,分配到兩個控制器,可以連接到多臺服務器,提供可變的計算與存儲配比。

第三屆OCP峰會上,失勢的AMD基于其雙插槽Opteron 6200主板建立了一個代號Roadrunner的項目,包括1U(HPC選項)、1.5U(通用)、2U(云選項)、3U(存儲計算選項)共四個規格。2U支持8個3.5英寸或25個2.5英寸驅動器,3U支持12個3.5英寸或35個2.5英寸驅動器,僅以3.5英寸硬盤的密度而言,還不如OEM廠商推出的服務器。在Open Rack實用后,這個項目愈發沒有下文,AMD也投靠了ARM陣營,在OCP的項目里主要以微服務器卡(Micro-Server Card)刷存在感。

總的來說,還是Amir那個計算與存儲分離(解耦,disaggregation)的思路靠譜。Facebook在時任硬件工程經理Per Brashers和中國籍工程師晏勇等工作人員的努力下,于同一屆峰會上公開的Open Vault(代號Knox)取得了成功。這是一個寬度和高度(2 OU)都適配Open Rack的JBOD(Just a Bunch of Disks,一堆硬盤的簡單集合,無處理能力,需配合計算節點使用),共30個3.5英寸硬盤,分為上下兩層,每層有15個硬盤和一對冗余的“控制器”。電路邏輯比服務器主板簡單許多,基本上是Facebook獨力設計完成,先交由廣達生產,貢獻給OCP之后,與OCP服務器一樣有其他提供商(如Hyve Solutions和Wiwynn)生產的版本。

圖注:抽出一層(tray)共15個硬盤的Open Vault,背景機架供電區上方的2 OU設備為廣達的JBR,也是JBOD(來源:張廣彬,2013年)

Open Vault是個非常經典的設計,后面會有專門的章節展開分析。

圖注:除了CPU、內存和硬盤配置的自然更新,2013年Facebook 的Hadoop(類型4)和Haystack(類型5)服務器都用上了Open Vault,冷存儲機架更成為一種新的服務器類型(7),從硬件架構上也可以理解為一臺單控制器帶8個JBOD組成的低性能存儲系統(來源:根據Facebook數據制表)

現在,需要大容量存儲的Facebook服務器,如Type Ⅳ(用于Hadoop)和Type Ⅴ(用于Haystack,Facebook的圖片應用)都由Open Vault提供存儲,還增加了一個OCP服務器帶8個Open Vault(240個硬盤)的冷存儲(Cold Storage)類型——共18U,占據半個機架。

[page]

數據中心:RDDC與水……

如前面介紹,OCP的孕育便與數據中心建設有著密不可分的關系,Facebook貢獻的基于Prineville數據中心實踐的數據中心電氣和機械設計規范,是OCP最早的文檔之一;Facebook向OCP貢獻的冷存儲硬件設計規范包括了冷存儲數據中心地面布局的建議,冷存儲服務器就是前述的配置。

圖注:位于北極圈邊緣的Facebook Lule數據中心,景象是不是有點像前一章介紹的Google芬蘭Hamina數據中心?為Hamina數據中心提供電能的Maevaara風力發電廠就在Lule北邊不遠……(圖片來源:Facebook)

2014年3月初,Facebook數據中心設計團隊的設計工程師Marco Magarelli在OCP官網上撰文表示,瑞典Lule園區的第二座數據中心建筑(Lule 2)將采用“快速部署數據中心”(Rapid Deployment Data Center,RDDC)的概念模塊化構建。RDDC包括兩種方法,第二種“flat pack”(組合件)方式自稱效仿宜家(Ikea),不過,真正“因地制宜”的是為了適應瑞典寒冷的氣候(Lule離北極圈不到100公里)——Facebook機械和散熱工程師Veerendra Mulay在與我的交流中表示,用傳統的方法建設數據中心需要11~12個月(參見Prineville),RDDC可以縮短為3~8個月,從而盡量避開Lule下雪的季節(騰訊天津數據中心建設過程中也曾被暴雪所阻)。

  圖注:chassis方式的不同類型模塊(來源:Facebook)

第一種“chassis”(底盤)方式來源于12英尺寬、40英尺長的預組裝鋼框架,是類似組裝汽車底盤的理念:構建框架,然后在組裝線上附件部件。電纜槽、輸電排、控制面板乃至照明都在工廠預安裝好。對應的,這種模塊化方法就像搭建樂高積木。

  圖注:flat pack方式的分段組裝(來源:Facebook)

顧名思義,這兩種方法的精髓都體現了由傳統的工程項目到工廠預制產品、現場模塊化組裝的轉變。通過部署預安裝的總成和預制單元模塊、交付可預測和可重用的產品,RDDC能夠實現站點無關設計、減少現場影響、改善執行和工藝的目標,加快數據中心建設的速度,提高利用率且易于復制到其他地區。提高效率,終歸是要服務業務需求。

圖注:Prineville第一座數據中心的散熱設計,上層頂棚(對照前面Altoona數據中心的框架結構照片)對外部冷空氣和回流熱空氣進行處理,按一定比例混合

RDDC很大程度上得益于Facebook著力推行的新風供冷(fresh air cooling),沒有空調(Chiller-less)和冷卻水管道,便于實現數據中心的模塊化,另一好處是很低的PUE(約1.07)。相比之下,Google的數據中心模塊化程度雖然高,但冷卻水管道多少是個阻礙,PUE也略吃虧(約1.12)。不過,因為要靠噴水霧調節溫度和濕度,Facebook的數據中心安全性略遜一籌。

圖注:Google俄勒岡州Dalles數據中心內景,藍色的是冷水供應管道,紅色的把溫水送回致冷。鋪設水管典型的工程項目,費時費力,難以模塊化(來源:Google官網)

2011年夏天,Prineville的數據中心投入使用不久,建筑控制系統錯誤的輸送了富含水分(濕度95%)的冷空氣(80華氏度),“機房里就像飄著一朵雨云”,很多服務器遇濕重啟,或者因電線短路而自動關機。那年6月下旬,Facebook曾計劃將Prineville數據中心二期像北卡Forest城數據中心一樣,把服務器進風溫度從80華氏度(26.7攝氏度)提高到85華氏度(約29度),相對濕度從65%提高到90%,溫升(ΔT)從25華氏度提高到35華氏度,旨在減少環境的影響,并允許減少45%的空氣處理硬件。現在看來其后兩個指標只到80%和22華氏度,且只有Forest城數據中心相對濕度為90%,不知是否與這次事故有直接關聯。

圖注:Facebook三大數據中心(Prineville、Forest City、Lule)基本設計指標對比(來源:Facebook)

[page]

網絡:從邊緣走向核心

Intel在至強E5-2600的參考平臺中力推夾層卡(Mezzanine Card)設計,特別是網卡,讓高密度的機器獲得和標準(PCIe)插卡接近的靈活性。這一思想在同樣基于至強E5-2600的OCP Intel V2.0主板上得到了很好的體現,按照OCP Mezzanine Card 1.0規范設計的夾層卡,安裝位置在主板前端(冷通道側),便于維護。

就標準機架服務器而言,網卡采用夾層卡設計的緊迫性不高,還會提高成本,所以OEM大廠的響應不是很熱烈。支持者如戴爾等將靈活性作為主要賣點,以Broadcom或Intel的網卡模塊為主,希望能推動傳統企業用戶加速向萬兆網卡升級。OCP服務器則大量采用Mellanox的萬兆夾層卡,豐富的特性如能降低傳輸延遲的RoCE(RDMA over Ethernet,以太網遠程內存直接訪問)和硬件虛擬化技術SR-IOV(Single Root I/O Virtualization,單根虛擬化)也是其賣點。甚至國內OEM服務器大廠如聯想,亦在其天蝎2.0服務器節點中采用這種夾層網卡,如此“拿來主義”精神對擴大OCP的覆蓋有一定積極作用。

圖注:聯想天蝎2.0整機柜服務器節點用的就是萬兆OCP夾層卡CX341A,Mellanox ConnectX-3 EN家族的單端口10GbE網卡,以色列原廠生產(來源:張廣彬)

OCP Intel V3.0主板加入了對 OCP Mezzanine Card 2.0的支持。2.0版夾層卡新增了可選的第二連接器,以滿足未來高速網絡(如100GbE)的需求,目前來看更主要的變化是擴大了板上空間,支持的接口模塊也從1.0的2個SFP+升至2個QSFP、4個SFP+或4個RJ45/10GBASE-T的多種選擇。

圖注:OCP夾層卡V2主要有三大改進:增加連接器B、擴大板上空間、可選I/O區域(來源:OCP Engineering Workshop)

說到這里有必要指出,夾層卡屬于服務器項目。OCP在網絡項目上的起步相對較晚,從2013年才開始有規范產生,2014年逐漸壯大。

按照OCP官網上的說法,網絡項目最初的目標是開發邊緣(leaf,指ToR)交換機,然后是骨干(spine,相當于Aggregation)交換機和其他硬件及軟件方案。

圖注:三層網絡的Aggregation(會聚)/Access(訪問,如ToR)與二層網絡的Spine(枝干)/leaf(葉子)存在一定的對應關系(來源:Cumulus Networks)

網絡設備與服務器的同源性還沒有存儲設備那么高,以交換機與服務器的配比,密度早不是一個級別,擴充空間不是優先考慮的事情。已有的幾款OCP定制交換機在外形尺寸上很常規,標準RU、能裝在19英寸機架里即可,電源和風扇的布置方式也很傳統,有助于被企業市場接受。目前,OCP網絡硬件追求的是類似服務器的使用體驗乃至生命周期,包括控制平面與數據平面的高度模塊化、軟件與硬件解耦合,以實現定制的靈活性(DIY),避免被供應商鎖定。

圖注:OCP網絡項目的階段性目標,先從傳統單片式(Monolithic)交換機到軟硬件解耦,再進一步模塊化(來源:Facebook)

數據平面的核心是ASIC(如Broadcom)或FPGA,不乏支持40GbE的方案;控制平面的CPU可以是x86(如AMD的嵌入式SoC,或Intel Atom)、PowerPC(如Freescale多核PPC)、MIPS(如Broadcom多核MIPS)或ARM。截至2015年2月底,OCP已經公開了6款交換機(Accton、Broadcom/Interface Masters、Mellanox和Intel各1款,Alpha Networks有2款)的設計,其中的半數方案可以根據需要配置為ToR或會聚(aggregation)交換機。

軟件與硬件解耦,ONIE是關鍵,也是OCP網絡項目早期的重點工作。ONIE即Open Network Install Environment(開放網絡安裝環境),是一個定義用于裸金屬(bare metal)網絡交換機的開放“安裝環境”的開源項目。傳統的以太網交換機有預安裝的操作系統,拿來就用,直接管理,但會鎖定用戶;所謂的白盒(white-box)網絡交換機提供了選擇硬件的自由,但不同的CPU架構等導致異構的管理子系統,又給上面的網絡操作系統制造了困難。

[page]

ONIE定義了一個開源的“安裝環境”,將boot loader(引導裝載程序)與現代的Linux內核及BusyBox相結合,提供了一個可以安裝任何網絡操作系統的環境,有助于自動化大型數據中心的交換機(上千臺)配給,讓用戶像管理Linux服務器一樣管理交換機。

上述成果的直觀體現就是Juniper Networks(瞻博網絡)2014年12月初發布的OCX1100交換機,在Alpha Networks SNX-60×0-486F的硬件上運行基于Linux的Junos操作系統,預計于2015年第一季度上市。SNX-60×0-486F是Alpha Networks公司設計的OCP交換機,由一個BCM56854(Broadcom Trident Ⅱ)芯片提供48端口10G SFP+和6端口40G QSFP,CPU子系統為Freescale(飛思卡爾)P2020或Intel C2558,可作為ToR或會聚交換機使用。Dell(提供如Z9500-ON數據中心核心及會聚交換機)與Cumulus Networks(提供CLOS)的合作也是類似的情況。

圖注:2014年6月公開的Wedge交換機硬件設計,雙冗余供電單元,4個風扇(來源:Facebook)

沒錯,Facebook正在向核心交換機挺進。2014年6月,Facebook展示了其設計的新款ToR交換機(代號Wedge),有多達16個40GbE端口,支持Intel、AMD和ARM的CPU,配以基于Linux的操作系統(代號FBOSS)。

圖注:6-pack硬件平臺外觀,由于集中了PSU,Wedge交換機寬度更緊湊,兩兩并行放置(來源:Facebook)

2015年2月11日,Facebook宣布推出第一款開放硬件模塊化交換機“6-pack”,7RU的機箱,裝有8個基于Wedge的交換機和2個fabric卡,共6層,底下還有一層電源和風扇。作為Facebook data center fabric的核心,6-pack將使Facebook可以組建更大規模的集群,而不是將集群分為多個,并因集群間的網絡鏈路而限制集群的規模。

  圖注:6-pack內部網絡數據路徑拓撲(來源:Facebook)

Wedge和6-pack都將通過OCP公開設計規范。

反哺與變局:來自傳統廠商的支持

2014年是OCP變動很大的一年,盡管也遇到了一些困惑,但生態系統明顯壯大了起來,特別是體現出對傳統軟硬件廠商的吸引力。

1月底召開的第五屆OCP峰會上,微軟高調宣布加入OCP,風頭明顯蓋過一同亮相的IBM、Yandex、Cumulus Networks、Box、松下、Bloomberg、IO、LSI(已被Avago收購)。相比看起來像是打入內部探聽消息的IBM,微軟可謂誠意十足——貢獻了用于全球云服務(如Windows Azure、Office 365和Bing)的開放云服務器(Open CloudServer,OCS)設計作為“投名狀”。

單論數據中心的規模,微軟應該比Facebook和還在瘋狂趕進度的IBM/SoftLayer(也是10萬+服務器的Tier 2互聯網客戶)加在一起都大,把新硬件的采購換成OCP就已經是天大的喜訊了,再貢獻一組硬件設計規范及管理軟件源碼,Staya Nedella還沒上任就大赦天下?

顯然沒那么簡單,微軟也有與Facebook類似的想法。

現在OCP的服務器規范與設計頁面中,開放云服務器的資料列在最上面,在2014年的Engineering Workshop里也是服務器部分的宣講重頭。OCS的12U機箱為EIA 310-D 19英寸機架而設計,半寬的計算和存儲刀片,每U兩節點(1U2),集中風扇、PSU和管理單元(Chassis Manager),很不Open Rack,更像12U的天蝎1.0整機柜(下一章介紹)。如此看來,要把天蝎項目納入OCP,確實不是技術上的問題——只要BAT愿意……當然是在開放數據中心委員會成立之前。

2014年10月底在巴黎召開的歐洲峰會上,公布了OCS V2規范。V2的計算刀片將CPU從V1的雙路Intel Xeon E5-2400 v2(10核/CPU)升級為最新的雙路Intel Xeon E5-2600 v3(14核/CPU,v3沒有2400),內存隨之由12個DDR3-1333升級為16個DDR4-2133,支持的容量范圍也從64-192GB擴至128-512GB。計算能力大為增強,但CPU的TDP也從95W(應為E5-2470 v2)提高到120W(應為E5-2683 v3),因而每個刀片的能耗從不到250W增至300W或以上。

[page]

圖注:開放云服務器的機箱組件,機箱管理卡類似于天蝎整機柜的RMC,特點是運行Windows Server 2012 R2,微軟已開源機箱管理軟件的代碼(來源:OCP Engineering Workshop)

所以,OCS V2的機箱也進行了升級,首先是6個PSU從1400W換成1600W,N+1配置時總容量8kW,支持24個計算刀片,N+N配置時為4.8kW。付出的代價是供電的停頓時間(hold-up time)從10毫秒倍增為20毫秒,并以新的風扇匹配刀片的能耗。

刀片性能的提高,對I/O帶寬也提出了更高的要求,OCS V2每層托盤(Tray)的I/O從V1的雙10GbE和雙6Gb SAS(x4)升級為10/40GbE和雙12Gb SAS(x4),并增加了PCI Express 3.0 x16的夾層卡。

圖注:2011年微軟IT-PAC(IT Pre-Assembled Components,IT預組裝部件)中的服務器機架,看似是開放云服務器的前身,目測機架高度應該在50U以上

存儲刀片為可容納10個3.5英寸硬盤驅動器的JBOD,V2也是從V1的6Gb SAS升級為12Gb SAS,單就硬盤密度而言,每機架可達800個硬盤。V1 JBOD仍可用于V2機箱,每個計算刀片自帶4個3.5英寸硬盤(V1還支持2個2.5英寸SSD,V2增至4個,以及8個110mm M.2 PCIe NVMe模塊)。每個計算刀片可連接1-8個JBOD,即支持14-84個硬盤。

  圖注:Facebook的PB級藍光歸檔存儲系統(來源:The Register,2014年)

第五屆OCP峰會上還展示了Facebook的藍光光盤歸檔存儲系統,42U的空間內可以容納1萬個三層100GB光盤,容量達1PB,據稱可以保存信息50年。Facebook的前輩Google使用單盤容量更大的磁帶,也有歷史因素,Facebook則認為光盤代表著未來。

圖注:Google南卡Berkeley County數據中心的磁帶備份系統,這張照片以前曾被誤傳為Google的服務器(來源:Google官網)

從離線存儲的角度來看,磁帶與光盤各有千秋,短期內難分勝負。很快見效的是,2014年3月下旬,Frank Frankovsky宣布離開Facebook,去做一個基于光盤的冷存儲初創公司,但以獨立身份保留在OCP基金會董事會的位置,并繼續擔任基金會主席兼總裁。董事會里必須有Facebook的代言人,于是增補了Facebook基礎設施總監Jason Taylor,以及微軟負責云和企業業務的副總裁Bill Laing,規模擴大到7人。

  圖注:調整后的OCP組織架構(來源:OCP官網)

老牌存儲廠商EMC在2013年1月舉辦的第四屆OCP峰會上就宣布入伙,只是風頭被一起加入OCP的ARM壓過。因此,EMC World 2014上發布基于x86商用服務器硬件的ECS(Elastic Cloud Storage,彈性云存儲)設備時,就被問到是否與OCP有關。相比之下,EMC的子公司VMware就爽快得多,在2014年8月底舉辦的VMworld 2015上宣布加入OCP,尚處于技術預覽階段的EVO: RACK則明確表示基于OCP硬件——畢竟,VMware自身沒有硬件包袱。

關鍵字:FacebookOCP數據中心

本文摘自:大數網

電子周刊
回到頂部

關于我們聯系我們版權聲明隱私條款廣告服務友情鏈接投稿中心招賢納士

企業網版權所有 ©2010-2024 京ICP備09108050號-6 京公網安備 11010502049343號

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 石屏县| 什邡市| 清徐县| 闽清县| 韩城市| 平山县| 吴忠市| 九寨沟县| 公主岭市| 青冈县| 洛阳市| 龙门县| 明溪县| 安康市| 枣庄市| 蒙自县| 西华县| 吉隆县| 昆山市| 平度市| 淮滨县| 平邑县| 资源县| 凯里市| 基隆市| 金沙县| 宁远县| 婺源县| 大丰市| 阿坝| 中西区| 定日县| 神农架林区| 本溪| 平武县| 深圳市| 万源市| 云浮市| 海丰县| 常宁市| 平江县|