當網絡虛擬化不足以解決問題時

任何新技術或現有技術的迭代都會使事件變得更快、更便宜或減少運營花費。服務器虛擬化肯定能產生這些結果,而現在網絡虛擬化正在吸引越來越多的關注。然而,一些最新項目證明了虛擬化案例並不一定是這樣的。

當網絡虛擬化不足以解決問題時

按照我作爲一名安全和IT諮詢師的經驗,我曾經看到過一些客戶跟隨潮流購買了安全虛擬化產品,將許多服務都整合到一個平臺上。這樣可以顯著節省電源和減少維護費用。這一切都很好:合唱隊在看不見的地方高唱讚歌,告訴人們新技術是如何讓生活變得更好。

  但是,它並不適用於一些情況——至少一開始是不適合的。

這就是我要說的。有這樣一個例子,一個客戶在使用虛擬化框架不久之後,就遇到了一個嚴重的平臺Bug。問題的細節並不重要,但是它的影響卻很大。在虛擬化之前,這種問題的影響範圍很有限,但是共享平臺的層疊故障導致許多個業務單元發生中斷。這個問題很難修復,它需要安裝幾個補丁才能讓平臺保持穩定運行。但是,所造成的損失已經成定局。對於管理層而言,他們對於網絡虛擬化的信任已經完全消失。因此,他們提議對網絡進行全面更新;這時我開始參與項目。這個計劃是完全更換平臺,逐漸減小組織對於共享物理基礎架構的依賴。

這不是我第一次見證同類項目的發生。我已經看到過幾個案例了,客戶選擇從虛擬化網絡功能(VNF)退回到相對更爲常規的網絡設計。表面上,在分佈式集羣上運行VNF應該可以實現令人期盼的成本節約。然而,我發現它也一樣會顯著增加系統的複雜性,特別是在監控和管理方面。

  不小心的話虛擬化系統就可能影響其他運營

所有虛擬化的核心都藏着一種妥協,用戶只能減輕它的影響卻無法完全消除它。虛擬化系統共享着物理資源,即使有資源保護、調度及其他“軟”控制,虛擬化系統仍然會對各自產生負面影響。在很多時候,它們並不會互相干擾,只要有恰當的系統管理,許多系統都可以共享相同的硬件。對於大多數最終用戶而言,共享資源可以減少運營成本。

服務器、網絡和安全虛擬化技術都共享一個致命要害:每一個節點(交換機或虛擬實例)都有的軟件系統。它可能是虛擬機管理程序、共享控制面板或集羣協議。網絡/服務器/安全等組件的運行依賴於這些服務。這本身沒有問題,因爲到達臨界點之前它們都是完全可靠的。

要記住IT運營的'兩個不變事實:有Bug,也會有補丁(接下去就是人終究有死和必須交稅)。如果運氣好,問題的根源和影響都會被修復。硬件和軟件供應商會在後續的升級和自動恢復中改進產品,但是有時候這些過程不可避免地會出現錯誤。在上面的客戶案例中,問題跟蹤後發現是由於內存泄漏引起的——任何供應商都可能(也確實)會有這樣的問題。但是,一定上層作了決策,我們也不得不實施決議的計劃。

  讓虛擬鏈路重新變成物理鏈路

遷移網絡的短期影響是可以預見的:需要使用大量的銅線和機架將虛擬鏈路重新變成物理鏈路。除了這些大件的工程問題,還有許多並行流程可用於零碎部件。在完成更換之後,由於“技術水平發展”,基礎架構的總容量實際上會比以前增加了。然而,由於有更多的處理器和接口,因此跟蹤通過基礎架構的流量會變得更加困難。

在虛擬化環境中,一個集羣通常等同於一個管理接口。在物理環境中,幾十個不同的管理接口部署在一起會形成一種巨大的管理難題。雖然可以使用一些元素管理工具來創建跨越物理基礎架構的策略,但是它們還無法完全解決所有的管理問題。例如,對於管理員基於角色的訪問控制作一點點小修改都會向80臺設備發送請求。爲了解決這些模板型問題,使用自動化工具是理所當然的方法。然而,由於組織的管理層已經拋棄了像虛擬化這樣的“成熟”技術,因此可以想像他們對於NetOps風格的系統管理的態度(不會太好)。

同時,有一些小問題取代了用戶的大問題;客戶選擇對抗100只小馬,而不是一隻小馬。毫無疑問,這個公司在放棄網絡虛擬化的好處之後是在逆流而上;但是在這個案例中,可用性壓倒(幾乎)了所有其他的問題。人們其實沒有必要害怕到放棄虛擬化,但是也需要一定的執著力。而且,人們必須要有一定的剋制力,接受讓許多硬件和軟件閒置的事實,然後騎着小馬去迎接挑戰。