【CSDN編譯】已經有越來越多人的達成共識,對於整個世界而言Google的數據中心就是一臺計算機。計算機的所有硬件資源(CPU、內存、存儲)都是可替代的,身處兩地的硬件也是可以互相替換的,計算機不再有明確的所有人,它已經進化成服務的一部分。
FDS架構
Google是怎麼做到的呢?正是採用了已經被驗證過的系統架構和技術 ,幫助數據中心帶來了深不可測的性能提升。MapReduc就是其中最著名的技術,被廣泛應用於存儲節點。
此外,採用了全新的網絡拓撲,並使用全新的軟件架構,這樣你就可以將數據自由的存儲在任何你希望它在的地方。數據中心儼然變成了計算機。
在服務器端,每個節點擁有8個PCI-E 3.0接口,提供高達每秒8GB的雙向帶寬,我們有足夠的I/O來延續摩爾定律,飢餓的CPU野蠻的吞噬着數據包。未來,SoC將集成網絡接口,提供更快的速度。
接下來的挑戰是讓網絡如何工作。今年5月,微軟利用分佈式系統FDS創造了新的MinuteSort世界紀錄(速度比採用Hadoop架構的Yahoo快了三倍,所用硬件資源只有後者1/6。),它展示瞭如何提供對等帶寬(bisectional bandwidth)的方法,讓每臺計算機之間都能全速傳輸數據,這讓數據存儲在遙遠的地方變得可能,數據不需要必須存儲在當地的數據中心中。
建立一個負擔得起的對等網絡是需要絞盡腦汁選擇方法的。基本的原則包括改變協議,更換路由器,或者更換主機託管商。微軟給出的答案是更換託管商,並增加了集中控制層。
微軟在VL2中詳細說明了這一改變,VL2是一套可擴展並十分靈活的網絡架構:
一個可用的網絡架構可以通過擴展支持巨大的數據中心,並保證統一的高容量帶寬,各個服務器擁有獨立的帶寬。VL2使用:(1)扁平尋址,這可以允許服務實 例被放置到網絡覆蓋的任何地方,(2)負載均衡將流量統一的分配到網絡路徑,(3)終端系統的地址解析拓展到巨大的服務器池,並不需要將網路複雜度傳遞給 網絡控制平臺。
VL2的核心思想是使用CLOS拓撲結構建立扁平的第二層網絡。這樣做的好處是,虛擬機在數據中心內任意移動,都永遠不用改變IP地址。關於網絡第二層ARP廣播問題,通過改變ARP,並集中註冊服務來解決。將不再產生廣播風暴。
這種方法看上去很奇怪,不過我參加了Hot Interconnects大會,關於VL2的整個方案充滿智慧。方案的成果顯而易見,成本低、高帶寬以及更低的東西部間的延遲,這一切都基於先進的軟件架構。不過它不支持任意路由vSwitch的方法這一特性,這意味着你不能採用未來可能出現的效率更高的拓撲結構。
微軟已建立FDS基準代碼,並在其基礎上發佈了Blob Storage系統:
值得一提的是,在我們的系統中沒有計算節點使用本地存儲的數據,我們相信FDS系統極具競爭力。總過1470GB數據全部存放在遠程,在一分鐘內總共傳輸了4.4TB數據。
FDS總是在網絡上發送數據。FDS採取兩種方式減少數據傳輸成本。首先,我們給每個存儲節點開通的網絡帶寬與其存儲帶寬匹配。SAS磁盤的讀取性能達到120MB/s,或約1Gb/s,所以在FDS集羣存儲節點總是至少提供1Gb的網絡帶寬。第二,我們在存儲節點與計算節點間使用了對等帶寬網絡, 即CLOS拓撲結構,在Monsoon項目中採用了這一架構。這兩種方式將在遠程的CPU和磁盤間融合建立互補干擾的通道,使系統的總I/O帶寬基本上等 同於使用本地存儲系統,如MapReduce。FDS其性質允許任何計算節點訪問任何數據,並具有同等的吞吐量。
作爲分佈式文件系統FDS已經成爲數據中心核心的架構組件。
通過10/100 Gbps網絡和VL2以及FDS技術,我們取得了不錯的進展,數據中心資源池內的CPU、內存、存儲均做到可替換。但網絡仍然是不可替代的,儘管我並不確認這意味着什麼。SDN將幫助網絡成爲第一級對象,但是由於性能的原因,網絡永遠不能真正的與拓撲結構脫離。(編譯/包研)