一種面向多租戶的云網(wǎng)絡(luò)架構(gòu)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實(shí)施例涉及數(shù)據(jù)傳輸技術(shù),尤其涉及一種面向多租戶的云網(wǎng)絡(luò)架構(gòu)。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)管理和配置是云計(jì)算技術(shù)中一項(xiàng)非常重要的功能,實(shí)現(xiàn)一種靈活高效又安全的網(wǎng)絡(luò)架構(gòu)一直是各個(gè)云平臺追求的目標(biāo)。
[0003]現(xiàn)有的公有云網(wǎng)絡(luò)架構(gòu)或者私有云網(wǎng)絡(luò)架構(gòu),大多數(shù)是基于開源的云計(jì)算管理平臺Openstack社區(qū)的方案,包括平坦網(wǎng)絡(luò)架構(gòu)和基于層疊設(shè)計(jì)overlay的網(wǎng)絡(luò)架構(gòu)。上述網(wǎng)絡(luò)架構(gòu),在小規(guī)模部署或者內(nèi)部使用時(shí),能夠滿足使用的需求。然后,作為商用方案,面向大規(guī)模的租戶和面向互聯(lián)網(wǎng)接入時(shí),存在明顯的性能瓶頸和安全瓶頸。例如,圖1提供了一種基于Openstack社區(qū)提出的平坦網(wǎng)絡(luò)模型。其中,所有的虛擬機(jī)位于一個(gè)二層網(wǎng)絡(luò)架構(gòu)下,虛擬機(jī)不能自定義網(wǎng)絡(luò)IP地址,租戶間的隔離通過復(fù)雜的宿主機(jī)的網(wǎng)絡(luò)防火墻IPTABLES隔離策略進(jìn)行隔離。該方案通過軟件實(shí)現(xiàn)時(shí),隨著需隔離的租戶的虛擬機(jī)的數(shù)量的增加,隔離規(guī)則數(shù)也會增加,網(wǎng)絡(luò)轉(zhuǎn)發(fā)性能會嚴(yán)重衰退。同時(shí),由于基于軟件實(shí)現(xiàn),虛擬機(jī)及對應(yīng)的宿主機(jī)容易因來自公網(wǎng)的網(wǎng)絡(luò)攻擊而造成網(wǎng)絡(luò)癱瘓。圖2提供了基于Openstack社區(qū)提出的overlay網(wǎng)絡(luò)模型。通過在傳統(tǒng)網(wǎng)絡(luò)上虛擬出一個(gè)overlay網(wǎng)絡(luò),將業(yè)務(wù)定義在overlay網(wǎng)絡(luò)上,從而很好的實(shí)現(xiàn)租戶間的隔離。然而,該方案采用基于網(wǎng)絡(luò)節(jié)點(diǎn)Network Node的集中式虛擬網(wǎng)絡(luò)路由器方案。由于Network Node節(jié)點(diǎn)直接面向公網(wǎng),其單個(gè)節(jié)點(diǎn)性能較差,并且無法集群式擴(kuò)展,因此,對于某個(gè)虛擬機(jī)用戶來說,用戶對應(yīng)的網(wǎng)絡(luò)節(jié)點(diǎn)很容易被分布式拒絕服務(wù)DDoS攻擊導(dǎo)致無法服務(wù)。目前,Network Node單個(gè)節(jié)點(diǎn)很容易因受到大流量的泛洪攻擊syn flood或者大帶寬的攻擊而癱瘓。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種面向多租戶的云網(wǎng)絡(luò)架構(gòu),以實(shí)現(xiàn)云網(wǎng)絡(luò)架構(gòu)的集群式擴(kuò)展,避免因單個(gè)節(jié)點(diǎn)的故障而影響整個(gè)網(wǎng)絡(luò)的可用性,提升了網(wǎng)絡(luò)的攻擊防御能力。
[0005]本發(fā)明實(shí)施例提供了一種面向多租戶的云網(wǎng)絡(luò)架構(gòu),包括:
[0006]計(jì)算節(jié)點(diǎn)、虛擬路由器集群和云網(wǎng)關(guān),所述計(jì)算節(jié)點(diǎn)包括的虛擬機(jī)通過所述虛擬路由器集群與私有網(wǎng)絡(luò)內(nèi)的公共服務(wù)器進(jìn)行報(bào)文交換;以及,所述虛擬機(jī)通過所述虛擬路由器集群和所述云網(wǎng)關(guān)實(shí)現(xiàn)與公網(wǎng)的報(bào)文交換;其中,所述虛擬路由器集群包括至少兩個(gè)虛擬路由器,每個(gè)所述虛擬路由器向私有網(wǎng)絡(luò)交換機(jī)發(fā)布相同的網(wǎng)際協(xié)議IP地址;所述云網(wǎng)關(guān)包括至少兩個(gè)網(wǎng)關(guān)節(jié)點(diǎn),每個(gè)所述網(wǎng)關(guān)節(jié)點(diǎn)向私有網(wǎng)絡(luò)交換機(jī)發(fā)布等價(jià)的默認(rèn)路由,以及,各個(gè)所述網(wǎng)關(guān)節(jié)點(diǎn)向公網(wǎng)路由器或公網(wǎng)交換機(jī)發(fā)布相同的浮動(dòng)IP地址。
[0007]本發(fā)明的面向多租戶的云網(wǎng)絡(luò)架構(gòu),包括計(jì)算節(jié)點(diǎn)、虛擬路由器集群和云網(wǎng)關(guān),所述計(jì)算節(jié)點(diǎn)包括的虛擬機(jī)通過所述虛擬路由器集群與私有網(wǎng)絡(luò)內(nèi)的公共服務(wù)器進(jìn)行報(bào)文交換;以及,所述虛擬機(jī)通過所述虛擬路由器集群和所述云網(wǎng)關(guān)實(shí)現(xiàn)與公網(wǎng)的報(bào)文交換,由于該網(wǎng)絡(luò)包括多個(gè)虛擬路由器和多個(gè)網(wǎng)關(guān)節(jié)點(diǎn),實(shí)現(xiàn)在私有網(wǎng)絡(luò)交換機(jī)中存在多個(gè)等價(jià)路由,任意一個(gè)虛擬路由器或網(wǎng)關(guān)節(jié)點(diǎn)故障均不影響整個(gè)網(wǎng)絡(luò)的可用性;還可以通過增加虛擬路由器集群中虛擬路由器的數(shù)量和/或者增加云網(wǎng)關(guān)中網(wǎng)關(guān)節(jié)點(diǎn)的數(shù)量,達(dá)到水平擴(kuò)展網(wǎng)絡(luò)性能的效果,提升了網(wǎng)絡(luò)的攻擊防御能力。
【附圖說明】
[0008]圖1為現(xiàn)有技術(shù)中基于Openstack社區(qū)提出的平坦網(wǎng)絡(luò)模型的結(jié)構(gòu)示意圖;
[0009]圖2為現(xiàn)有技術(shù)中基于Openstack社區(qū)提出的overlay網(wǎng)絡(luò)模型的結(jié)構(gòu)示意圖;
[0010]圖3A是本發(fā)明實(shí)施例一中的一種面向多租戶的云網(wǎng)絡(luò)架構(gòu)的結(jié)構(gòu)示意圖;
[0011]圖3B是本發(fā)明實(shí)施例一中的一種面向多租戶的云網(wǎng)絡(luò)架構(gòu)的虛擬機(jī)的虛擬網(wǎng)絡(luò)地址、私有網(wǎng)絡(luò)地址與公網(wǎng)地址的對應(yīng)關(guān)系示意圖;
[0012]圖4A是本發(fā)明實(shí)施例二中的一種面向多租戶的云網(wǎng)絡(luò)架構(gòu)的虛擬機(jī)訪問公網(wǎng)內(nèi)的公共服務(wù)的流程圖;
[0013]圖4B是本發(fā)明實(shí)施例二中的一種面向多租戶的云網(wǎng)絡(luò)架構(gòu)的虛擬機(jī)訪問私有網(wǎng)絡(luò)內(nèi)的公共服務(wù)的流程圖。
【具體實(shí)施方式】
[0014]下面結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖?,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
[0015]實(shí)施例一
[0016]圖3A為本發(fā)明實(shí)施例一提供的一種面向多租戶的云網(wǎng)絡(luò)架構(gòu)的結(jié)構(gòu)示意圖,本實(shí)施例可適用于確保大規(guī)模的多租戶的云網(wǎng)絡(luò)的擴(kuò)展性和安全性的情況。該云網(wǎng)絡(luò)架構(gòu)包括:
[0017]計(jì)算節(jié)點(diǎn)、虛擬路由器集群和云網(wǎng)關(guān),所述計(jì)算節(jié)點(diǎn)包括的虛擬機(jī)通過所述虛擬路由器集群與私有網(wǎng)絡(luò)內(nèi)的公共服務(wù)器進(jìn)行報(bào)文交換;以及,所述虛擬機(jī)通過所述虛擬路由器集群和所述云網(wǎng)關(guān)實(shí)現(xiàn)與公網(wǎng)的報(bào)文交換;其中,所述虛擬路由器集群包括至少兩個(gè)虛擬路由器,每個(gè)所述虛擬路由器向私有網(wǎng)絡(luò)交換機(jī)發(fā)布相同的網(wǎng)際協(xié)議(IP)地址;所述云網(wǎng)關(guān)包括至少兩個(gè)網(wǎng)關(guān)節(jié)點(diǎn),每個(gè)所述網(wǎng)關(guān)節(jié)點(diǎn)向私有網(wǎng)絡(luò)交換機(jī)發(fā)布等價(jià)的默認(rèn)路由,以及,各個(gè)所述網(wǎng)關(guān)節(jié)點(diǎn)向公網(wǎng)路由器或公網(wǎng)交換機(jī)發(fā)布相同的浮動(dòng)IP地址。
[0018]例如,圖3A所示,每個(gè)所述虛擬路由器向私有網(wǎng)絡(luò)交換機(jī)發(fā)布的IP地址可以是10.0.1.11。在虛擬機(jī)的報(bào)文需要轉(zhuǎn)發(fā)至子網(wǎng)以外的地址時(shí),將該報(bào)文通過OpenVSwitch封裝外部的虛擬可擴(kuò)展局域網(wǎng)(VXLAN)頭部或者通用路由封裝(NVGRE)頭部,將封裝后的報(bào)文發(fā)送至虛擬路由器集群共同發(fā)布的IP地址10.0.1.11。基于虛擬路由器集群實(shí)現(xiàn)對于每個(gè)虛擬路由器,任意一個(gè)虛擬路由器故障并不會影響整個(gè)虛擬路由器集群的可用性。同時(shí),采用這樣的集群模式,通過增加集群中的機(jī)器的數(shù)量水平擴(kuò)展集群的性能,虛擬路由器集群中虛擬路由器的數(shù)量不超過私有網(wǎng)絡(luò)交換機(jī)最大可以支持的等價(jià)路由條目的數(shù)量。
[0019]其中,計(jì)算節(jié)點(diǎn)基于Openstack社區(qū)方案進(jìn)行設(shè)計(jì),不同租戶的虛擬機(jī)通過網(wǎng)橋連接到OpenVSwitch上。租戶的部分安全組規(guī)則以及網(wǎng)絡(luò)安全規(guī)則可以在該網(wǎng)橋上,通過網(wǎng)絡(luò)防火墻IPTABLES進(jìn)行配置。另外,租戶的部分安全組規(guī)則以及網(wǎng)絡(luò)安全規(guī)則還可以在OpenVSwitch進(jìn)行配置。租戶的虛擬機(jī)的虛擬網(wǎng)絡(luò)地址可以按照租戶自己的規(guī)劃進(jìn)行定義,例如,租戶1定義了 192.168.0.11和192.168.0.12的虛擬網(wǎng)絡(luò)地址,租戶2定義了192.168.1.12和192.168.0.11的虛擬網(wǎng)絡(luò)地址。租戶2可以通過配置虛擬路由器確定是否允許自身定義的兩個(gè)子網(wǎng)之間進(jìn)行報(bào)文交換。
[0020]對于所述計(jì)算節(jié)點(diǎn)上每個(gè)租戶的每一個(gè)虛擬機(jī):
[0021]所述虛擬機(jī)的虛擬網(wǎng)絡(luò)地址在每個(gè)所述虛擬路由器上存在一個(gè)對應(yīng)的私有網(wǎng)絡(luò)地址,例如,圖3A所示的10.0.3.X的地址。
[0022]以及,所述虛擬機(jī)的虛擬網(wǎng)絡(luò)地址在每個(gè)所述網(wǎng)關(guān)節(jié)點(diǎn)上存在一個(gè)對應(yīng)的公網(wǎng)地址,例如,圖3A所示的202.202.1.x的地址。
[0023]因此,所述虛擬機(jī)的虛擬網(wǎng)地址、私有網(wǎng)絡(luò)地址和公網(wǎng)地址之間的對應(yīng)關(guān)系為:
[0024]公網(wǎng)地址INET IP〈一 >私有網(wǎng)絡(luò)地址PNET IP〈一 >虛擬網(wǎng)絡(luò)地址VMNET IP。
[0025]如圖3B所示,虛擬網(wǎng)絡(luò)、私有網(wǎng)絡(luò)和公網(wǎng)的對應(yīng)關(guān)系為:
[0026]虛擬網(wǎng)絡(luò)中每個(gè)租戶的每個(gè)虛擬機(jī)(子網(wǎng))的虛擬網(wǎng)絡(luò)地址VMNET IP在私有網(wǎng)絡(luò)中均存在一個(gè)對應(yīng)的私有網(wǎng)絡(luò)地址PNET IP,即虛擬機(jī)私有網(wǎng)絡(luò)地址;以及,虛擬網(wǎng)絡(luò)中每個(gè)租戶的每個(gè)虛擬機(jī)(子網(wǎng))對應(yīng)私有網(wǎng)絡(luò)地址PNET IP在公網(wǎng)中均存在一個(gè)對應(yīng)的公網(wǎng)地址INET IP,即虛擬機(jī)浮動(dòng)公網(wǎng)地址。
[0027]其中,虛擬網(wǎng)絡(luò)中租