自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SDN的橫向擴(kuò)展對(duì)OpenStack Neutron的影響

云計(jì)算 OpenStack
Neutron管理著運(yùn)行于Openstack之上的虛擬化網(wǎng)絡(luò),并且為開(kāi)發(fā)高級(jí)云服務(wù)創(chuàng)建了一系列松耦合及其相關(guān)的項(xiàng)目,如果把Neutron作為軟件定義網(wǎng)絡(luò)(SDN)的一個(gè)可擴(kuò)展性應(yīng)用是非常方便使用的。

Neutron管理著運(yùn)行于Openstack之上的虛擬化網(wǎng)絡(luò),并且為開(kāi)發(fā)高級(jí)云服務(wù)創(chuàng)建了一系列松耦合及其相關(guān)的項(xiàng)目,如果把Neutron作為軟件定義網(wǎng)絡(luò)(SDN)的一個(gè)可擴(kuò)展性應(yīng)用是非常方便使用的。

 

 

 

SDN的橫向擴(kuò)展對(duì)OpenStack Neutron的影響

每項(xiàng)服務(wù)屬于一個(gè)單獨(dú)的項(xiàng)目,這些項(xiàng)目由社區(qū)驅(qū)動(dòng),或者來(lái)自很多供應(yīng)商和公司的貢獻(xiàn)。重要的是,OpenStack的Kilo版本包含了12個(gè)集成項(xiàng)目:

  • Nova(計(jì)算):為云用戶(hù)按需提供虛擬服務(wù)器/虛擬機(jī)。
  • Neutron(網(wǎng)絡(luò)):將網(wǎng)絡(luò)作為一項(xiàng)服務(wù)提供(虛擬網(wǎng)絡(luò)服務(wù))。
  • Swift(目標(biāo)存儲(chǔ)):允許API可訪(fǎng)問(wèn)的數(shù)據(jù)鏡像、文件和文檔的存儲(chǔ)和調(diào)回。
  • Cinder(塊存儲(chǔ)):為用戶(hù)虛擬機(jī)提供永久塊存儲(chǔ)。
  • Glance(映像):為計(jì)算節(jié)點(diǎn)提供一系列的硬盤(pán)鏡像,這些鏡像被虛擬機(jī)使用,
  • Horizon(儀表板):為管理員或者租戶(hù)(用戶(hù))管理Openstack提供基于web的圖形化用戶(hù)界面(GUI)。
  • Keystone(驗(yàn)證):存儲(chǔ)OpenStack服務(wù)認(rèn)證和授權(quán)信息。
  • Ceilometer(遙測(cè)):監(jiān)控和測(cè)量Openstack云使用信息,為計(jì)費(fèi)、基準(zhǔn)測(cè)試和統(tǒng)計(jì)提供依據(jù)。
  • Heat(調(diào)度):通過(guò)合適的API調(diào)用為管理云應(yīng)用提供調(diào)度服務(wù)。
  • Ironic(Baremetal配置):旨在配置裸機(jī)代替虛擬機(jī),從Nova的Baremetal驅(qū)動(dòng)分支出來(lái)。
  • Sahara(大數(shù)據(jù)作為服務(wù)):該項(xiàng)目提供一個(gè)簡(jiǎn)單的方法來(lái)配置一個(gè)運(yùn)行于OpenStack之上以數(shù)據(jù)為目的的應(yīng)用集群(Hadoop或者Spark)。
  • Trove(數(shù)據(jù)庫(kù)作為服務(wù)):該項(xiàng)目旨在提供云數(shù)據(jù)庫(kù)服務(wù),配置相關(guān)以及無(wú)關(guān)的數(shù)據(jù)庫(kù)引擎功能。

虛擬網(wǎng)絡(luò)是由租戶(hù)或者管理員創(chuàng)建,為OpenStack計(jì)算所管理的虛擬機(jī)之間提供網(wǎng)絡(luò)功能。Neutron是一項(xiàng)網(wǎng)絡(luò)管理服務(wù),提供一系列可擴(kuò)展的API用來(lái)創(chuàng)建和管理虛擬網(wǎng)絡(luò)。

在Neutron之前,OpenStack有一個(gè)簡(jiǎn)單、扁平的網(wǎng)絡(luò)環(huán)境,不支持三層或者防火墻。這種網(wǎng)絡(luò)服務(wù)內(nèi)嵌于Nova服務(wù)器中,使得網(wǎng)絡(luò)發(fā)生改變時(shí)很難適應(yīng)。

Neutron的引入是用來(lái)將網(wǎng)絡(luò)作為一項(xiàng)單獨(dú)的服務(wù),為網(wǎng)絡(luò)抽象提供不同的解決方案,Neutron服務(wù)器提供抽象定義和管理,網(wǎng)絡(luò)抽象的具體實(shí)施是由組件來(lái)實(shí)現(xiàn)。這種支持多租戶(hù)的基于組件的架構(gòu),被認(rèn)為是與技術(shù)無(wú)關(guān)和模塊化的。我們需要注意Neutron是一項(xiàng)獨(dú)立的服務(wù),也就是說(shuō),Neutron可以運(yùn)行為一項(xiàng)自主的服務(wù),暴露API給不同的供應(yīng)商,提供解決方案或者其他合適的擴(kuò)展。

Neutron所暴露的API分類(lèi)與其子分類(lèi)下支持的操作總結(jié)如下。那些操作可以縮寫(xiě)為CRUD,即創(chuàng)建(C)、閱讀(R)、更新(U)和刪除(D)。核心API涵蓋了基本和必須的網(wǎng)絡(luò)操作,而擴(kuò)展和屬性API的功能是用來(lái)構(gòu)建多功能虛擬網(wǎng)絡(luò)。

核心API的操作

  • 網(wǎng)絡(luò)(CRUD)
  • 子網(wǎng)(CRUD)
  • 端口(CRUD)

擴(kuò)展和屬性API的操作

  • 配額(RUD)
  • 網(wǎng)絡(luò)提供商可擴(kuò)展屬性(CRUD)
  • 多個(gè)網(wǎng)絡(luò)提供商可擴(kuò)展(CR)
  • 綁定擴(kuò)展屬性的端口(CRU)
  • 安全組與規(guī)則(CRD)
  • 三層網(wǎng)絡(luò)功能(CRUD)
  • 計(jì)費(fèi)標(biāo)簽和規(guī)則(CRD)
  • 負(fù)載均衡作為服務(wù)(LBaaS)(CRUD)

Neutron架構(gòu)

軟件定義網(wǎng)絡(luò)技術(shù)的發(fā)展與成熟,基于SDN 技術(shù)的網(wǎng)絡(luò)虛擬化發(fā)展,使得網(wǎng)絡(luò)虛擬化可以不再基于物理網(wǎng)絡(luò)設(shè)備實(shí)現(xiàn),使網(wǎng)絡(luò)虛擬化成為云計(jì)算網(wǎng)絡(luò)技術(shù)的核心之一,越來(lái)越多的廠(chǎng)商關(guān)注網(wǎng)絡(luò)虛擬化,并紛紛發(fā)布他們關(guān)于網(wǎng)絡(luò)虛擬化方面的方案。

圖一描述了OpenStack Neutron架構(gòu),由以下組件構(gòu)成:

Neutron服務(wù)器

python后臺(tái)服務(wù)是OpenStack網(wǎng)絡(luò)的主要進(jìn)程,一般運(yùn)行于控制器節(jié)點(diǎn)(openstack部署中的一個(gè)術(shù)語(yǔ))。它暴露API來(lái)加強(qiáng)網(wǎng)絡(luò)模型,并且傳遞請(qǐng)求給netron組件。

#p#

插件

插件可以是核心組件也可以是一項(xiàng)服務(wù)。核心插件實(shí)現(xiàn)“核心”的Neutron API——二層網(wǎng)絡(luò)和IP地址管理。服務(wù)插件提供“額外”的服務(wù),例如三層路由、負(fù)載均衡、VPN、防火墻和計(jì)費(fèi)。核心組件也可以通過(guò)相關(guān)的API擴(kuò)展提供這些網(wǎng)絡(luò)服務(wù)。簡(jiǎn)而言之,組件運(yùn)行在控制節(jié)點(diǎn)上,并且調(diào)用網(wǎng)絡(luò)API,這些API會(huì)同Neutron服務(wù)器、數(shù)據(jù)庫(kù)和代理進(jìn)行交互。

 

圖一 OpenStack Neutron 架構(gòu)

圖一:OpenStack Neutron 架構(gòu)

插件代理

插件代理指定正在被使用的Neutron插件。他們運(yùn)行于計(jì)算節(jié)點(diǎn)之上,并且會(huì)同Neutron插件進(jìn)行交互來(lái)管理虛擬交換機(jī)。這些代理在許多部署中是可選的,而且在每個(gè)虛擬機(jī)管理程序上可執(zhí)行本地虛擬交換機(jī)配置。

消息隊(duì)列

OpenStack組件,包括Neutron,使用高級(jí)消息隊(duì)列協(xié)議(AMQP)進(jìn)行內(nèi)部通信。AMQP代理,RabbitMQ,位于 Neutron的任何兩個(gè)內(nèi)部組件之間,允許它們通過(guò)松耦合的方式交互,例如,Neutron組件使用遠(yuǎn)程過(guò)程調(diào)用協(xié)議(RPC)與另外一個(gè)組件通信。

數(shù)據(jù)庫(kù)

幾乎所有組件都需要用數(shù)據(jù)庫(kù)來(lái)維護(hù)一個(gè)持續(xù)的網(wǎng)絡(luò)模型;因此,數(shù)據(jù)庫(kù)的語(yǔ)法是由已配置的核心插件和服務(wù)插件來(lái)定義。

DHCP代理

這個(gè)代理是Neutron的一部分,給租戶(hù)網(wǎng)絡(luò)提供DHCP服務(wù)。它維護(hù)所需的DHCP配置,且在所有插件中,DHCP代理是相同的(它維護(hù)所有組件中相同的DHCP配置)。

三層代理

三層代理負(fù)責(zé)提供三層和NAT轉(zhuǎn)發(fā)功能,目的是為租戶(hù)網(wǎng)絡(luò)中的虛擬機(jī)提供外網(wǎng)接入。

二層模塊化核心插件

二層模塊化(ML2)是Neutron的核心插件。ML2的引入(從OpenStack的Havana版本開(kāi)始)是為了替代原有的統(tǒng)一插件 (如,Open vSwitch和Linux橋接-它們僅僅是插件,而不是代理)消除冗余代碼,降低開(kāi)發(fā)和維護(hù)成本。根據(jù)ML2作者所定義的,模塊化二層組件(ML2)組件是一個(gè)允許OpenStack Neutron同時(shí)利用二層網(wǎng)絡(luò)多樣性技術(shù)的架構(gòu),該二層網(wǎng)絡(luò)技術(shù)來(lái)源于實(shí)際的復(fù)雜數(shù)據(jù)中心。

 

圖二 ML2 組件結(jié)構(gòu)

圖二:ML2 組件結(jié)構(gòu)

ML2通過(guò)驅(qū)動(dòng)模型實(shí)現(xiàn)模塊化。如圖二所示,它包含了兩類(lèi)驅(qū)動(dòng):類(lèi)型驅(qū)動(dòng)和機(jī)制驅(qū)動(dòng)。類(lèi)型驅(qū)動(dòng)(比如flat、虛擬局域網(wǎng)、GRE和VXLAN等) 定義了一個(gè)特殊的二層類(lèi)型,每個(gè)可用網(wǎng)絡(luò)類(lèi)型由對(duì)應(yīng)的類(lèi)型驅(qū)動(dòng)管理。該驅(qū)動(dòng)維護(hù)了類(lèi)型驅(qū)動(dòng)具體的狀態(tài)信息,實(shí)現(xiàn)了租戶(hù)網(wǎng)絡(luò)之間的隔離,這種隔離是由供應(yīng)商網(wǎng)絡(luò)驗(yàn)證過(guò)的。

另一方面,機(jī)制驅(qū)動(dòng)是由廠(chǎng)商指定的(比如說(shuō)OVS,還有來(lái)自O(shè)DL、Cisco、NEC等廠(chǎng)家的驅(qū)動(dòng)),基于功能性的類(lèi)型驅(qū)動(dòng)——支持創(chuàng)建、更新和刪除網(wǎng)絡(luò)、子網(wǎng)和端口資源。我們應(yīng)該注意到供應(yīng)商有可能執(zhí)行一整套新的類(lèi)似于ML2的組件,或者僅僅實(shí)現(xiàn)一個(gè)機(jī)制驅(qū)動(dòng)組件。Salvatore Orlando和Armando Miliaccio的對(duì)話(huà)使這個(gè)決定更容易實(shí)現(xiàn)。

#p#

OpenStack和SDN控制器:偉大的藍(lán)圖

軟件定義網(wǎng)絡(luò)的引入不僅是為了克服Neutron的缺陷,而且是為了提供支持多網(wǎng)絡(luò)虛擬化技術(shù)(一個(gè)集中控制平面創(chuàng)建分隔的租戶(hù)虛擬網(wǎng)絡(luò))和方法(來(lái)自F5 網(wǎng)絡(luò)的Christian Koenning所說(shuō)的軟件定義網(wǎng)絡(luò)和OpenStack)。有了SDN的集成,Neutron極有可能去支持大容量、高密度和多租戶(hù)云環(huán)境的動(dòng)態(tài)特性。

OpenStack Neutron連同它的插件架構(gòu),提供集成SDN控制器到OpenStack的能力。這種SDN控制器使用插件集成Neutron技術(shù)提供集中式管理,并且促進(jìn)OpenStack網(wǎng)絡(luò)利用API實(shí)現(xiàn)可編程性。

SDN控制器,諸如OpenDaylight、Ryu和Floodlight,運(yùn)用對(duì)應(yīng)的機(jī)制驅(qū)動(dòng),使用指定的插件或者使用ML2插件,實(shí)現(xiàn)Neutron和SDN控制器之間的通信。OpenStack與SDN控制器的融合,如下圖三所示。

在關(guān)于SDN控制器的文章里,網(wǎng)絡(luò)操作系統(tǒng)如Open Daylight、RYU,或者其他網(wǎng)絡(luò)操作系統(tǒng),負(fù)責(zé)提供一個(gè)完整的網(wǎng)絡(luò)(拓?fù)?視圖,也負(fù)責(zé)管理(應(yīng)用、實(shí)行和保證)對(duì)網(wǎng)絡(luò)必要的更新,通過(guò)轉(zhuǎn)換需求去配置(和監(jiān)控)網(wǎng)絡(luò)元素(物理的和虛擬的)。典型地,這些對(duì)下層網(wǎng)絡(luò)(和網(wǎng)絡(luò)元素)的更新來(lái)自運(yùn)行于SDN控制器上的網(wǎng)絡(luò)應(yīng)用,SDN控制器通過(guò)北向 API調(diào)用。

隨著OpenStack Neutron和SDN控制器的集成,對(duì)于網(wǎng)絡(luò)和網(wǎng)絡(luò)節(jié)點(diǎn)的改變也由OpenStack用戶(hù)所觸發(fā),被轉(zhuǎn)換成Neutron API,由Neutron插件和對(duì)應(yīng)的SDN控制器上的代理來(lái)處理。例如,OpenDaylight通過(guò)Neutron網(wǎng)絡(luò)節(jié)點(diǎn)上的ML2插件使用北向通信的RestAPI與Neutron交互。當(dāng)一個(gè)OpenStack用戶(hù)執(zhí)行任何與網(wǎng)絡(luò)有關(guān)的操作時(shí)(創(chuàng)建/更新/刪除/閱讀 關(guān)于網(wǎng)絡(luò)、子網(wǎng)和端口資源),典型流程如下:

1. 在OpenStack面板(Horizon)的用戶(hù)操作將會(huì)被轉(zhuǎn)換成對(duì)應(yīng)的網(wǎng)絡(luò)API,并且發(fā)往Neutron服務(wù)器。

2. Neutron服務(wù)器收到請(qǐng)求,然后傳遞請(qǐng)求給配置好的插件(假設(shè)ML2配置了一個(gè)ODL機(jī)制驅(qū)動(dòng)和一個(gè)VXLAN類(lèi)型驅(qū)動(dòng))。

3. Neutron服務(wù)器/插件將會(huì)對(duì)DB做相應(yīng)的改變。

4. 插件將從SDN控制器(假設(shè)是一個(gè)ODL)調(diào)用對(duì)應(yīng)的RestAPI。

5. ODL,一旦收到請(qǐng)求,將使用任意的南向插件/協(xié)議,例如OpenFlow,OVSDB或者OF-Config,對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)執(zhí)行必要的改變。

 

圖三 OpenStack和SDN控制器,大圖

圖三:OpenStack和SDN控制器

在SDN控制器和OpenStack之間仍然存在不同的集成選項(xiàng),例如,a)SDN控制器作為唯一的控制實(shí)體管理網(wǎng)絡(luò),能完全消除計(jì)算節(jié)點(diǎn)上 Neutron服務(wù)器與代理之間的RPC通信,或者 b)SDN控制器僅僅管理物理交換機(jī),虛擬交換機(jī)由Neutron服務(wù)器直接管理。

引人深思的是:SDN控制器部署選項(xiàng)與OpenStack的集成

SDN控制器部署可以采取不同的形式,如下面三個(gè)表格的總結(jié),部署不同排列組合的下列選項(xiàng)是有可能的,例如,我們可以讓非虛擬化的、集成的、單一/冗余的控制器在一個(gè)數(shù)據(jù)中心管理數(shù)據(jù)中心所有的網(wǎng)絡(luò)節(jié)點(diǎn)。

 

 SDN的橫向擴(kuò)展對(duì)OpenStack Neutron的影響

 

SDN控制器虛擬化的好處是,更好的可擴(kuò)展性——在現(xiàn)有的SDN控制器動(dòng)態(tài)添加更多的資源(比如存儲(chǔ)資源)。在一個(gè)虛擬化分布式部署中——SDN控制器由一系列協(xié)同工作的虛擬機(jī)實(shí)現(xiàn)-可以添加額外的虛擬機(jī)實(shí)例來(lái)增加工作負(fù)載。

考慮到SDN控制器被虛擬化和集成化/分布式的場(chǎng)景,SDN網(wǎng)絡(luò)元素從虛擬到物理實(shí)體的變化。此外,數(shù)據(jù)中心環(huán)境下虛擬設(shè)施的管理應(yīng)該適應(yīng)目前 VIM(虛擬化基礎(chǔ)設(shè)施管理員)如OpenStack的編配模型。為了達(dá)到這一點(diǎn),我們面對(duì)克服各種各樣的挑戰(zhàn),諸如性能和動(dòng)態(tài)服務(wù)管理。并鼓勵(lì)讀者思考在這種場(chǎng)景下創(chuàng)建端到端的解決方案的不同選項(xiàng)。

作者簡(jiǎn)介:

Sridhar,2007年新加坡國(guó)立大學(xué)取得計(jì)算機(jī)科學(xué)博士學(xué)位,2000年印度蘇拉卡KREC大學(xué)獲得計(jì)算機(jī)科學(xué)碩士學(xué)位,1997年印度杜姆吉爾的班加羅爾大學(xué)SIT取得儀器與電子本科學(xué)位。曾在印度SRM研究院從事研發(fā)組長(zhǎng);在新加坡信息通信研發(fā)中心(I2R)任職研發(fā)員。他曾工作于各種部署方案和部署項(xiàng)目包括ZigBee、WiFi和WiMax。Sridhar目前是NEC印度技術(shù)有限公司的技術(shù)專(zhuān)家,研發(fā)方向主要是下一代有線(xiàn)和無(wú)線(xiàn)網(wǎng)絡(luò)領(lǐng)域,諸如OpenFlow、軟件定義網(wǎng)絡(luò)、軟件定義無(wú)線(xiàn)系統(tǒng)為認(rèn)知網(wǎng)絡(luò)、HotSpot 2.0和物聯(lián)網(wǎng)。

譯者簡(jiǎn)介:

黃雅楠(huangyanan_2006@126.com),愛(ài)立信上海研發(fā)中心,主要專(zhuān)攻電信核心網(wǎng)、IP多媒體子系統(tǒng)(IMS)以及基于LTE的語(yǔ)音傳輸(VoLTE)

原文鏈接:http://www.sdnlab.com/11926.html

責(zé)任編輯:Ophira 來(lái)源: SDNLAB
相關(guān)推薦

2015-06-15 09:43:05

SDNOpenStack N

2015-09-17 11:32:56

NeutronSDN虛擬網(wǎng)絡(luò)

2013-12-08 18:13:08

OpenStack橫向擴(kuò)展

2015-11-12 14:54:53

NeutronSDN

2015-06-03 16:24:18

SDNSDS云構(gòu)架

2013-11-22 09:43:21

SDN技術(shù)影響

2013-11-07 10:17:00

OpenStack開(kāi)源Neutron

2014-01-10 09:20:33

OpenStackOpenStack N

2016-01-28 17:51:16

NeutronSDN

2015-12-11 16:23:16

2013-10-24 09:10:12

SDN技術(shù)SDN軟件定義網(wǎng)絡(luò)

2014-12-08 11:01:09

openstack網(wǎng)絡(luò)network

2012-11-26 10:48:38

SDNONFMAC

2015-09-28 10:45:09

2015-06-08 16:55:36

SDNOpenStackIaaS

2018-06-15 15:18:25

OpenstackNeutron網(wǎng)絡(luò)虛擬化

2014-07-25 09:21:54

SDN軟件定義網(wǎng)絡(luò)

2015-08-18 09:40:32

OpenStack Neutron虛擬網(wǎng)絡(luò)

2015-05-13 11:37:58

openstack測(cè)試網(wǎng)絡(luò)連通

2015-09-01 14:06:12

OpenStackSDN
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)