網路虛擬化(Network Virtualization)與軟體定義網路(Software Defined Network)是兩種常被混用,但意義截然不同的概念。但無論是哪一個都是在建置新型態資料中心時,應該要審慎考量是否納入的架構。
在上面的描述內,我們可以看出在新型態資料中心內的幾個重要特點:IT功能虛擬化至軟體內運作、硬體以資源池的方式承載現有與新業務需求且能動態擴充、業務單位的部署與維運達成自動化與集中化。
此時,我們可以開始思考一個問題:在這樣的新型態資料中心內,透過各虛擬化廠商如VMware、Red Hat、Microsoft等所提供的虛擬環境(vSphere ESXi/KVM/Xen/Hyper-V),以及建立雲自動化部署、管理及維運的雲管理平台機制如vRealize Automation、OpenStack等,資訊系統於運算部分所需要的快速部署與維運機制,已經都可以達成上述的業務需求,虛擬機器在數分鐘內就可以建立。但這個資訊系統所需的網路、安全、可靠性等需求呢?畢竟一個資訊系統不是僅由虛擬機器組成,還包括了:
·資訊系統對內對外的連接:網段設計、路由接取、VPN連結機制。
·系統可靠度:如負載平衡與健康檢查的需求。
·系統安全:像是要確保各個關鍵構件都能取得需求的防火牆、入侵防護、應用檢查、防毒掃描等安全機制防護。
此時就能夠回到文章開頭所詢問的問題:「網路虛擬化與軟體定義網路分別在新型態資料中心內的角色為何?」我們將這兩個機制解釋如下:
資料中心內的網路虛擬化(Data Center Network Function
Virtualization)
網路虛擬化指的是在資料中心內所需求的網路與安全功能,能夠以內建於虛擬化軟體(Hypervisor)中,或是以網路虛擬機器(Network Virtual Machine)的方式,在業務單位需求時動態建立以提供需求的網路與安全功能。這些網路功能是以抽象化、虛擬化的方式於軟體方式提供,與底層硬體網路架構無關,當然也不綁定廠牌與硬體型號。
也就是說,當一個新的系統或業務要建立時,除了所需要的虛擬機器與應用外,這個系統底層所需要的網段及路由設定、防火牆與其他相關的安全檢查需求、負載平衡需求、VPN設定等,都可以依照實際需求在系統建立時,動態地向網路虛擬化系統要求對應的構件,並組態所需的網路設定及功能。
用戶不再需要為特定業務系統額外去購買新的網路設備,或更動底層的硬體網路設備組態。就像是伺服器虛擬化一樣,相關的網路功能可以虛擬地在x86伺服器上隨需提供,如同圖2的類比。
|
▲圖2 伺服器虛擬化與網路虛擬化的類比。(圖片來源:VMware Public Slide) |
藉由在底層透過x86伺服器與高速網路設備的介接,網路虛擬化系統能於資源池內提供所需的L2?L7網路與安全服務,不僅僅是運算,包括網路與安全的功能也都可以在虛擬化環境內同時產出。
建立自動化的軟體定義網路機制(Software-Defined Network)
一個軟體定義網路系統的特性是能將需求的網路功能轉發層(Data Plane/Forwarding Plane)建立在不同的分散端點:可能是硬體網路設備、x86虛擬平台、或甚至是單一作業機器的網路構件內來進行運作。但包括邏輯網路的拓撲、轉發的資訊、端點位置以及組態設定的功能,則集中至控制層(Control Plane)集中進行。
同時,各個網路功能夠透過可程式化、自動化的方式,以API的方式供外部系統呼叫或進行程序編寫。圖3是以VMware NSX的架構來簡要說明軟體定義網路的Control Plane/Data Plane區分。
|
▲圖3 NSX基於軟體定義網路架構進行設計。(圖片來源:VMware Public Slide) |
軟體定義網路系統能夠提供資料中心下列的優點:
·提供的網路與安全功能可供外部的雲管理平台(Cloud Management Platform)進行呼叫,或供開發團隊以程序化方式,進行自動化與動態的部署。
·跳脫傳統網路要一台一台Hop-by-Hop的設定與管理方式,IT單位可以利用統一的管理介面進行所有的網路及安全需求組態與維運。
·區分轉發層(分散於各台Hypervisor)與控制層(集中於Controller),控制層有出現失效狀況時,用戶的現有網路運作仍能進行運作。
網路虛擬化及軟體定義網路 相輔相成但未必共存
需要強調的是,網路虛擬化與軟體定義網路是兩個相異且不見得必定共存的觀念。軟體定義網路的重點在於將傳統的分散式硬體網路架構轉換為集中式且可程式化部署的架構;而網路虛擬化在強調的是網路功能與硬體的脫鉤。
舉例來說,Cisco ACI方案是軟體定義網路系統但非網路虛擬化方案,因為整個Cisco ACI是架構於Nexus 9000系列特定硬體上,與硬體設備直接綁定。Brocade Vyatta Router則是將路由功能以虛擬機器方式提供(網路虛擬化),但需要搭配Open Daylight架構才能做到軟體定義網路。VMware NSX方案則是同時提供網路虛擬化以及軟體定義網路功能。
但上面的說明應該可以看出,網路虛擬化以及軟體定義網路對於要建立新型態的資料中心時,確實都是不可或缺的角色。藉由將網路功能虛擬化,企業可以利用通用型的硬體建立底層的資源池,無需受到單一廠商或單一型號硬體的桎梏,也無須在需求特定功能時,一定必須購買特定的設備;網路功能可以隨需求動態產出,也可以在資源池的範圍內,跨越系統、業務甚至地域提供。
而藉由軟體定義網路,外部的雲管理平台可以將業務系統需求的網路與安全功能集中地進行部署與變更,IT維運管理工作或是測試環境的準備,也都能簡易地以可程式化的方式進行編寫與呼叫。沒有這些功能,一個雲環境將只能是一朵跛腳的雲:可以快速部署虛擬機器,但其他網路、安全、負載平衡等等功能仍須手動提供,大幅拉長系統上線的時間;且資料中心的建置與管理仍會受到傳統硬體環境的限制,延展性與彈性都會大幅受限。
結語
希望透過上面的敘述,能讓讀者對於網路虛擬化/軟體定義網路的功能與效益有初步的了解,並對於企業環境內是否應該要走向這樣的架構,能夠提供一個系統化的看法。
<本文作者:饒康立,VMware資深技術顧問,主要負責VMware NSX產品線,持有VCIX-NV、VCAP-DTD、CCIE、CISSP等證照 ,目前致力於網路虛擬化、軟體定義網路暨分散式安全防護技術方案的介紹與推廣。>