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