引言
云計算的大規(guī)模運營給傳統(tǒng)網(wǎng)絡架構和應用部署帶來挑戰(zhàn),新一代網(wǎng)絡支撐這種巨型的計算服務,不論是技術革新還是架構變化,都需要服務于云計算的核心要求,即動態(tài)、彈性、靈活,并實現(xiàn)網(wǎng)絡部署的簡捷化。具體來說傳統(tǒng)網(wǎng)絡面臨的挑戰(zhàn)主要4點。1)服務器的利用率從20%提高到80%,服務器端口流量大幅提升,對數(shù)據(jù)中心網(wǎng)絡承載性能提出巨大挑戰(zhàn),對網(wǎng)絡可靠性要求也更高;2)多種應用部署在同一臺物理服務器上運行,使網(wǎng)絡流量在同一臺物理服務器上產生疊加,流量模型更加不可控;3)服務器虛擬化技術的應用必然伴隨著虛擬機的遷移,這種遷移需要一個苛刻的網(wǎng)絡環(huán)境來保障;4)虛擬機的部署和遷移,使得安全策略的部署變得復雜和無助,需要一個動態(tài)的機制來對數(shù)據(jù)中心進行防護。
云計算平臺中,虛擬機在物理服務器之間進行遷移,為避免虛擬機遷移后路由的震蕩和修改網(wǎng)絡規(guī)劃,遷移通常只在在二層域進行,因此,云計算平臺需要具備一個性能更高、二層域更大的網(wǎng)絡環(huán)境為遷移提供保障。在傳統(tǒng)的數(shù)據(jù)中心網(wǎng)絡中,都是通過STP+VRRP的方式進行網(wǎng)絡拓撲設計,但由于 STP+VRRP的設計和維護都比較復雜,其在很大程度上阻礙了二層域的擴大,隨著服務器的數(shù)量和網(wǎng)絡設備的增多,這種網(wǎng)絡設計方式將會變得無法實施。同時,虛擬機的遷移對網(wǎng)絡的可用性要求也非常高,在STP+VRRP的組網(wǎng)中,如果鏈路出現(xiàn)故障,其收斂時間都在秒級,這就增加了應用系統(tǒng)遷移的限制。
通過分析云計算對傳統(tǒng)網(wǎng)絡基礎架構帶來的挑戰(zhàn),我們可以從兩個方面來應對。一是通過構建高性能、高可靠的網(wǎng)絡,以應對云計算給網(wǎng)絡帶來的壓力;二是通過構建虛擬化網(wǎng)絡來滿足云計算中由于虛擬機部署、遷移以及安全策略實施對網(wǎng)絡提出的靈活性、安全性的要求。
1.虛擬私有云系統(tǒng)功能分析
以亞馬遜為首的公有云運營商提出VPC(Virtual Private Cloud)的概念。其主要思想是把原有的物理網(wǎng)絡作為底層的網(wǎng)絡通路,在此之上構建一層虛擬的網(wǎng)絡,用來承載用戶的業(yè)務數(shù)據(jù)。從而解決用戶之間的隔離問題以及用戶業(yè)務對底層承載網(wǎng)絡的相互影響問題。
VPC的架構圖如圖1所示。通過Overlay技術,把云計算資源池的網(wǎng)絡分為底層的物理承載網(wǎng)絡和上層的虛擬Overlay網(wǎng)絡。底層的物理網(wǎng)絡即原有的由虛擬交換機、物理交換機、路由器等組成的云數(shù)據(jù)中心網(wǎng)絡,用于提供基本的網(wǎng)絡連通性。上層的Overlay網(wǎng)絡用于用戶的業(yè)務承載網(wǎng)絡。
圖1 VPC架構圖
通過這種Overlay的網(wǎng)絡架構,在物理承載網(wǎng)絡之上虛擬出多個邏輯上隔離的VPC,用戶的私有數(shù)據(jù)被限制在VPC內部,以保證VPC之間的隔離性。同時,用戶的VPC無論怎么規(guī)劃,都不會影響到物理網(wǎng)絡,也不會影響其他用戶的網(wǎng)絡規(guī)劃,這樣就可以做到用戶對自己網(wǎng)絡的獨立規(guī)劃,解除了物理網(wǎng)絡和用戶網(wǎng)絡的耦合性。
VPC的功能需求主要有以下幾點。1)用戶網(wǎng)絡隔離。不同用戶的VPC網(wǎng)絡之間相互隔離,以保證用戶的安全性。2)用戶的主機資源在同一個VPC 內。用戶的主機包括虛擬機和物理機資源,這些主機資源在一個VPC內,以保證用戶資源的互通性。3)同一個VPC內可劃分子網(wǎng)。VPC內部,用戶可以根據(jù)自己的使用需要劃分不同的子網(wǎng),并可以對IP地址進行自由規(guī)劃。4)為用戶提供Internet訪問功能。用戶可以通過地址綁定或者NAT方式訪問 Internet。5)為用戶提供DHCP服務。支持DHCP server功能,用戶主機自動獲取IP地址。6)防火墻服務。提供虛擬或者物理防火墻,用戶可以選擇是否使用防火墻。7)QoS服務。根據(jù)用戶業(yè)務流量優(yōu)先級進行流量調度處理,對用戶主機進行限速。8)提供統(tǒng)計服務。對用戶主機的網(wǎng)絡流量進行統(tǒng)計,提供統(tǒng)計數(shù)據(jù)以及相關的數(shù)據(jù)分析功能。9)提供網(wǎng)絡冗余功能。提供端口冗余、網(wǎng)關冗余、路由冗余、VPN冗余等高可用性功能。10)允許虛擬機遷移。用戶虛擬機可以自由遷移,并且遷移后網(wǎng)絡策略自動跟隨。 11)提供遠程VPN接入功能。允許用戶的私有網(wǎng)絡和VPC網(wǎng)絡互通,形成統(tǒng)一的網(wǎng)絡資源池。
2.基于SDN的虛擬私有云實現(xiàn)方式
2.1 概述
Software Defined Network(軟件定義網(wǎng)絡,SDN)由美國斯坦福大學提出,它是指將網(wǎng)絡設備的控制平面(control plane)從數(shù)據(jù)平面(data plane)中分離出來,并讓控制邏輯以軟件方式運行于邏輯上獨立的控制環(huán)境。這個架構可以讓網(wǎng)絡管理員在不改動硬件設備的前提下,以中央控制方式,用程序重新規(guī)劃網(wǎng)絡,為控制網(wǎng)絡流量提供新的方法,也提供核心網(wǎng)絡及應用創(chuàng)新的良好平臺。
SDN架構圖如圖2所示。數(shù)據(jù)層由只具有數(shù)據(jù)轉發(fā)功能的設備組成,它負責數(shù)據(jù)的轉發(fā)、設備信息的上報等;控制層又稱為網(wǎng)絡操作系統(tǒng)層,是SDN架構中的大腦,其抽取了原網(wǎng)絡設備中的控制功能,負責制定流轉發(fā)規(guī)則、狀態(tài)信息收集、網(wǎng)絡配置等控制功能;應用層通過調用控制層開放的API接口,編程實現(xiàn)各種網(wǎng)絡功能,如網(wǎng)絡監(jiān)控、防火墻、流量過濾等。
圖2 SDN架構圖
SDN技術分離數(shù)據(jù)和控制平面,通過部署標準化網(wǎng)絡硬件平臺,使得許多網(wǎng)絡設備中的軟件可以按需安裝、修改、卸載而變身為運營商需要的設備,實現(xiàn)業(yè)務擴展。SDN的本質是邏輯集中控制層的可編程化。
VPC應用于云計算數(shù)據(jù)中心,云計算資源池由云平臺統(tǒng)一管理,實現(xiàn)對底層計算、存儲、網(wǎng)絡等物理資源的云化處理,并把相關資源作為服務提供給用戶使用。目前,Openstack是最炙手可熱的云管理平臺,其提供開放的模塊架構,以組件的方式對計算、存儲、網(wǎng)絡統(tǒng)一調度管理。其核心組件架構如圖3所示。本文以Openstack作為云平臺為例來對VPC的實現(xiàn)方式進行分析。
圖3 OpenStack架構圖
云計算網(wǎng)絡相對于傳統(tǒng)網(wǎng)絡有較大改變。云計算資源池中不但有傳統(tǒng)的硬件網(wǎng)絡設備,還增加了虛擬的軟件網(wǎng)絡設備(如:虛擬交換機、虛擬路由器),也因此增加了網(wǎng)絡的復雜性。同時,云計算的靈活性(比如:多租戶共享資源、業(yè)務頻繁啟停等)要求對網(wǎng)絡設備更加智能、快速地進行管理,網(wǎng)絡必須適應業(yè)務的復雜性。這些都是傳統(tǒng)網(wǎng)絡捉襟見肘的地方。
實現(xiàn)Overlay的虛擬私有云,關鍵在于Overlay的網(wǎng)絡節(jié)點,其負責網(wǎng)絡流量的封裝、解封裝,是Overlay網(wǎng)絡的核心部件。 Overlay網(wǎng)絡節(jié)點可以部署在物理網(wǎng)絡設備處,也可以部署在虛擬網(wǎng)絡設備處。部署位置的不同也就衍生出兩種不同的Overlay實現(xiàn)方案。一種是軟件方案,Overlay節(jié)點部署在軟件交換機處;另一種是硬件方案,Overlay節(jié)點部署在硬件交換機處。
2.2 軟件實現(xiàn)方式
軟件實現(xiàn)方式下,Overlay網(wǎng)絡由部署在云計算節(jié)點hypervisor處的軟件路由器(交換機)實現(xiàn)。SDN方案中數(shù)據(jù)轉發(fā)平面基于Overlay 網(wǎng)絡,使用通用標準成熟協(xié)議實現(xiàn),不依賴特定廠商硬件。
SDN軟件方案主要由分布式控制器和分布式虛擬路由器組成,其系統(tǒng)架構圖如圖4所示。
圖4 軟件實現(xiàn)方式架構圖
系統(tǒng)提供基于REST API的北向接口給上層的應用程序使用。這些API可以被用來和云管理平臺進行集成,通過Neutron的插件方式和OpenStack的集成也可以用來開發(fā)管理這個虛擬化系統(tǒng)的WEB UI。
控制層使用XMPP、BGP、netconf等協(xié)議作為南向的接口,通過BGP、netconf和物理設備交互,通過XMPP協(xié)議和虛擬路由器進行通信,例如同步路由信息。東西向的接口主要還是BGP協(xié)議,通過BGP協(xié)議,各個控制程序同步信息,形成一個邏輯上中心化的控制層,不同的控制程序之間相當于熱互備。
在數(shù)據(jù)轉發(fā)層面,虛擬路由器之間支持多種Tunnel的方式,有VxLAN、MPLSoverGRE、MPLSoverUDP等。虛擬網(wǎng)絡的路由信息通過XMPP同步到各個虛擬路由器,不存在一個中心“路由器”。
相對于傳統(tǒng)的VLAN來隔離網(wǎng)絡的方式, SDN系統(tǒng)則是通過ARP代理的方式來避免二層廣播的影響,每一個Hpyervisor上的虛擬路由器都可以響應虛擬機的ARP請求,而不再將ARP請求發(fā)到交換機上去。
在DHCP方面,SDN也實現(xiàn)了DHCP服務的代理,可以自動響應虛擬機的DHCP請求,不需要第三方的DHCP服務。
網(wǎng)絡虛擬化軟件平臺系統(tǒng)使用特定的高層級服務數(shù)據(jù)模型和特定的低層級技術數(shù)據(jù)模型,通過轉換引擎實現(xiàn)前后者的映射,此外,網(wǎng)絡虛擬化軟件平臺系統(tǒng)還附帶了一組特定的南向協(xié)議。
網(wǎng)絡虛擬化軟件平臺系統(tǒng)中的模型化服務包括租戶、虛擬網(wǎng)絡、連接策略和安全策略。通過這些服務模型組件可以實現(xiàn)的基本業(yè)務主要有云計算網(wǎng)絡和NFV(適用環(huán)境:云計算網(wǎng)絡、多租戶網(wǎng)絡)。
低層級服務數(shù)據(jù)模型在網(wǎng)絡虛擬化軟件平臺系統(tǒng)中主要使用Overlay Networking(網(wǎng)絡構建模型:Overlay)實現(xiàn)服務模型。
配置節(jié)點的轉換引擎通過“編譯器”實現(xiàn)高層級服務數(shù)據(jù)模型到低層級數(shù)據(jù)模型的轉換映射。
控制節(jié)點使用的南向協(xié)議包括XMPP、BGP、Netconf。
網(wǎng)絡虛擬化軟件平臺系統(tǒng)是一個擴展平臺,意味著我們可以通過組件擴展的方式去支持更多的用戶部署環(huán)境,增加新的網(wǎng)絡技術。
1) 高級服務數(shù)據(jù)模型可以擴展新的組件去支持新的服務,例如運營商核心網(wǎng)絡的流量工程和流量日歷(根據(jù)日期進行流量管理)。
2) 低層次的服務數(shù)據(jù)模型也可以進行擴展。數(shù)據(jù)模型使用不同的技術來實現(xiàn),例如多租戶可以使用VLAN實現(xiàn),而不是Overlay。
新的南向協(xié)議可以引入到控制節(jié)點中,這主要用于支持網(wǎng)絡中使用不同協(xié)議的新類型的物理或者虛擬設備。例如,可以引入特定廠商的網(wǎng)絡設備中使用的CLI命令行接口,或者可能因為需要部署新的協(xié)議,新的組件需要引入到低層級技術數(shù)據(jù)層面中。
SDN系統(tǒng)由多個節(jié)點組成,即配置節(jié)點、控制節(jié)點、計算節(jié)點、分析節(jié)點、OpenStack Neutron插件(如圖5所示)。
圖5 SDN與OpenStack集成
配置節(jié)點主要負責通過Rest API來接受配置,并通過IFMAP協(xié)議將信息同步給控制節(jié)點。
控制節(jié)點主要負責接收通過IFMAP傳輸過來的信息,保存這些信息,并和計算節(jié)點通過XMPP協(xié)議同步信息,同時,控制節(jié)點還監(jiān)聽179端口,和其他的控制節(jié)點形成BGP PEER,同步路由信息。
計算節(jié)點主要由一個Agent和虛擬路由器內核模塊組成,負責數(shù)據(jù)面的轉發(fā)。
OpenStack插件主要有Neutron插件和Libvrit的VIF插件,前者主要負責和SDN系統(tǒng)同步網(wǎng)絡信息,利用SDN系統(tǒng)管理網(wǎng)絡,后者主要負責將虛擬機的網(wǎng)卡插入到虛擬路由器中,并將網(wǎng)卡信息同步給虛擬路由器的Agent。
分析節(jié)點主要負責收集各個節(jié)點的工作狀態(tài)、log和系統(tǒng)信息,并提供類似SQL式的查詢。系統(tǒng)組成以數(shù)據(jù)為中心,數(shù)據(jù)的存儲有Cassandra、 ZooKeeper、Redis等,Cassandra存儲具體的網(wǎng)絡配置信息,Zookeeper存儲服務信息,提供服務發(fā)現(xiàn)功能,這兩個都支持集群模式,因此,系統(tǒng)組成中的配置節(jié)點、控制節(jié)點、分析節(jié)點都可以支持多個同事部署,以達到HA的效果,如果一個單一的組件重啟,重啟后信息會從其他的節(jié)點同步,可提高系統(tǒng)的可靠性。
虛擬路由器是一個用戶空間進程,在Linux中運行,是一個本地的輕量級控制平面,它主要有七個功能。1)使用XMPP實現(xiàn)和控制節(jié)點,例如路由的控制狀態(tài)交換。2)使用XMPP從控制節(jié)點上接收低層級配置狀態(tài),例如路由進程和轉發(fā)策略。3)向分析節(jié)點匯報信息,例如日志,匯總事件的分析狀態(tài)。4) 向轉發(fā)平面?zhèn)鬟f轉發(fā)狀態(tài)(下發(fā)轉發(fā)表)。5)查找VM的狀態(tài)和屬性,和Nova代理進行交互。6)為每個新流的首包應用轉發(fā)策略,在轉發(fā)平面的流表中新增流表項。7)為DHCP、ARP和MDNS提供代理,其他代理會在未來版本中添加。
每個虛擬路由器都會連接至少兩個控制節(jié)點,在active-active冗余模型中提供冗余。虛擬路由器轉發(fā)平面運行在Linux的kernel 中,主要負責如下功能。1)封裝數(shù)據(jù)包到Overlay網(wǎng)絡中,從Overlay網(wǎng)絡中解封裝數(shù)據(jù)包。2)分配數(shù)據(jù)包到路由實例中。①從Overlay網(wǎng)絡中接受數(shù)據(jù)包,并基于MPLS標簽或者虛擬網(wǎng)絡標識(VNI)分配到路由實例中。②為虛擬機提供虛擬接口,并綁定在路由實例中。③在轉發(fā)信息表中查詢目的地址,并將數(shù)據(jù)包發(fā)送到正確的目的地址,路由可以基于三層IP前綴或者二層MAC地址。④根據(jù)情況使用流表應用轉發(fā)策略。如匹配流表中的數(shù)據(jù)包,并應用流表操作;根據(jù)情況,當轉發(fā)規(guī)則在虛擬路由器中沒有找到流規(guī)則時則掛起數(shù)據(jù)包,然后在流表中應用一條規(guī)則;掛起一些數(shù)據(jù)包,如DHCP、ARP、MDNS 等用于虛擬路由器中的代理。
2.3 硬件實現(xiàn)方式
硬件實現(xiàn)方式下,Overlay網(wǎng)絡硬件交換機處實現(xiàn)用戶數(shù)據(jù)的封裝、解封裝,一般在TOR(Top of Rack)交換機處。
SDN硬件方案主要由分布式控制器和硬件交換機組成,其系統(tǒng)架構圖如圖6所示。
圖6 硬件實現(xiàn)方式架構圖
需要說明的一點,硬件方案也需要虛擬交換機配合,對用戶數(shù)據(jù)進行基本的VLAN封裝和解封。在此結構下,虛擬交換機把虛擬機發(fā)送的報文打上VLAN tag后發(fā)送到接入交換機,接入交換機通過分層的方式,把租戶的虛擬網(wǎng)絡和底層用于隧道傳輸?shù)奈锢砭W(wǎng)絡進行分離,同時,通過給每個租戶分配一個虛擬網(wǎng)絡實現(xiàn)租戶隔離。
以VxLAN封裝來實現(xiàn)Overlay為例,用戶數(shù)據(jù)的轉發(fā)流程如圖7所示。
圖7 硬件實現(xiàn)用戶數(shù)據(jù)處理流程
網(wǎng)絡報文從虛擬機發(fā)出后,虛擬交換機在原始報文打上VLAN tag標簽后發(fā)送到接入交換機,接入交換機根據(jù)VLAN tag在報文外層封裝VxLAN報文頭以及轉發(fā)到對端接入交換機所需的路由信息,然后,把此報文發(fā)送到物理網(wǎng)絡。對端接入交換機收到此報文后把外層報文頭剝離后發(fā)送到虛擬交換機,虛擬交換機根據(jù)內層報文信息把此報文轉發(fā)到相應的虛擬機。整個報文轉發(fā)流程完成。
硬件實現(xiàn)方案原理與軟件方案類似,區(qū)別是把實現(xiàn)Overlay封裝和解封裝的工作放在了硬件交換機上來做。其好處是減輕軟件處理Overlay的壓力,釋放了此部分計算資源,保證了系統(tǒng)性能。其缺點也很明顯,需要專門支持Overlay功能的硬件設備,導致系統(tǒng)靈活性降低。
3.總結
基于SDN的虛擬私有云通過構建Overlay網(wǎng)絡的方式解決了云計算系統(tǒng)中多租戶網(wǎng)絡的隔離問題,屏蔽了租戶業(yè)務網(wǎng)絡對底層物理網(wǎng)絡的影響,使得用戶可以自由規(guī)劃自己的網(wǎng)絡,在大規(guī)模云計算系統(tǒng)中得到越來越多的應用。目前,虛擬私有云的實現(xiàn)方式主要有軟件方式和硬件方式,各有其優(yōu)缺點,適用于不同的場景。軟件方案靈活性較高,對硬件網(wǎng)絡設備沒有依賴,適用于對原有系統(tǒng)的升級改造;硬件方案性能較好,不占用服務器的資源,但是需要專門的硬件網(wǎng)絡設備,硬件成本比軟件方案高。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標題:基于SDN的虛擬私有云研究
本文網(wǎng)址:http://www.oesoe.com/html/consultation/10839718316.html