網(wǎng)絡(luò)自動化編排技術(shù)淺析
一、 什么是網(wǎng)絡(luò)編排?
編排(Orchestration),最早出現(xiàn)于藝術(shù)領(lǐng)域,指的是按照一定的目的對各種音樂、舞蹈元素進行排列,以期達到最好的效果。引申到IT網(wǎng)絡(luò)管理范疇,指的是以用戶需求為目的,將各種網(wǎng)絡(luò)服務(wù)單元進行有序的安排和組織,使網(wǎng)絡(luò)各個組成部分平衡協(xié)調(diào),生成能夠滿足用戶要求的服務(wù)。網(wǎng)絡(luò)編排實際上是用網(wǎng)絡(luò)抽象語言定義一個從用戶到業(yè)務(wù)服務(wù)的網(wǎng)絡(luò)管道的過程。編排后得到的、能滿足自動化部署要求的網(wǎng)絡(luò)服務(wù)需要具有快速部署、動態(tài)調(diào)整、重復(fù)使用的能力。(如圖1所示)
圖1 網(wǎng)絡(luò)服務(wù)編排
二、 為什么需要網(wǎng)絡(luò)編排?
在云計算時代,IT管理人員面臨著各種各樣的難題(如圖2所示)。這些難題給網(wǎng)絡(luò)服務(wù)帶來了怎樣的影響,該如何看待網(wǎng)絡(luò)編排?
圖2 服務(wù)的三個困境
以某企業(yè)IT業(yè)務(wù)常規(guī)的部署為例,其要部署一個Exchange郵件服務(wù)器,并為市場部門提供服務(wù)。首先系統(tǒng)管理員進行計算資源的部署,然后網(wǎng)絡(luò)管理員根據(jù)要求配置接入交換機的網(wǎng)絡(luò)資源,并根據(jù)需要對匯聚以及更上層節(jié)點進行網(wǎng)絡(luò)調(diào)配。考慮到市場部門人員使用該服務(wù)時,可能從公司內(nèi)部、分支辦事處、外出移動辦公等不同地點采用LAN、VPN等方式接入,還需要在路由器網(wǎng)關(guān)、防火墻等節(jié)點進行網(wǎng)絡(luò)調(diào)配。(如圖3所示)。
圖3 IT業(yè)務(wù)常規(guī)部署模式
在這個操作過程中,計算資源的自動化交付因為服務(wù)器虛擬化技術(shù)的廣泛應(yīng)用而比較容易實現(xiàn),系統(tǒng)管理員可以以自助的方式申請VM資源服務(wù)并部署Exchange VM image。相對于計算資源的點狀結(jié)構(gòu),網(wǎng)絡(luò)由于其更為復(fù)雜的網(wǎng)狀和層次結(jié)構(gòu),實現(xiàn)完全自動化部署比較困難;常規(guī)模式下的手工操作或借助于管理工具的操作,需要對網(wǎng)絡(luò)實時狀況非常了解(比如拓撲),涉及到的網(wǎng)絡(luò)節(jié)點范圍可能會非常多,非常容易出錯。
同時服務(wù)并不是一成不變的(比如服務(wù)擴容、服務(wù)器虛擬化所引入的VM遷移等),要求網(wǎng)絡(luò)配置隨之動態(tài)調(diào)整,常規(guī)模式下的手工網(wǎng)絡(luò)操作將引起業(yè)務(wù)服務(wù)的長時間中斷,已經(jīng)不能滿足當(dāng)前業(yè)務(wù)的要求。
如果還需要為其他部門建立一個類似的Exchange服務(wù)時,從設(shè)計到實施,所有的工作都需要重新開始。無法從已有的服務(wù)中復(fù)用現(xiàn)有的基礎(chǔ)架構(gòu)和勞動成果。
當(dāng)通過網(wǎng)絡(luò)編排能力交付網(wǎng)絡(luò)服務(wù)后,我們可以把實現(xiàn)一個業(yè)務(wù)網(wǎng)絡(luò)部署的預(yù)期時間,縮短到僅僅幾分鐘的時間,從而實現(xiàn)網(wǎng)絡(luò)自動化部署能力(如圖4所示)。
圖4 使用網(wǎng)絡(luò)服務(wù)編排之后的IT業(yè)務(wù)部署模式
三、 網(wǎng)絡(luò)編排對象的設(shè)計
網(wǎng)絡(luò)編排的過程,可以簡單理解為對抽象網(wǎng)絡(luò)對象的組織和調(diào)配,包含網(wǎng)絡(luò)資源的分配調(diào)度等。對網(wǎng)絡(luò)對象的抽象設(shè)計可以拆分如下幾個方面。
1. 對網(wǎng)絡(luò)設(shè)備功能進行抽象
在當(dāng)前技術(shù)環(huán)境下,IT管理員所面對的不再是一成不變的設(shè)備環(huán)境,基礎(chǔ)設(shè)施可能隨著需求而快速增長。這種增長既包括數(shù)量上的增長,也包含廠商、設(shè)備型號的增加。為了屏蔽不同廠商、不同型號設(shè)備的差異,使IT管理員的精力聚焦在服務(wù)本身,必須要做到對網(wǎng)絡(luò)設(shè)備業(yè)務(wù)功能的抽象。
從實現(xiàn)技術(shù)上看,對網(wǎng)絡(luò)/設(shè)備功能的抽象有兩種(如圖5所示)。
1) 基于SDN相關(guān)的技術(shù)對網(wǎng)絡(luò)/設(shè)備功能的抽象。SDN的核心是對網(wǎng)絡(luò)的行為進行集中編程控制,就必然首先要對網(wǎng)絡(luò)設(shè)備的行為和能力進行抽象。如OpenFlow技術(shù)就是將網(wǎng)絡(luò)抽象為簡單的基于流的轉(zhuǎn)發(fā)控制能力。在此基礎(chǔ)之上,可以抽象基于流的ACL、QwS、VLAN、VPN等功能。
2) 基于傳統(tǒng)網(wǎng)絡(luò)技術(shù)(比如SNMP/CLI等管理協(xié)議)實現(xiàn)對設(shè)備/網(wǎng)絡(luò)功能的抽象。
圖5 網(wǎng)絡(luò)&設(shè)備功能抽象
2.對網(wǎng)絡(luò)服務(wù)的最小單元進行抽象
基于網(wǎng)絡(luò)設(shè)備功能的抽象,從表義性角度出發(fā)設(shè)計可編排的最小單元作為網(wǎng)絡(luò)服務(wù)單元(網(wǎng)絡(luò)對象),包含設(shè)備(虛擬/物理)、Port(虛擬/物理)、Link(End-End link、Net-Net link、End-Net link)、Network(L2/L3/flow-based)、IP服務(wù)(DHCP/DNS/NAT)、 安全服務(wù)(FW/LB/IPS)。
作為網(wǎng)絡(luò)對象,每個網(wǎng)絡(luò)服務(wù)單元都會占用一定的網(wǎng)絡(luò)資源(如交換機端口、帶寬、VLAN、IP地址池、隊列等),同時網(wǎng)絡(luò)對象還會有其他的網(wǎng)絡(luò)屬性,無法作為資源進行統(tǒng)一分配(如優(yōu)先級、時延要求、有線/無線類型等等)。
每個網(wǎng)絡(luò)服務(wù)單元都具有各自對應(yīng)的網(wǎng)絡(luò)/設(shè)備功能(對應(yīng)上面小節(jié)的抽象能力)。網(wǎng)絡(luò)服務(wù)單元(網(wǎng)絡(luò)對象)作為后續(xù)編排的基本元素,為什么不直接采用抽象出來的網(wǎng)絡(luò)設(shè)備功能進行編排呢?事實上,這是目前一些編排軟件的做法,但這要求服務(wù)管理員具有非常豐富的專業(yè)知識和經(jīng)驗,對每個網(wǎng)絡(luò)功能和技術(shù)細節(jié)非常了解。這就使得服務(wù)的建立成為一個很大的技術(shù)壁壘,使得服務(wù)編排變得比較困難。因此這種編排能力僅適合于非常專業(yè)的用戶。
采用抽象層次更高的網(wǎng)絡(luò)服務(wù)單元(服務(wù)對象)進行編排,將為服務(wù)管理員提供更接近自然語言的設(shè)計能力,與直接采用網(wǎng)絡(luò)設(shè)備功能的編排對比,就相當(dāng)于面向?qū)ο缶幊毯徒Y(jié)構(gòu)化編程的區(qū)別,高級語言和匯編語言的區(qū)別。同時在服務(wù)編排定義過程中,服務(wù)對象和具體物理網(wǎng)絡(luò)設(shè)備的關(guān)聯(lián)綁定不是必須的,為網(wǎng)絡(luò)服務(wù)復(fù)用性提供了可能。
3.對網(wǎng)絡(luò)模型進行抽象
從用戶對服務(wù)的訪問路徑分析出發(fā),可以抽象各類物理網(wǎng)絡(luò)的組網(wǎng)模型。例如:用戶從分支訪問遠程數(shù)據(jù)中心的完整路徑,其網(wǎng)絡(luò)模式可以分為用戶接入網(wǎng)絡(luò)、WAN網(wǎng)絡(luò)、DC核心、DC匯聚、DC接入、虛擬服務(wù)器等幾個區(qū)域;網(wǎng)絡(luò)比較簡單時,可以只有用戶接入網(wǎng)絡(luò)、WAN網(wǎng)絡(luò)、DC網(wǎng)絡(luò)。設(shè)計者可以根據(jù)實際網(wǎng)絡(luò)設(shè)計目的抽象成不同網(wǎng)絡(luò)模型。比如只關(guān)注用戶接入和應(yīng)用服務(wù)器接入的控制,在設(shè)計網(wǎng)絡(luò)模型時,就可以不必關(guān)注WAN網(wǎng)絡(luò)、DC核心/匯聚節(jié)點。
編排時根據(jù)網(wǎng)絡(luò)模型對網(wǎng)絡(luò)服務(wù)單元進行組織和配置,網(wǎng)絡(luò)模型的復(fù)雜度決定了服務(wù)編排的復(fù)雜性。
同時對用戶的真實物理網(wǎng)絡(luò)也要按相應(yīng)的網(wǎng)絡(luò)模型進行資源管理,為后面所述的服務(wù)實例化過程中,服務(wù)單元和物理設(shè)備的綁定關(guān)系計算提供輔助。
四、 網(wǎng)絡(luò)服務(wù)的編排
1.基于網(wǎng)絡(luò)模型對服務(wù)單元進行排列組織
根據(jù)實際網(wǎng)絡(luò)組網(wǎng)需求,首先選擇使用的網(wǎng)絡(luò)模型。然后使用預(yù)先抽象設(shè)計的網(wǎng)絡(luò)服務(wù)單元(網(wǎng)絡(luò)對象)作為編排的基本元素,在所選擇的網(wǎng)絡(luò)模型中,將這些網(wǎng)絡(luò)服務(wù)單元按照一定的排列方式進行組合、編排、連接,形成一條端到端的網(wǎng)絡(luò)服務(wù)管道。
圖6 網(wǎng)絡(luò)服務(wù)編排GUI舉例
2.對網(wǎng)絡(luò)服務(wù)單元的功能參數(shù)賦值,形成可分發(fā)的網(wǎng)絡(luò)服務(wù)
對編排的網(wǎng)絡(luò)服務(wù)管道上的每個服務(wù)單元,根據(jù)需要設(shè)定具體的參數(shù),為之分配網(wǎng)絡(luò)資源(IP地址、路由、VLAN ID、ACL配置及用戶認證配置等),最終形成可分發(fā)使用的網(wǎng)絡(luò)服務(wù)(如圖7所示)。
其中網(wǎng)絡(luò)服務(wù)單元和實際物理設(shè)備節(jié)點的綁定關(guān)系可以在編排時靜態(tài)指定,或在服務(wù)實例化時/部署時動態(tài)綁定(比如VM接入網(wǎng)絡(luò)的物理端口可能動態(tài)變化的)。
網(wǎng)絡(luò)模型不僅僅為方便編排的設(shè)計和規(guī)劃過程,因為用戶在設(shè)計網(wǎng)絡(luò)模型時,同時考慮了用戶的真實物理網(wǎng)絡(luò)組網(wǎng)結(jié)構(gòu),所以在動態(tài)綁定服務(wù)單元和物理網(wǎng)絡(luò)節(jié)點的計算環(huán)節(jié)中,網(wǎng)絡(luò)模型也有非常重要的作用。
圖7 網(wǎng)絡(luò)服務(wù)的形成
五、 網(wǎng)絡(luò)編排的關(guān)鍵技術(shù)
根據(jù)網(wǎng)絡(luò)服務(wù)編排End to End的要求,用戶接入、網(wǎng)絡(luò)管道、應(yīng)用接入是網(wǎng)絡(luò)服務(wù)的三個關(guān)鍵位置。由于計算虛擬化技術(shù)的使用,應(yīng)用接入位置可能是動態(tài)遷移變化的;同時用戶訪問方式的多樣性,其接入位置也可能是動態(tài)的,使得中間的網(wǎng)絡(luò)管道也有一定的動態(tài)性。網(wǎng)絡(luò)編排服務(wù)是否有效,這三個位置的跟蹤和計算能力是非常關(guān)鍵的。
1.應(yīng)用服務(wù)器/VM的接入位置。要求精確定位和跟蹤VM到網(wǎng)絡(luò)接入交換機的端口,并將編排的網(wǎng)絡(luò)服務(wù)動態(tài)部署/遷移到接入端口上。傳統(tǒng)的技術(shù)主要是拓撲計算能力,除了要求全網(wǎng)設(shè)備支持LLDP等二層鄰居發(fā)現(xiàn)協(xié)議,管理軟件能還要有效跟蹤全網(wǎng)MAC表變化,這便存在著實時性和準確性的問題。目前802.1Qbg協(xié)議很好的解決了這個問題,(如圖8所示)通過服務(wù)器和交換機的VDP交互,實時感知虛擬計算資源的遷移和部署,通過和管理軟件的協(xié)同,實現(xiàn)網(wǎng)絡(luò)服務(wù)的自動化部署和調(diào)整,從而實現(xiàn)網(wǎng)絡(luò)資源的動態(tài)遷移。
圖8 基于802.1Qbg實現(xiàn)VM的網(wǎng)絡(luò)接入位置動態(tài)定位
2. 用戶接入位置??梢曰诟鞣N終端跟蹤技術(shù)(如用戶接入身份認證、BYOD方案等),從而支持本地LAN接入、WLAN接入、遠程VPN接入、移動SSL VPN接入等各種接入方式的用戶位置跟蹤和定位。
3、網(wǎng)絡(luò)管道路徑分析。主要是基于網(wǎng)絡(luò)拓撲技術(shù),必須有完整、準確的拓撲,才能實現(xiàn)編排服務(wù)的有效部署和動態(tài)調(diào)整。該技術(shù)分為以下兩個方向。
1)HopByHop的網(wǎng)絡(luò)控制方式,要求全網(wǎng)(特別是廣播域內(nèi))的拓撲必須完整和準確。基于拓撲計算網(wǎng)絡(luò)服務(wù)的管道路徑,逐點部署網(wǎng)絡(luò)服務(wù)配置,連接用戶和應(yīng)用。如在SDN模式下,管理員可以基于現(xiàn)網(wǎng)拓撲,靜態(tài)指定網(wǎng)絡(luò)管道,或根據(jù)策略動態(tài)選擇網(wǎng)絡(luò)路徑。
2)Overlay的網(wǎng)絡(luò)tunnel管道控制方式,如VPN、VXLAN、NVGRE等技術(shù),可以直接在用戶和應(yīng)用之間建立一個三層網(wǎng)絡(luò)管道,網(wǎng)絡(luò)僅僅提供一個透明的管道,部署和動態(tài)調(diào)整相對簡單的多。
六、 結(jié)束語
利用網(wǎng)絡(luò)服務(wù)編排,IT部門可以真正快速便捷的實現(xiàn)服務(wù)建立與部署,真正的進入網(wǎng)絡(luò)自動化的時代。通過評估模型的建立與配置,服務(wù)使用者可以直觀并快捷的實現(xiàn)對服務(wù)的綜合評價與監(jiān)控。由此,IT管理員將徹底從云服務(wù)建立、調(diào)整、擴容等繁雜的配置工作任務(wù)中解脫出來,而將主要精力聚焦于為客戶提供高效率、高質(zhì)量、高保障的服務(wù)上來,并真實的體會到技術(shù)的進步所帶來的效率提升。同時SDN技術(shù)在網(wǎng)絡(luò)領(lǐng)域是非常符合服務(wù)編排的一個基礎(chǔ)架構(gòu)??梢曰赟DN的抽象網(wǎng)絡(luò)接口設(shè)計網(wǎng)絡(luò)服務(wù)單元,進而實現(xiàn)網(wǎng)絡(luò)服務(wù)的編排能力。