大家都知道互聯網是如何誕生的:是軍方需要一個冗余的“網絡的網絡”,然后解決了如何用現有網絡設備加上新的協議來實現這一目標的問題。
今天歷史似乎正在重演這一故事,我們再一次需要用現有的基礎設施來構建軟件定義網絡軟件定義數據中心。
正如孤立的網絡連接成互聯網后,世界為之改變一樣,當“數據中心”從放置在各個物理位置上的硬件中抽象出來之后,計算也正在發生質變。這樣一種無處不在的抽象能夠讓我們以一種前所未有的方式連接、匯聚和配置計算資源。
完全虛擬化的世界
軟件定義數據中心的一個重要的賦能因素就是虛擬化。我們現在可以將三大關鍵的計算資源虛擬化和池化,它們就是服務器、存儲和網絡。與此同時,我們正在逐漸接近一個復雜的臨界點,一旦到達這一臨界點,我們就能夠對這些被池化的虛擬資源進行隨心所欲的切片、切塊,以及重新組合。
這種讓軟件定義數據中心得以實現的、尚未成熟的技術就是網絡虛擬化。不過Arista、思科、微軟和VMware都在這方面下著功夫——VMware甚至為此而收購了Nicira——它們的目的都是為了讓虛擬網絡能夠預配置、預擴展,甚至可以像我們創建和遷移虛擬服務器那樣,迅速便捷地跨物理網絡進行遷移。
這么做對于實現軟件定義數據中心來說意味著什么?設想一下,我們可以根據關鍵應用的需求,只須滑動鼠標便可配置好一個數據中心,并為了滿足關鍵應用的需求而逐點配置好池化的資源。多個軟件定義數據中心可以共用物理基礎設施,每個租戶都能擁有自己的虛擬網絡,自己的身份和認證機制,而不再有傳統VLAN的可用性和擴展性限制。
演進中的各種標準
這種軟件定義基礎設施的早期案例在上周浮出水面,那就是eBay公開宣稱它正在使用OpenStack和Nicira虛擬化平臺(NVP)。但是網絡虛擬化要想發展,標準化必須首先扎根。目前的網絡虛擬化有兩個相互競爭的標準:VXLAN和NVGRE。為控制網絡交換機而構建了標準接口的OpenFlow協議堆棧支持VXLAN,而且OpenFlow還獲得了大多數網絡設備廠商的鼎力支持。
另一個大麻煩是Quantum標準,這是OpenStack項目的網絡組件。Quantum提供了應用層的網絡資源抽象,并在虛擬交換機(例如思科的Nexus產品線或開源的Open vSwitch)上配備了一個API。今年秋季我們就會看到第一個含有Quantum以及Compute(Nova)組件升級版的OpenStack版本。
雖然InfoWorld廣泛地報道過OpenStack,但我們還是要指出很重要的一點,單靠OpenStack實現不了軟件定義數據中心。它只是可接入各種解決方案——如紅帽用于服務器虛擬化的KVM,或者Nicira用于網絡虛擬化的NVP中的一個管理框架而已。但同樣清楚的是,OpenStack將在軟件定義數據中心的演進中發揮關鍵作用。為其提供支持的大廠商非VMware莫屬,它在收購Nicira的時候就承諾,要為OpenStack“帶來附加值和更多選擇”,而Nicira一直在領導著Quantum和Open vSwitch的開發。
軟件定義一切
“軟件定義數據中心”只是“云”的另一種稱呼嗎?不全對。我認為云是一個推廣應用、平臺,或者基礎設施服務給內外部客戶的的營銷術語,希望鼓勵用戶通過Web形式按需購買。而軟件定義數據中心則是一種機制,通過它,可以最有效地交付云服務。
隨著網絡虛擬化的逐步落實,對企業來說,最短期的收益就是可緩解虛擬化過程中的網絡瓶頸。虛擬機的發起和遷移已經變得過分容易,而網絡為了適應虛擬服務器負載的增加所帶來的巨大變化,其配置卻需要艱苦的手動操作。這種情形在未來幾年內將會得到改變。
但是長期來看,誰又能說出軟件定義數據中心會引導我們去向何方呢?實際上,軟件定義數據中心目前也只是剛剛開始,因為計算、存儲和網絡硬件還沒有足夠的能力去適應虛擬化一切這樣的日常開銷。
這就是我們現在要做的事情。不久之后,我們就會有能力跨各種公有云和私有基礎設施去反復試驗各種各樣的新型數據中心體系架構。這就像上世紀70年代在ARPANET工作的人沒有一個能夠預料到YouTube的出現一樣,現在也沒有人能夠預測這種自由分配和配置大量虛擬化資源的能力會把我們帶向何處。