• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于OpenStack云平臺(tái)Neutron關(guān)鍵技術(shù)研究

      2015-10-12 05:22:54李莉李紀(jì)成張超然劉丹康琬悅
      關(guān)鍵詞:網(wǎng)橋子網(wǎng)租戶

      李莉,李紀(jì)成,張超然,劉丹,康琬悅

      (1.長春理工大學(xué) 計(jì)算機(jī)科學(xué)技術(shù)學(xué)院,長春 130022;2.工業(yè)和信息化部 教育與考試中心,北京 100040)

      基于OpenStack云平臺(tái)Neutron關(guān)鍵技術(shù)研究

      李莉1,李紀(jì)成1,張超然1,劉丹1,康琬悅2

      (1.長春理工大學(xué)計(jì)算機(jī)科學(xué)技術(shù)學(xué)院,長春130022;2.工業(yè)和信息化部教育與考試中心,北京100040)

      云計(jì)算的網(wǎng)絡(luò)服務(wù)承載著整個(gè)云計(jì)算平臺(tái)的網(wǎng)絡(luò)構(gòu)建,因此網(wǎng)絡(luò)模塊都作為云平臺(tái)主要模塊之一,OpenStack中的Neutron模塊作為網(wǎng)絡(luò)管理系統(tǒng),主要實(shí)現(xiàn)多租戶情況下的網(wǎng)絡(luò)隔離,使每個(gè)租戶的網(wǎng)絡(luò)環(huán)境獨(dú)立,可以根據(jù)自己的需求部署網(wǎng)絡(luò)環(huán)境。本文將分析Neutron模塊的工作原理,利用虛擬化模擬Neutron的網(wǎng)絡(luò)管理,運(yùn)用虛擬化技術(shù)結(jié)合Libvirt 與Open vSwitch等軟件,模擬實(shí)現(xiàn)類似云主機(jī)之間的通信。

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

      自2008年以來,云計(jì)算的發(fā)展突飛猛進(jìn),已經(jīng)成為IT行業(yè)領(lǐng)軍技術(shù)之一。近幾年云計(jì)算更是應(yīng)用到了國家各項(xiàng)基礎(chǔ)設(shè)施服務(wù)中,軍事、銀行、大型電商以及一些政府機(jī)關(guān)部門也都隨著云計(jì)算的浪潮迅速發(fā)展。

      在Google、Amazon和IBM等互聯(lián)網(wǎng)巨頭公司的帶領(lǐng)下,云計(jì)算市場(chǎng)可謂是風(fēng)生水起,Openstack就是在這樣環(huán)境下誕生,作為一個(gè)開源的基礎(chǔ)設(shè)施及服務(wù)(Infrastructure as a Service)的云計(jì)算平臺(tái),Openstack得到了廣大互聯(lián)企業(yè)的大力支持,從2010年開始至今已經(jīng)發(fā)展成為全球最受歡迎的開源云平臺(tái)。

      1 Openstack與neutron模塊介紹

      Openstack是2010年NASA與Rackspace一起開發(fā)的開源項(xiàng)目,實(shí)現(xiàn)了類似亞馬遜EC2和S3基礎(chǔ)設(shè)施服務(wù),作為一個(gè)開源的基礎(chǔ)設(shè)施及服務(wù)的云計(jì)算平臺(tái),任何企業(yè)和個(gè)人都能參與開發(fā)。Openstack支持大部分云環(huán)境,并且具有簡(jiǎn)單、豐富、統(tǒng)一及可擴(kuò)展特性,使其深受廣大互聯(lián)網(wǎng)企業(yè)的歡迎。至今已經(jīng)有169家機(jī)構(gòu)和1500名開發(fā)者為其貢獻(xiàn)代碼。2013年paypal將其一萬臺(tái)服務(wù)器上的VMware遷移到Openstack平臺(tái),2014年沃爾瑪也將旗下所有的電商業(yè)務(wù)遷移到了Openstack上。

      Openstack的最新版由Nova、Glance、Cinder、Keystone、Horizon、Netron等六個(gè)核心模塊組成,這些模塊包含了IaaS云平臺(tái)的基本服務(wù)功能:資源管理、存儲(chǔ)服務(wù)、鏡像管理、身份驗(yàn)證、Web界面管理和網(wǎng)絡(luò)管理。

      Neutron在Openstack中負(fù)責(zé)網(wǎng)絡(luò)管理,在早期的版本中,Openstack通過Nova模塊中的Nova-Network組件對(duì)網(wǎng)絡(luò)資源進(jìn)行管理。在F版本之后,Openstack將該組件提取出來單獨(dú)形成一個(gè)項(xiàng)目Quantum,隨后發(fā)展成現(xiàn)在的Neutron。Neutron允許用戶創(chuàng)建和加入網(wǎng)絡(luò)接口,提供網(wǎng)絡(luò)連接即服務(wù)(Network-Connectivity-as-a-Service)。

      Neutron網(wǎng)絡(luò)服務(wù)分為以下幾個(gè)部分,如圖1所示。負(fù)責(zé)接收請(qǐng)求的Neutron-server,負(fù)責(zé)插入端口、創(chuàng)建網(wǎng)絡(luò)拓?fù)?、提供IP地址的agent和plug-in以及用于組件間通信的消息隊(duì)列。Neutron通常與Nova服務(wù)交互,為虛擬機(jī)提供網(wǎng)絡(luò)連接服務(wù)[1]。

      圖1 Neutron組件架構(gòu)圖

      2 Neutron模塊剖析

      相對(duì)于整個(gè)Openstack來說,Neutron處于系統(tǒng)平臺(tái)的位置,來提供配置命令和參數(shù)的審查,并且將網(wǎng)絡(luò)功能組織起來;Neutron是一個(gè)抽象的架構(gòu),通過提供各種API來構(gòu)筑租戶的網(wǎng)絡(luò)拓?fù)浼芭渲镁W(wǎng)絡(luò)負(fù)載策略,而且支持插件構(gòu)建自定義網(wǎng)絡(luò),但是Neutron本身不提供任何網(wǎng)絡(luò)功能,Neutron的網(wǎng)絡(luò)功能中除DHCP和L3-agent等部分功能外,絕大部分是由Plugin提供的[2]。根據(jù)Neutron提供的API,租戶可以自定義的網(wǎng)絡(luò)連接和云解決方案,使運(yùn)營商可以為他們的云網(wǎng)絡(luò)配置不同的網(wǎng)絡(luò)技術(shù)。Neutron還提供了一個(gè)API來配置和管理各種網(wǎng)絡(luò)服務(wù)的范圍從L3轉(zhuǎn)發(fā)和NAT負(fù)載均衡到邊緣防火墻和IPSec VPN。

      2.1Neutron模塊四個(gè)關(guān)鍵概念

      Network:可以靈活的劃分網(wǎng)絡(luò),租戶可以創(chuàng)建自己的網(wǎng)絡(luò),在多租戶的環(huán)境下的獨(dú)立網(wǎng)絡(luò)環(huán)境;

      Subnet:一組IP資源池,可以為租戶的instance(實(shí)例)提供類似192.168.1.0/24的私網(wǎng)地址,不同Subnet之間通信需要Router支持;

      Port:虛擬交換機(jī)的一個(gè)端口,相當(dāng)于物理交換機(jī)的接口,用來連接路Router和Subnet;

      Router:與物理路由器類似,是一個(gè)可銷毀的路由選擇與轉(zhuǎn)發(fā)部件,為租戶的instance提供路由功能。

      2.2Neutron體系結(jié)構(gòu)組成

      Neutron主要由Neutron Server守護(hù)進(jìn)程、插件代理(Plugin Agent)、DHCP代理、三層代理(L3 Agent)構(gòu)成,并且相互之間通過消息隊(duì)列進(jìn)行通信[3],如圖2所示。

      圖2 Neutron體系結(jié)構(gòu)圖

      Neutron Server:由守護(hù)進(jìn)程和一些plugin構(gòu)成,主要分布在控制節(jié)點(diǎn)和網(wǎng)絡(luò)節(jié)點(diǎn),網(wǎng)絡(luò)服務(wù)器使用Neutron-server守護(hù)進(jìn)程來暴露API,配置管理網(wǎng)絡(luò)插件(Plugin),并把API的請(qǐng)求傳給網(wǎng)絡(luò)插件進(jìn)行后續(xù)處理。通常插件要訪問一個(gè)持久化存儲(chǔ)數(shù)據(jù)庫(也類似于其他Openstack服務(wù))。插件對(duì)硬件的要求,性能特點(diǎn),規(guī)?;虿僮鞴ぞ呖梢杂胁煌匦?。確保配置數(shù)據(jù)及對(duì)應(yīng)關(guān)系。因?yàn)榫W(wǎng)絡(luò)支持大量的插件,云管理員必須確定部署的網(wǎng)絡(luò)技術(shù)。

      插件代理(Plugin Agent):傳統(tǒng)的計(jì)算機(jī)網(wǎng)絡(luò)通過Linux VLAN和IP表來實(shí)現(xiàn)一個(gè)基本的獨(dú)立模塊。Neutron提供了不同的plugin支持,虛擬網(wǎng)絡(luò)中的數(shù)據(jù)包由這些plugin來處理,可以根據(jù)這些plugin實(shí)現(xiàn)自定義的后端網(wǎng)絡(luò)API,一個(gè)plugin可以使用多種技術(shù)來試驗(yàn)邏輯API請(qǐng)求,一些網(wǎng)絡(luò)plugin使用基本的Linux VLAN和IP表,然而其他的可能會(huì)使用L2-in-L3隧道或OpenFlow等先進(jìn)的技術(shù)來達(dá)到同等效果。部署在計(jì)算、網(wǎng)絡(luò)節(jié)點(diǎn)上。

      DHCP代理(DHCP Agent):DHCP服務(wù)代理與所有現(xiàn)有的插件兼容,主要為租戶私有網(wǎng)絡(luò)提供DHCP功能,所有需要DHCP功能的虛擬機(jī)都可以通過DHCP自動(dòng)接收IP地址。部署在網(wǎng)絡(luò)節(jié)點(diǎn)上[4]。

      三層代理(L3 Agent):為租戶網(wǎng)絡(luò)上主機(jī)提供L3/NAT轉(zhuǎn)發(fā)以及外部網(wǎng)絡(luò)訪問,需要一些plugin的支持,目前Big Switch/floodlight plugin已經(jīng)內(nèi)置了L3功能。部署網(wǎng)絡(luò)節(jié)點(diǎn)上[5]。

      3 Neutron網(wǎng)絡(luò)實(shí)現(xiàn)

      3.1計(jì)算節(jié)點(diǎn)

      從instance里發(fā)出的packet經(jīng)過通過linux bridge中的虛擬網(wǎng)卡eth0連接到tap設(shè)備上,tap設(shè)備在openvswitch虛擬化出的網(wǎng)橋br-int上然后通過patch-tun端口連接到通道網(wǎng)橋br-tun,br-tun也是openvswitch虛擬化出來的網(wǎng)橋,與br-int對(duì)應(yīng),同時(shí)具有穿透功能,可以使多個(gè)計(jì)算節(jié)點(diǎn)上的vm連接在同一虛擬交換機(jī)上。br-tun本身不作為交換機(jī),而是構(gòu)成一個(gè)同一通信層,使網(wǎng)絡(luò)節(jié)點(diǎn)與計(jì)算節(jié)點(diǎn)、計(jì)算節(jié)點(diǎn)與計(jì)算節(jié)點(diǎn)形成一個(gè)以GRE為基礎(chǔ)的點(diǎn)對(duì)點(diǎn)的通信網(wǎng)絡(luò),以此為基礎(chǔ)進(jìn)行數(shù)據(jù)交換。

      3.2網(wǎng)絡(luò)節(jié)點(diǎn)

      網(wǎng)絡(luò)節(jié)點(diǎn)上也存在一對(duì)這樣的設(shè)備:br-tun和br-int,與計(jì)算節(jié)點(diǎn)上一樣,這里的br-tun也是為了整個(gè)系統(tǒng)構(gòu)建統(tǒng)一通信層而存在,br-int主要起交換機(jī)作用通過兩個(gè)tap設(shè)備qr<n>和tap與namspace-router和dhcp相連接,分別承擔(dān)router和dhcp功能,l3-agent根據(jù)網(wǎng)絡(luò)管理創(chuàng)建router用來綁定子網(wǎng)管理子網(wǎng)的路由功能,路由功能則依靠namespace(命名空間)的iptables來實(shí)現(xiàn)。同時(shí)l3-agent針對(duì)特定的子網(wǎng)創(chuàng)建dhcp功能,l3-agent會(huì)在此namespace中啟動(dòng)dnsmasq進(jìn)程,用來管理子網(wǎng)的dhcp功能。目前這兩個(gè)namespace通常成對(duì)出現(xiàn)在openstack云平臺(tái)中,來用于管理特定的子網(wǎng)。

      3.3外網(wǎng)通信

      外部網(wǎng)橋(br-ex)的網(wǎng)絡(luò),當(dāng)數(shù)據(jù)包從br-int bridge出來時(shí)候,通過brige里面網(wǎng)口qr<n>經(jīng)過L3-Agent連接到br-ex的qb<n>網(wǎng)口上,br-ex混雜模式加載在物理網(wǎng)卡eth2上,因此br-ex接收的數(shù)據(jù)包可以直接通過eth2發(fā)送到Internet里。這樣計(jì)算節(jié)點(diǎn)上擁有float-ip的VM可以自由與外部網(wǎng)絡(luò)進(jìn)行通信。

      圖3 Neutron網(wǎng)絡(luò)路線圖

      4 模擬neutron模塊管理,實(shí)現(xiàn)主機(jī)通信

      本次實(shí)驗(yàn)將模擬Neutron模塊的管理,通過虛擬機(jī)結(jié)合Libvirt及OpenvSwitch等軟件的結(jié)合模擬出Openstack中Compute節(jié)點(diǎn)與Network節(jié)點(diǎn)中的云主機(jī)之間的相互通信,通信方式為gre,并且通過namespace模擬私有網(wǎng)絡(luò)互訪,如圖4所示。

      實(shí)驗(yàn)使用virtualbox和centos6.5作為基本環(huán)境,需要用virtualbox建立兩個(gè)host-only類型的虛擬網(wǎng)絡(luò)Net0和Net1,并且在虛擬機(jī)中裝好Libvirt、OpenvSwitch等相關(guān)的包。

      圖4 模擬通信結(jié)構(gòu)圖

      然后啟動(dòng)兩個(gè)虛擬機(jī)VM1和VM2,虛擬機(jī)對(duì)應(yīng)的配置如下

      除以上配置外,為了方便虛擬機(jī)聯(lián)網(wǎng),我們都給虛擬機(jī)額外配置了一張NAT網(wǎng)卡用來訪問互聯(lián)網(wǎng)。

      (1)在Network node上創(chuàng)建一個(gè)網(wǎng)橋(Linux bridge)qbr1,然后再創(chuàng)建一個(gè)實(shí)例(instance1)并將其用tap設(shè)備連接到網(wǎng)橋qbr1上,然后將instance1啟動(dòng)并且添加IP地址(192.168.1.11),配置網(wǎng)關(guān)。

      (2)模擬Neutron的integration bridge創(chuàng)建一個(gè)內(nèi)部的網(wǎng)橋br-int并且為其添加gre隧道接口gre0,通過gre隧道連接到Compute node上的bridge上。

      (3)創(chuàng)建一個(gè)veth peer來連接Linux網(wǎng)橋qbr1和內(nèi)部網(wǎng)橋br-int,這樣一條從instance1到compute node上的通道就建好了。

      (4)在Compute node上實(shí)現(xiàn)類似的配置(IP為192.168.1.12),實(shí)現(xiàn)兩個(gè)模擬云主機(jī)(instance1、instance2)之間的通信。通信結(jié)果如圖5所示。

      圖5 instance之間通信圖

      (5)在Network node上添加一個(gè)namespace dhcp隔離網(wǎng)絡(luò),通過tap設(shè)備連接到內(nèi)部網(wǎng)橋br-int上,然后在namespace中訪問兩個(gè)instance,實(shí)現(xiàn)互相通信。

      5 結(jié)論

      文中深入研究了Openstack中的網(wǎng)絡(luò)模塊Neutron,剖析了模塊內(nèi)部的組成結(jié)構(gòu)、相關(guān)和插件,并對(duì)模塊內(nèi)部的通信方式進(jìn)行分析,總結(jié)了這種通信方式的優(yōu)勢(shì)及意義,并且通過虛擬機(jī)模擬出了Openstack中云主機(jī)的通信,主要實(shí)現(xiàn)了不同節(jié)點(diǎn)云主機(jī)之間通信和網(wǎng)絡(luò)命名空間與云主機(jī)之間的通信。

      [1] 鄒劍鋒.基于OpenFlow的SDN組網(wǎng)技術(shù)研究[D].北京:北京郵電大學(xué),2014.

      [2] 常立偉.Quantum中多租戶隔離與網(wǎng)絡(luò)服務(wù)擴(kuò)展研究[D].成都:電子科技大學(xué),2013.

      [3] 趙少卡,李立耀,黃舒嘯.基于OpenStack的虛擬網(wǎng)絡(luò)管理系統(tǒng)設(shè)計(jì)[J].福建師大福清分校學(xué)報(bào),2014,112(2):11-15.

      [4]OpenStackCloudAdministratorGuide[EB/OL]. 2015-06-17.http://docs.openstack.org/admin-guidecloud/admin-guide-cloud.pdf

      [5] 李磊,李小寧,金連文.基于Openstack的科研教學(xué)云計(jì)算平臺(tái)的構(gòu)建與運(yùn)用[J].實(shí)驗(yàn)技術(shù)與管理,2014,31 (6):127-133.

      Research on the Key Technology of Neutron Based on OpenStack Cloud Platform

      LI Li1,LI Jicheng1,ZHANG Chaoran1,LIU Dan1,KANG Wanyue2
      (1.School of Computer Science and Technology,Changchun University of Science and Technology,Changchun 130022;2.Ministry of Industry and Information Technology,Education and Examination Center,Beijing 100040)

      Cloud computing network service carrying the cloud computing platform of network construction,so network module are as one of the main modules of the cloud platform,neutron of openstack as the network management system,mainly to achieve multi tenant network isolation,enable each tenant’s network environment independent,can according to their own needs network deployment environment.This paper will analyze the working principle of the neutron module,the virtual simulation of neutron network management,using virtualization technology combined with libvirt open vswitch software,the simulation of the realization of communication between the cloud instance.

      Openstack;virtualization;network

      TP399

      A

      1672-9870(2015)06-0114-04

      2015-10-22

      李莉(1963-),女,教授,博士生導(dǎo)師,E-mail:lili@cust.edu.cn

      猜你喜歡
      網(wǎng)橋子網(wǎng)租戶
      一種簡(jiǎn)單子網(wǎng)劃分方法及教學(xué)案例*
      子網(wǎng)劃分問題研究及應(yīng)用
      網(wǎng)橋技術(shù)在海外工程項(xiàng)目中的應(yīng)用
      探析網(wǎng)橋優(yōu)先級(jí)
      基于MVC模式的多租戶portlet應(yīng)用研究*
      子網(wǎng)劃分的簡(jiǎn)易方法
      “軟隔離”網(wǎng)橋造成的麻煩
      租戶是大爺
      特別文摘(2014年17期)2014-09-18 01:31:21
      企業(yè)多租戶云存儲(chǔ)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
      基于安全協(xié)議的虛擬專用子網(wǎng)研究
      河南科技(2014年16期)2014-02-27 14:13:04
      阿拉善盟| 和平县| 白沙| 绥棱县| 正定县| 玛沁县| 淮南市| 土默特右旗| 于田县| 彩票| 新巴尔虎左旗| 玉树县| 乌兰察布市| 深圳市| 芜湖市| 宁乡县| 昆明市| 盱眙县| 荥阳市| 鹤岗市| 保山市| 永平县| 宜宾市| 江源县| 黄梅县| 光泽县| 松溪县| 钦州市| 舒兰市| 望谟县| 礼泉县| 长治市| 石狮市| 葫芦岛市| 嘉义市| 当阳市| 景泰县| 望都县| 枣庄市| 尼玛县| 洛隆县|