Peter Sayer
開放計算項目(OCP)在2011年啟動,Facebook在當時公布了一些其自制服務器的設計,這些服務器旨在讓Facebook的數據中心更為高效地運行。
Facebook希望其他的公司能夠采用和修改他們的最初設計,在降低成本的同時提升質量。他們確實做到了:針對開放計算項目設計的硬件銷售額在2017年達到了12億美元,這一銷售額是上一年度的兩倍,預計到2021年有望達到60億美元。
在IHS Markit的評估中,這些數字排除了OCP委員會成員Facebook、英特爾、Rackspace、微軟和高盛在硬件方面的開支。上述這些公司均在一定程度上使用OCP。這部分的開支仍然只占數據中心系統總體市場的一小部分。據Gartner預測,整個市場在2017年達到1780億美元。雖然Gartner預測整個市場到2019年將進入停滯期,但HIS預測OCP部分將以每年59%的速度增長。
部署OCP的原因
當Facebook為他們位于俄勒岡州普賴恩維爾的首個專用數據中心設計硬件時,他們希望能夠在能源、材料和資金這三個方面實現節約。
通過降低能源供應損耗和將服務器設計的更高,Facebook有效地提升了能源效率。服務器設計的更高可以為更大且更為高效的散熱片留出空間,這也意味著可以使用直徑更大的風扇,從而只需要很少的電力就可以讓更多的空氣流動起來。
通過取消無用的面板、涂裝、標志、不需要的擴展插槽和組件(如視頻卡,甚至是安裝螺釘),每臺服務器節省了超過6磅重的材料。
由于不用為未消耗的電力或未使用的部件付錢,這勢必會降低成本。另外,它們還節約了勞動力:沒有了安裝螺釘,拆裝服務器都非常便捷;標準化節約了處理備件的時間,整個系統可以更為迅速地部署。
部署OCP面臨的障礙
在2018年的開支研究中,IHS Markit認為OCP硬件部署主要面臨三大障礙,分別為:安全、貨源和整合。
向所有人公布OCP硬件制造規范的一個風險是任何人都可以制造。這導致別有用心的人在交付前會篡改它們,并且誰也不會知道。換句話說,供應鏈的安全是一個很大的問題。
安全
在2018年3月于美國圣何塞召開的OCP峰會上,OCP領袖們表示,他們正在通過創建新的安全項目(Security Project)來解決供應鏈安全問題。新的安全項目重點是制定一個標準的硬件接口和協議,以確保啟動代碼的完整性。
微軟已經貢獻了他們的Project Cerberus。Project Cerberus為符合《NIST 800-192平臺固件防災指南》的主板固件的硬件信任根。
他們以此為基礎還計劃開發安全固件API、針對專用安全硬件的開源固件、安全的固件配置方法,以及能夠核實所有易變存儲(包括BIOS、微控制器和復雜可編程邏輯器件CPLD的閃存)和確保安全的工具。在這方面,正在接收OCP硬件的企業能夠確保收到的硬件只能運行他們希望運行的固件。
該項目的主管并不擔心新的硬件,相反他們正在考慮的是二手設備。為了確保轉售市場的安全,他們將考慮提供可以將硬件從不安全或不受信狀態恢復過來工具和能夠追蹤和修改硬件所有權的工具。
軟硬件整合
將硬件和軟件整合起來比較容易,自從微軟加入到OCP委員會并貢獻出了用于向客戶交付Azure服務的機架和服務器設計后,在操作系統層面的整合變得尤為容易。目前在其他層面的整合工作還在繼續,包括能夠讓OCP服務器啟動的最底層固件。
另一個新的OCP方案——開放系統固件項目(Open System Firmware Project)也希望解決這一問題。該項目致力于將初始化服務器芯片組的代碼實現開源,以讓其能夠被用于不同平臺和不同類型的處理器上。此外,該項目還打算以UEFI和Linux Boot項目為基礎為所有的云操作系統和數據中心的處理器架構提供支持,包括GPU、FPGA和針對機器學習等應用進行專門優化過的硬件。
隨著開放計算硬件逐步在網絡虛擬化中占據一席之地,OCP還在著手將開放軟件和硬件整合在一起。思科系統和瞻博網絡等傳統網絡設備廠商也在緊張地將兩者整合起來,向用戶交付為專利軟件量身打造的專利硬件。
如今,OCP正在與Linux基金會合作將他們的硬件與后者網絡功能虛擬化開放平臺(OPNFV)軟件整合在一起。近期,這兩個組織承諾將聯合測試硬件和軟件產品以確保產品符合各自的規范。
到哪里購買OCP設備
尋找開放計算項目硬件的貨源已經變得非常容易了。該項目的網站上有一個市場頁面,我們可以在這里研究設備規范和聯系開放計算項目廠商。
目前已經有100多款產品獲得了OCP授權或認證。OCP授權標簽僅供那些完全符合當前OCP規范且由OCP銀牌、金牌或鉑金成員制造的產品使用。OCP認證產品可由任意廠商制造,但是必須要完全符合當前OCP規范同時必須要提供開源設計文件。
開放計算項目硬件的類型
雖然項目的早期重點是OCP服務器和電力供應,不過如今該項目已經逐漸將機架、存儲和開放計算項目網絡也納入其中。該組織目前已經接受了開放的Wi-Fi硬件規范。
OCP服務器盡管是以簡單的商用設備為出發點,但是它們正在逐漸發生變化,因為針對不同工作負載的專用服務器和機器學習應用對計算的需求正在影響著設計。
Facebook正在持續推動OCP服務器的發展。在2018年美國圣何塞OCP峰會上,Facebook展示了他們的第三代機器學習平臺Big Basin v2。該平臺使用的是Nvidia Tesla V100 GPU,與之前Big Basin v1使用的P100相比,這是一個很大提升。新處理器在性能方面提升了大約三分之二。對此,Facebook稱得益于對Big Basin設計上的一些調整,除了處理器數量有所增加,平臺保持了幾乎全部的優點。
Facebook還展示了一個名為Fabric Aggregator的新系統。該系統被設計用于連接同一區域內的相鄰數據中心,以及將數據中心區域與其他數據中心區域相互連接。通過使用Facebook自己的OPC 100G交換機、Wedge 100和FBOSS(Facebook開放交換系統)軟件,Fabric Aggregator允許類似Facebook的網絡公司獨立地擴展區域內和區域間流量。
微軟也希望能夠分享開放交換市場。其容器化的SONiC(云端開放網絡軟件)已經進入到了邁勒羅斯科技(Mellanox Technologies)公司的新設備當中,允許企業將本地的架頂交換機遷移至Azure云上。這使得微軟能夠將硬件廠商的銷售額為自己的云服務所用。
通過另一個OCP方案,微軟不再修改存儲市場的架構。閃存設備和存儲子系統制造商對于處理地址映射、垃圾收集和損耗均衡的信息應當駐留在何處并沒有達成一致意見。將這些信息放在存儲子系統中對于工作站或消費級設備具有意義,但是在云服務功能中,例如垃圾收集,如果控制器不知道數據來自何處,那么處理將會變慢并出現浪費。這也是為什么存儲系統緩存通常會混雜著來自不同應用和虛擬機的數據——在不同時間將被釋放出來的數據。借助于Denali項目,微軟希望讓OCP存儲設備制造商將這一信息轉移至更高層的堆棧上,從SSD驅動器轉移至主機上,從而允許其為特定的工作負載修改驅動器行為方式。