IT標(biāo)準(zhǔn)化和商品化的后果之一是谷歌的數(shù)據(jù)中心是計算機(jī)對世界的看法。在所有計資源中,包括CPU,內(nèi)存,存儲都是可替代的。無論獨立的位置,還是配件它們是可以互換的。未來,PC將失去失去主導(dǎo)地位,僅僅成為IT服務(wù)的一部分。
▲數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)圖
訪問失敗已經(jīng)是商業(yè)數(shù)據(jù)中心的最糟糕表現(xiàn),引起這個問題的原因源于現(xiàn)在的網(wǎng)絡(luò)結(jié)構(gòu)狀態(tài)上更容易搭配。MapReduce的著名代碼也正因為如此而存儲到各個節(jié)點。
網(wǎng)絡(luò)環(huán)境的變更和假設(shè)條件的改變,將驅(qū)動軟件基礎(chǔ)架構(gòu)驅(qū)動的更改。這將促進(jìn)將數(shù)據(jù)存儲在任何地方,并讓移動計算轉(zhuǎn)移到你希望的任何地方。該數(shù)據(jù)中心將成為云端計算機(jī)。
在主機(jī)端,擁有運行在PCI-Express 3.0上的x8插槽的傳輸速度能夠在雙向提供8GB/sec(即字節(jié))的帶寬,這樣我們有足夠的IO資源利用核心包。在未來的系統(tǒng)單晶片架構(gòu),集成網(wǎng)卡到CPU中,將有可能甚至更快的速度。現(xiàn)在我們一個完全獨立的問題:為什么我們?nèi)栽谑褂肨CP協(xié)議,造成擁擠的數(shù)據(jù)通過在數(shù)據(jù)中心操作系統(tǒng)的堆棧。
接下來的難題是,如何使網(wǎng)絡(luò)工作。帶寬重生的關(guān)鍵是微軟的MinuteSort FDS(Flat Datacenter Storage),它展示了如何在一個網(wǎng)絡(luò)中足夠的平均分配網(wǎng)絡(luò)中的每一臺計算機(jī)全速發(fā)送數(shù)據(jù),它允許將數(shù)據(jù)存儲在遠(yuǎn)程的每一臺計算機(jī),這意味著FDS不會由有在本地存儲了。
對等帶寬到底是什么?就像畫一條線平分了整個網(wǎng)絡(luò)帶寬,一側(cè)上的服務(wù)器可以與另一側(cè)上服務(wù)器進(jìn)行通信的通信速率。有足夠的平分帶寬的任何服務(wù)器可以與任何其他服務(wù)器的完整的網(wǎng)絡(luò)速度。
為什么我們不是很好的對等網(wǎng)絡(luò)帶寬么?我們通常有發(fā)送,而不是東西南北交通網(wǎng)絡(luò)優(yōu)化。我們經(jīng)常做一些網(wǎng)絡(luò)優(yōu)化,從橫向到縱向。縱向意味著你的服務(wù)器是跟某個客戶端在互聯(lián)網(wǎng)上。橫向是指你所談?wù)摰搅硪慌_服務(wù)器的數(shù)據(jù)中心內(nèi)。前云的軟件架構(gòu)主要是縱向溝通,客戶在互聯(lián)網(wǎng)之外。橫向是后臺云軟件的功能是通過對話主要是為了彼此,只有少數(shù)卷須的大型集群。回想一下,谷歌如何倡導(dǎo)大量分列架構(gòu),它一個單一的網(wǎng)頁可能需要1000個請求。大量分列架構(gòu)的結(jié)構(gòu)是新的常態(tài)。
我們都知道,數(shù)據(jù)中心網(wǎng)絡(luò)沒有跟上的軟件體系結(jié)構(gòu)的變化,但實際情況可能比我們知道的更糟。為了支持多為縱向的通信的能力,數(shù)據(jù)中心常使用了一個樹型拓?fù)浣Y(jié)構(gòu)的核心,匯聚層和接入層。這個觀點是,頂路由的網(wǎng)絡(luò)有足夠的帶寬來處理所有流量,所有的機(jī)器的樹中的。如果經(jīng)濟(jì)實力雄厚可以購買很多高層網(wǎng)絡(luò)設(shè)備,如240-1。但如果你想談?wù)摰綌?shù)據(jù)中心中的一臺機(jī)器中的其它部分的,這個選擇是不明智的。
創(chuàng)建一個負(fù)擔(dān)得起的對等帶寬的網(wǎng)絡(luò),需要更周到的態(tài)度。基本的選項似乎是改變的協(xié)議,改變路由器,或者改變主機(jī)。微軟想出的方法是,更改主機(jī)集中控制,并添加了一層。
VL2全面介紹:一個可擴(kuò)展的,靈活的數(shù)據(jù)中心網(wǎng)絡(luò)
一種實用的,可擴(kuò)展的網(wǎng)絡(luò)架構(gòu),以支持龐大的數(shù)據(jù)中心與服務(wù)器之間的服務(wù)之間的隔離性能,以太網(wǎng)第2層語義的統(tǒng)一的高容量。 VL2用途(1)平面尋址允許服務(wù)實例被放置在網(wǎng)絡(luò)中的任何地方,(2)Valiant負(fù)載平衡,以分散交通均勻地分布網(wǎng)絡(luò)路徑,以及(3)基于終端系統(tǒng)的地址解析擴(kuò)展到大型服務(wù)器池,不引入到網(wǎng)絡(luò)控制面的復(fù)雜性。
總的想法是創(chuàng)建一個使用CLOS拓?fù)浣Y(jié)構(gòu)的扁平二層網(wǎng)絡(luò)。虛擬機(jī)永遠(yuǎn)保持自己的IP地址,并且可以任意移動的數(shù)據(jù)中心。有關(guān)L2 ARP的廣播問題的回避,通過改變ARP使用一個集中的登記服務(wù),解決地址。沒有更多的廣播風(fēng)暴。
這似乎很奇怪,但我參加過一次談話熱器VL2和做法是相當(dāng)聰明,似乎是合理的。結(jié)果提供了低成本,高帶寬,低延遲的現(xiàn)代軟件架構(gòu)所需要的東西流。有一個特點,這似乎是缺少的路線任何地方的vSwitch的類型方法。你不能只是覆蓋在性能上的基本拓?fù)浣Y(jié)構(gòu)是不支持的。
現(xiàn)在你有這樣的超級冷卻數(shù)據(jù)中心的拓?fù)浣Y(jié)構(gòu),你用它做什么呢?微軟實現(xiàn)了一個版本的MinuteSort基準(zhǔn),3倍的速度比Hadoop的,排序的數(shù)據(jù)量的近3倍,約六分之一的硬件資源(1,033跨越250臺機(jī)器與5624跨1406機(jī)器的磁盤)。
在微軟FDS分布式存儲系統(tǒng)上建立了基準(zhǔn)代碼
FDS總是在網(wǎng)絡(luò)上發(fā)送數(shù)據(jù)。 FDS減輕了在兩種方式中的數(shù)據(jù)傳輸成本。首先,我們給每個存儲節(jié)點的網(wǎng)絡(luò)帶寬相匹配的存儲帶寬。 SAS磁盤的讀取性能約120MByte/sec,或約1千兆位/秒,因此在我們的FDS集群存儲節(jié)點總是至少有盡可能多的千兆位的網(wǎng)絡(luò)帶寬,因為它有磁盤配置的。第二,我們連接的存儲節(jié)點,計算節(jié)點采用了全平分帶寬的網(wǎng)絡(luò),特別是,CLOS網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),使用中的項目,如季風(fēng)。這兩個因素相結(jié)合,產(chǎn)生一種不擁擠的路徑從遠(yuǎn)程磁盤到CPU,使系統(tǒng)的總I/ O帶寬基本上等同于使用本地存儲系統(tǒng),如MapReduce的。是,當(dāng)然,潛伏期成本。然而,F(xiàn)DS其性質(zhì)允許任何計算節(jié)點訪問任何數(shù)據(jù)具有同等的吞吐量。
VL2和FDS的方式和技術(shù),如10/100 Gbps的網(wǎng)絡(luò)上,我們已經(jīng)取得了良好的進(jìn)展,在CPU,RAM,可替代的資源池,數(shù)據(jù)中心內(nèi)的存儲。網(wǎng)絡(luò)仍然是不可替代的,雖然我不知道那意味著。軟件定義的網(wǎng)絡(luò)將幫助網(wǎng)絡(luò)成為第一類對象,這似乎接近,但出于性能方面的考慮,網(wǎng)絡(luò)永遠(yuǎn)無法真正從下面的拓?fù)浣Y(jié)構(gòu)可以迎刃而解。
從這些發(fā)展中,我們能期待什么?互換性是一個真正的更深層次的商品化,我們希望看到對資源的破壞為基礎(chǔ)的方法不對稱,甚至更高級別的組織,更高水平的消費,開發(fā)新的最佳做法,甚至應(yīng)該推動更高水平的自動化生態(tài)系統(tǒng)中的空間更激烈的競爭。