【編者按】黑客馬拉松是程序員們的“美國偶像”,非常受歡迎,黑客馬拉松一般長達幾十個小時,參賽者累了或坐或臥,現場休息,一群高手云集一堂,在這么短暫的時間內拿出作品,對團隊成員的技術水平、身心承受能力都是一場終極考驗。本次OCP峰會黑客馬拉松冠軍Ron Herardian團隊和我們分享了這場中比賽許多不為人知的細節,成員之間相互配合,發揮各自專長,最終完美的完成整個項目,演繹24小時頭腦風暴,下面看Opencompute的Ron Herardian給我們帶來的精彩消息。
以下為譯文:
在過去的三個OCP峰會上,對開源技術和硬件懷揣著激情和夢想的工程師們走到一起,參加24小時黑客馬拉松,在此期間,他們不停地工作希望在激烈的競爭中脫穎而出。今年,三支隊伍贏得了黑客馬拉松比賽,他們中的兩位會在OCP博客上分享他們的經歷,本文來自Ron Herardian的博客,他將在此分享他們團隊獲勝的諸多細節。
每當介紹新技術,大多數工程師問的第一個問題就是它們如何讓我們的工作變的更好、更高效,在Open Compute峰會的硬件黑客馬拉松上,我們給這個問題找到了最佳的答案。
我的團隊成員來自不同的公司,我們彼此以前從未見過,Andreas Olofsson來自Adapteva, Peter Mooshammer以前在IBM工作,Jon Ehlen來自Facebook, Dimitar Boyn來自I/O Switch Technologies,還有 Rob Markovic ,一個獨立顧問,最后還有我自己,一個計算機愛好者和黑客。雖然Rob和我都熟悉來自I/O Switch 公司的Dimitar,但我們彼此并不熟悉,其他成員互相都不認識,盡管如此,我們在經過一個小時的頭腦風暴之后,彼此之間配合的非常默契而且一項雄心勃勃的計劃逐漸浮出水面。
我們選定的項目叫做Adaptive Storage(自適應存儲),在這里網絡上的計算和存儲資源將是松散耦合的,而且是獨立可擴展的,從而優化大數據平臺Hadoop。該項目使用基于RISC處理器(ARM)的微型服務器和連接網絡的磁盤驅動器來創建Hadoop 數據節點。I/O Switch提供了一塊能夠使磁盤驅動器直接連接網絡交換機的印制電路板。Hadoop微服務器節點可以控制網絡上一個或多個磁盤驅動器,但任何微服務器可以讀任何磁盤驅動器,這將使它能夠在公共網絡交換機中靈活、動態地重組計算和存儲資源,如果成功,Adaptive Storage可以用來消除Hadoop的hotspots和coldspots。
從一開始,整個團隊對新的Parallella微服務器在云供應商和大型企業中的前景非常看好,盡管它似乎更適合業余愛好者或者教育市場。Parallella是一個強大的、靈活的可擴展計算平臺。Parallella計算機擁有雙核Zynq Z-7020 ARM A9處理器,外加16核Epiphany Multicore加速器,以及1GB的RAM,它還內置千兆以太網、 USB、HDMI以及50GB/S擴展連接器。
Parallella 微服務器
Adaptive Storage的概念是由Dimitar和Andreas受其他團隊成員的啟發而來的,這個項目需要在網絡上獲取松散耦合分布式Parallella計算能力來存儲資源,這需要通過AoE將磁盤驅動器連接到網絡,以及在Parallella Hadoop 數據節點上運行開源 AoE驅動。Adapteva提供Parallella硬件和Linux發行版,I/O Switch提供AoE到SATA的印制電路板(“AoE使能器”),以及其他硬件設備來構建測試實驗室環境。
I/O Switch AoE 使能器
黑客們需要構建一個自定義編譯Linux內核和開源驅動程序代碼,團隊的每個成員迅速發揮他們的專長,Andreas 在Parallella平臺以及ARM處理器Linaro Linux上的有著豐富的實踐經驗,這對我們項目至關重要;Jon在演示Parallella存儲節點和I/O Switch AoE使能器如何在真正的數據中心部署方面幫助很大,他還負責整個項目的實際用例和3D CAD制圖;除了解決許多問題,Peter成功的將整個軟件棧部署到虛擬機環境中給了團隊信心,這使我們的目標可以如期實現;Rob和我準備測試實驗室,以及負責故障排除工作、協調團隊,以及臨時到最近的電子商店購買設備,準備項目的演示等。
整個團隊工作到1月28日周二深夜,Dimitar和Andreas在夜里輪流對自定義的Linux內核啟動運行、在Parallella平臺上部署Hadoop。凌晨1點左右,試驗臺Parallella電腦在內核編譯時過熱,我們將風扇抬高使之遠離I/O Switch Hailstorm存儲附件,并從另一個團隊借來線將風扇和Parallella板連接起來,最終很快解決了這個問題。
Adapteva CEO:Andreas Olofsson, .
經過24小時的努力,我們順利的完成我們的項目,Dimitar在現場做了詳細的演示,并且耐心的問答了觀眾的提問,包括如何使用Adaptive Storage在可擴展對象存儲上實現Seagate的 Kinetic存儲API或Amazon S3 RESTful API。
I/O Switch Technologies CTO:Dimitar Boyn,
在Adaptive Storage上,磁盤驅動器是直接連接到網絡交換機的,沒有傳統的存儲陣列。Hadoop的Parallella微服務器也連接到交換機,它們當中的每一個都可以為一個或多個磁盤驅動器處理數據。因為每一個磁盤驅動器都通過I/O Switch AoE 使能器PCB單獨連接到網絡,任何微服務器可以讀取任何磁盤驅動器,這意味著微服務器可以聯合起來處理復雜的事務或更大的數據集。
我們的設想是微服務器可以按需結合和動態重組,因為額外的微服務器可以自動被加入進來處理復雜的事務或大型數據集,Adaptive Storage是彈性計算,額外的物理微服務器可以隨時添加到網絡交換機,獨立存儲。
同樣的,任何微服務器可以接管網絡上未賦值的磁盤驅動器來進行特定的寫訪問,不需要時可以釋放它們,這也是按需進行的,因此Adaptive Storage是彈性存儲。額外的物理磁盤驅動器可以隨時被添加到網絡,獨立計算。
除了引人注目的省電特性和獨立性、計算和存儲資源的彈性可擴展,Adaptive Storage可以很容易消除Hadoop上的計算hotspots和coldspots,但Adaptive Storage的概念和方法并不局限于Hadoop。它可以應用于任何大數據技術,如Cassandra 、MongoDB或常規的對象存儲。例如Adaptive Storage是Seagate Kinetic的有效補充,因為Kinetic API可以在微服務器上運行,管理網絡上一個或多個磁盤驅動器。
實際上,Facebook的1/2寬度Knox OCP系列小型計算機系統接口擴展板可以很容易被全寬度的Adaptive Storage基線板取代,并且在這上面可以安裝插件導軌以及擴展卡/底板,整個結構支持金屬支架,從機械和制造業的角度來看這個結構非常簡單。
Adaptive 存儲基線板
短短的24小時內,在沒有預算的情況下,我們團隊的工程師僅僅利用幾臺電腦、電路板和網絡設備開發出一種全新的方式來組織Hadoop 數據節點、構建和演示一個基于ARM處理器的微型服務器使用開源軟件的工作模型,并且繪制出了可投入生產的CAD圖紙。
經驗告訴我們,研發一個類似的項目在一個大型技術公司可能需要幾個月,這可能就是我們參加OCP峰會為什么這么開心的原因。我們不能肯定Adaptive Storage是否在未來一直適用,但我們都很興奮,許多公司和個人采訪我們的黑客,他們被看到的迷住了,想繼續發展這個項目。這一切讓我們增加了對開源和OCP的信心,我們能夠使用開源技術來構建一些偉大的東西,未來我們將和更多志同道合的人們繼續構建、創新和發展開源技術。
以“
云計算大數據 推動智慧中國 ”為主題的
第六屆中國云計算大會 將于5月20-23日在北京國家會議中心隆重舉辦。產業觀察、技術培訓、主題論壇、行業研討,內容豐富,干貨十足。票價優惠,馬上
報名 !
原文鏈接: OCP Hackathon Winner: Adaptive Storage (編譯/魏偉 審校/毛夢琪)