2021-03-19 分類: 網(wǎng)站建設(shè)
VPC全稱是Virtual Private Cloud,翻譯成中文是虛擬私有云。但是在有些場合也被翻譯成私有網(wǎng)絡(luò)或者專有網(wǎng)絡(luò)等。這里其實(shí)就有些讓人迷惑,VPC究竟是指云還是網(wǎng)絡(luò)?答案是,VPC即是一種云,也是一種網(wǎng)絡(luò)模式,不過應(yīng)該從服務(wù)和技術(shù)的角度分別來看。
一、虛擬私有云
首先從服務(wù)的角度來看,VPC指的是一種云(Cloud),這與它的字面意思相符。對于基礎(chǔ)架構(gòu)服務(wù)(IaaS),云就是指資源池。你或許聽過公有云(Public Cloud)、私有云(Private Cloud)、混合云(Hybrid Cloud)。不過,VPC不屬于這三種云中任一種。這是一種運(yùn)行在公有云上,將一部分公有云資源為某個用戶隔離出來,給這個用戶私有使用的資源的集合。VPC是這么一種云,它由公有云管理,運(yùn)行在公共資源上,但是保證每個用戶之間的資源是隔離,用戶在使用的時候不受其他用戶的影響,感覺像是在使用自己的私有云一樣。
從這種意義上看,VPC不是網(wǎng)絡(luò),我們可以對比VPC和它一個字面上相近的概念:VPN(Virtual Private Network)。VPN在公共的網(wǎng)絡(luò)資源上虛擬隔離出一個個用戶網(wǎng)絡(luò),例如IPsec VPN可以是在互聯(lián)網(wǎng)上構(gòu)建連接用戶私有網(wǎng)絡(luò)的隧道,MPLS VPN更是直接在運(yùn)營商的PE設(shè)備上劃分隔離的VRF給不同的用戶。從提供服務(wù)的角度來,說如果VPC指的只是網(wǎng)絡(luò)的話,那它跟VPN的概念是重復(fù)的。所以,從公有云提供所提供的服務(wù)來說,VPC應(yīng)該理解成,向用戶提供的隔離資源的集合。
VPC最早是由AWS在2009年提出[1],不過VPC的一些組成元素在其提出之前就已經(jīng)存在。VPC只是將這些元素以私有云的視角重新包裝了一下。在VPC之后,云主機(jī)只能使用VPC內(nèi)部的對應(yīng)的元素。從這個角度看,VPC更像是公有云服務(wù)商以打包的形式提供服務(wù)。
用戶可以在公有云上創(chuàng)建一個或者多個VPC,每個部門一個VPC。對于需要連通的部門創(chuàng)建VPC連接。
同時,用戶也可以通過VPN將自己內(nèi)部的數(shù)據(jù)中心與公有云上的VPC連接,構(gòu)成混合云。
不論哪種用例,VPC都以更加直觀形象讓用戶來設(shè)計如何在公有云上存放自己的數(shù)據(jù)。
二、VPC硬件租用模式
VPC硬件租用模式(Hardware Tenancy)本身也是公有云提供的一種服務(wù)模式。VPC的硬件租用模式有兩種,一種是共享(shared),一種是專屬(dedicated)。共享是指VPC中的虛擬機(jī)運(yùn)行在共享的硬件資源上,不同VPC中的虛擬機(jī)通過VPC進(jìn)行隔離。專屬是指VPC中的虛擬機(jī)運(yùn)行在專屬的硬件資源上,不同VPC中的虛擬機(jī)在物理上就是隔離的,同時VPC幫助實(shí)現(xiàn)網(wǎng)絡(luò)上的隔離。專屬模式相當(dāng)于用戶直接向公有云服務(wù)商租用物理主機(jī)。專屬模式適合那些對于數(shù)據(jù)安全比較敏感的用戶,不過這些物理主機(jī)還是由公有云服務(wù)商管理。
不論是共享模式還是專屬模式,VPC都運(yùn)行在公有云資源上,由公有云服務(wù)商管理。
三、專有網(wǎng)絡(luò)
從技術(shù)角度來看,VPC是用戶專屬的一個二層網(wǎng)絡(luò)。
1. 經(jīng)典網(wǎng)絡(luò)VS VPC
AWS的網(wǎng)絡(luò)產(chǎn)品,在VPC之前稱為EC2-Classic。去年的一個熱點(diǎn)文章《關(guān)于阿里云的經(jīng)典網(wǎng)絡(luò)問題》說的就是這兩種網(wǎng)絡(luò)模式:Classic和VPC。他們之間最核心的區(qū)別是:經(jīng)典網(wǎng)絡(luò)提供的是多用戶共享的網(wǎng)絡(luò),而VPC提供的是用戶專屬的網(wǎng)絡(luò)。
這里的網(wǎng)絡(luò)就是指二層網(wǎng)絡(luò),經(jīng)典網(wǎng)絡(luò)模型本身有很多問題,其中大的問題就是安全問題。除非加了特定的防火墻規(guī)則去攔截,二層網(wǎng)絡(luò)內(nèi)的所有設(shè)備默認(rèn)是可以通信的。這就好比大家都擠在一個房間里,彼此的隱私很難保障一樣。稍有不慎,云主機(jī)就可能被同網(wǎng)絡(luò)的其他用戶惡意攻擊。而VPC能夠為每個用戶一個專屬獨(dú)立的二層網(wǎng)絡(luò)。這樣相當(dāng)于給每個用戶分了個房間,用戶的隱私更容易得到保障。就算有惡意攻擊,一般也要走到網(wǎng)關(guān)或者VPN設(shè)備,在這些集中的設(shè)備上,網(wǎng)絡(luò)流量更可控。
由于每個用戶都有專屬的二層網(wǎng)絡(luò),那說明VPC模式下的可用二層網(wǎng)絡(luò)的數(shù)量是遠(yuǎn)超經(jīng)典模式的。雖然各家都沒有公布自己的實(shí)現(xiàn)細(xì)節(jié),但是這里有點(diǎn)類似VXLAN和VLAN的關(guān)系。VXLAN可以有1600萬個二層網(wǎng)絡(luò),VLAN只有4000多個二層網(wǎng)絡(luò)。公有云與私有云的區(qū)別在于用戶數(shù)量巨大。如果采用VLAN,每個用戶一個二層網(wǎng)絡(luò),那最多只能帶4000多個用戶,公有云許多用戶還是只有1-2個云主機(jī)那種,那必然不能滿足公有云的需求,所以在早期的經(jīng)典網(wǎng)絡(luò)模式下,不得不讓多個用戶擠在一個網(wǎng)絡(luò)里面。而如果采用VXLAN之類的技術(shù),則可以保證在一個region里面為1600萬個用戶每人分到一個二層網(wǎng)絡(luò)。
因為VPC是一個用戶專屬的網(wǎng)絡(luò),用戶可以任意定義VPC內(nèi)云主機(jī)的IP地址。二層隔離了,IP地址想怎么玩就怎么玩。而在經(jīng)典網(wǎng)絡(luò)模式下,大家擠在一個二層網(wǎng)絡(luò)里面,IP地址首先要保證不要重合,這對用戶和服務(wù)商來說都不是一件心情愉快的事情。
2. VPC的網(wǎng)絡(luò)overlay
從AWS公布的資料[2] 看,VPC的數(shù)據(jù)封裝與VXLAN這類網(wǎng)絡(luò)Overlay技術(shù)也很像。從下圖可以看出,桔色的VPC中,10.0.0.2發(fā)往10.0.0.3的網(wǎng)絡(luò)數(shù)據(jù),最終被封裝成主機(jī)之間的通信報文。
原始的二層幀,被VPC標(biāo)簽封裝,之后封裝在另一個IP報文里面。這與VXLAN的封裝方式可以說是一模一樣。不過需要澄清的是,AWS在2010年就已經(jīng)開始應(yīng)用VPC,而VXLAN標(biāo)準(zhǔn)是2014年[3]才終稿。AWS的VPC或許和VXLAN不一樣,但是按照VXLAN理解VPC的overlay會更容易些。
VPC使用網(wǎng)絡(luò)Overlay之后,可以構(gòu)建一個L3之上的L2。這樣一個VPC內(nèi)的虛機(jī),可以任意的在數(shù)據(jù)中心分布。實(shí)際中云主機(jī)肯定不是任意分布的,會有一些主機(jī)的調(diào)度優(yōu)化算法,但是至少,網(wǎng)絡(luò)不會成為限制云主機(jī)部署的因素。舉個反例,如果使用VLAN,虛機(jī)必須部署在支持相應(yīng)VLAN的設(shè)備上,哪怕這個設(shè)備已經(jīng)接近飽和,而其他的設(shè)備卻是空置的。如下圖,因為左邊的機(jī)架不支持相應(yīng)的網(wǎng)絡(luò),對應(yīng)的云主機(jī)只能往右邊的機(jī)架塞,直到塞滿。而同時,左邊的機(jī)架負(fù)載還不到50%。
Overlay使得VPC不再受網(wǎng)絡(luò)硬件的限制,VPC內(nèi)的云主機(jī)可以部署在整個機(jī)房。
四、VPC與SDN
AWS在2017年提出,VPC是構(gòu)建在軟件(代碼)之上,VPC就是SDN[4]。我們前面說過,VPC是一個二層網(wǎng)絡(luò),是一個構(gòu)建在L3之上的L2 Overlay網(wǎng)絡(luò)。這里說VPC就是SDN,實(shí)際上是指,VPC受SDN所控制。AWS的VPC依靠一個叫Mapping Service的組件工作。當(dāng)虛機(jī)之間要通信的時候,請求先發(fā)到Mapping Service,再由它找到目的虛機(jī)對應(yīng)的信息(例如目的虛機(jī)所在的主機(jī)IP地址),Mapping Service用對應(yīng)的信息,封裝成Overlay數(shù)據(jù)(類似于封裝成VXLAN數(shù)據(jù)),再進(jìn)行傳輸。
如果是一個三層通信,傳統(tǒng)上是要發(fā)到網(wǎng)關(guān),由網(wǎng)關(guān)轉(zhuǎn)發(fā)到目的虛機(jī)。而對于AWS的VPC,Mapping Service同樣也會完成三層通信的信息查找,數(shù)據(jù)封裝。這樣連路由器都省了。
這里的Mapping Service,與SDN控制器的作用可以說是一樣的。SDN控制器掌握了所有的網(wǎng)絡(luò)信息,當(dāng)需要進(jìn)行二層,三層通信時,SDN控制器會根據(jù)網(wǎng)絡(luò)數(shù)據(jù)包下發(fā)OpenFlow流表,使得虛機(jī)之間直接通信。
如果說Mapping Service是SDN控制器,那么更具體點(diǎn),它還是一個分布式SDN控制器,因為每個主機(jī)上都有一個Mapping Service的緩存。通過這種分布式,可以實(shí)現(xiàn)高速運(yùn)算處理。
1. VPC相關(guān)的網(wǎng)絡(luò)資源
VPC雖然指的是專有網(wǎng)絡(luò),但是跟網(wǎng)絡(luò)配套的資源有很多,這些網(wǎng)絡(luò)資源都是以VPC為單位來劃分。也就是說,定義在一個VPC內(nèi)的網(wǎng)絡(luò)資源,只能被這個VPC內(nèi)的虛機(jī)所使用。這在前面講服務(wù)的時候提到過。這些資源[5]可以概括如下:
Security Group, Subnet, Network ACL, Routing Table, Router,這些都是老生常談了。以VPC為單位來劃分這些資源,可以更好的突出私有的感覺。但是實(shí)際上這些資源大多是虛擬的,每個用戶占有一份也不會增加公有云運(yùn)營商的成本。
需要注意的是,VPC盡管是一個二層網(wǎng)絡(luò),但是AWS仍然是通過路由器連接一個VPC下的兩個Subnet。
2. VPC邊緣設(shè)備
前面講服務(wù)的時候說過,VPC從服務(wù)的角度來看是虛擬私有云,表示的公有云運(yùn)營商提供給用戶的隔離資源的集合。它相當(dāng)于是漂浮在公有云上的孤島。真正讓VPC變得強(qiáng)大的是它各式各樣的連接技術(shù)。AWS提供了一個Edge設(shè)備(Blackfoot Edge Device),VPC通過這個Edge設(shè)備可以:
這才是公有云服務(wù)商在構(gòu)建VPC網(wǎng)絡(luò)時,真正的競爭力所在。有了這樣的Edge設(shè)備,VPC不再是孤島,而是有了連接其他陸地的橋梁。這里的Edge設(shè)備,可以看成是VNF,AWS需要用戶在VPC內(nèi)部手動配置路由來引流到這個Edge設(shè)備。
五、總結(jié)
不論是對用戶還是公有云服務(wù)商,VPC都是一個更好的選擇。對于用戶來說,首先可以任意定義VPC內(nèi)的IP地址。其次VPC像是一個容器,裝載著所有的云主機(jī),同時又與其他的VPC隔離。第三,用戶還可以用各種連接服務(wù)(VPN,NAT等)將VPC與現(xiàn)有的網(wǎng)絡(luò)連接起來。這樣對用戶來說,既保證了網(wǎng)絡(luò)隔離,又能提供按需的網(wǎng)絡(luò)連通。對公有云服務(wù)商來說,VPC實(shí)際上就是SDN在公有云的應(yīng)用。軟件可控,Overlay使得服務(wù)商的硬件利用率提高,對硬件廠商的依賴程度降低。在這個基礎(chǔ)上,公有云服務(wù)商還能夠提供更好的網(wǎng)絡(luò)服務(wù)。
文章題目:原來這就是VPC
當(dāng)前地址:http://jinyejixie.com/news/105477.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、小程序開發(fā)、搜索引擎優(yōu)化、網(wǎng)頁設(shè)計公司、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站改版
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容