中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

openstack neutron的示例分析

發布時間:2021-12-04 15:33:00 來源:億速云 閱讀:137 作者:小新 欄目:云計算

這篇文章主要介紹了openstack neutron的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

openstack neutron


Linux Host 側使用的網絡元素簡介
Linux 主要使用以下三種設備模型:Bridge、TAP、VETH、VLAN。Bridge 設備是基于內核實現的二層數據交換設備,其作用類似于現實世界中的二級交換機。TAP 設備是一種工作在二層協議的點對點網絡設備,每一個 TAP 設備都有一個對應的 Linux 字符設備,用戶程序可以通過對字符設備的讀寫操作,完成與 Linux 內核網絡協議棧的數據交換工作,在虛擬化環境中經常被模擬器使用。VETH 設備是一種成對出現的點對點網絡設備,從一段輸入的數據會從另一端改變方向輸出,通常用于改變數據方向,或連接其它網絡設備。VLAN 設備是以母子關系出現的一組設備,是 Linux 里對 802.1.Q VLAN 技術的部分實現,主要完成對 802.1.Q VLAN Tag 的處理。

上半部分原文出處(http://panpei.net.cn/2013/12/04/openstack-neutron-mechanism-introduce/)
借用原資料上的一張架構圖為開篇:

openstack neutron的示例分析  

openstack neutron

從這張架構圖中,我們可以明顯的看到有兩個物理主機,計算節點和網絡節點,這是因為采用了網絡節點集中式的部署方式。至于為什么采用這種部署方式,那是因為自從E版之后,OpenStack開始把network功能從Nova中分離出來,使之成為獨立的Neutron組件。而坑爹的是,分離后的版本,反而不支持網絡分布式部署的特性了,所以目前的Grizzly和Havana版本都是只能使用網絡集中式部署方案的,或者說,集群中只能存在一個部署網絡功能的節點。

計算節點:虛擬機實例的網絡
從圖中看,這段網絡包含了A、B、C這三段的流程。A就是虛擬機test0的虛擬網卡,這塊沒什么好講的。和它相連的B倒是值得好好講一下。B是一個TAP設備,通常是以tap開頭的一段名稱,它掛載在Linux Bridge qbr上面。那什么又是TAP設備呢?Linux 中的虛擬網絡中給出了這樣的解釋:
TAP是一個虛擬網絡內核驅動,該驅動實現Ethernet設備,并在Ethernet框架級別操作。TAP驅動提供了Ethernet “tap”,訪問Ethernet框架能夠通過它進行通信。
總而言之,TAP設備其實就是一個Linux內核虛擬化出來的一個網絡接口。OK,我們明白了TAP設備了,如果還是不明白可以查看TAP的具體定義。接下來就是qbr,這之前就說了,是一個Linux Bridge,很是奇怪,我們在這個架構中,使用的OpenvSwitch實現虛擬交換設備的,為什么會出現Linux Bridge呢?OpenStack Networking Administration Guide給出了這樣的解釋:
Ideally, the TAP device vnet0 would be connected directly to the integration bridge, br-int. Unfortunately, this isn’t possible because of how OpenStack security groups are currently implemented. OpenStack uses iptables rules on the TAP devices such as vnet0 to implement security groups, and Open vSwitch is not compatible with iptables rules that are applied directly on TAP devices that are connected to an Open vSwitch port.
其實就是說,OpenvSwitch不支持現在的OpenStack的實現方式,因為OpenStack是把iptables規則丟在TAP設備中,以此實現了安全組功能。沒辦法,所以用了一個折衷的方式,在中間加一層,用Linux Bridge來實現吧,這樣,就莫名其妙了多了一個qbr網橋。在qbr上面還存在另一個設備C,這也是一個TAP設備。C通常以qvb開頭,C和br-int上的D連接在一起,形成一個連接通道,使得qbr和br-int之間順暢通信。

計算節點:集成網橋(br-int)的網絡
剛才說到D(這也是一個TAP設備)在br-int上面,現在輪到br-int出場了,br-int是由OpenvSwitch虛擬化出來的網橋,但事實上它已經充當了一個虛擬交換機的功能了。br-int的主要職責就是把它所在的計算節點上的VM都連接到它這個虛擬交換機上面,然后利用下面要介紹的br-tun的穿透功能,實現了不同計算節點上的VM連接在同一個邏輯上的虛擬交換機上面的功能。這個似乎有點拗口,其實就是在管理員看來,所有的VM都是連接在一個虛擬交換機上面的,但事實上這些VM又都是分布在不同的物理主機上面。OK,回到D上面,D通常以qvo開頭。在上面還有另一個端口E,它總是以patch-tun的形式出現,從字面就可以看出它是用來連接br-tun的。

計算節點:通道網橋(br-tun)的網絡
br-tun在上面已經提及了,這同樣是OpenvSwitch虛擬化出來的網橋,但是它不是用來充當虛擬交換機的,它的存在只是用來充當一個通道層,通過它上面的設備G與其他物理機上的br-tun通信,構成一個統一的通信層。這樣的話,網絡節點和計算節點、計算節點和計算節點這樣就會點對點的形成一個以GRE為基礎的通信網絡,互相之間通過這個網絡進行大量的數據交換。這樣,網絡節點和計算節點之間的通信就此打通了。而圖中的G、H正是描畫這一通信。

網絡節點:通道網橋(br-tun)的網絡
正如前面所說,網絡節點上也是存在一個br-tun,它的作用同計算節點上的br-tun如出一轍,都是為了在整個系統中構建一個統一的通信層而存在的。所以,這一部分的網絡同計算節點上的網絡的功能是一致的,因此,也就沒有必要多說了。

網絡節點:集成網橋(br-int)的網絡
網絡節點上的br-int也是起了交換機的作用,它通過I、J與br-tun連接在一起。最終的要的是,在這個虛擬交換機上,還有其他兩個重要的tap設備M、O,它們分別同N、P相連,而N、P作為tap設備則是分別歸屬兩個namespacerouter和dhcp,沒錯,正如這兩個namespace的名稱所示,它們承擔的就是router和dhcp的功能。這個router是由l3-agent根據網絡管理的需要而創建的,然后,該router就與特定一個子網綁定到一起,管理這個子網的路由功能。router實現路由功能,則是依靠在該namespace中的iptables實現的。dhcp則也是l3-agent根據需要針對特定的子網創建的,在這個namespace中,l3-agent會啟動一個dnsmasq的進程,由它來實際掌管該子網的dhcp功能。由于這個兩個namespace都是針對特定的子網創建的,因而在現有的OpenStack系統中,它們常常是成對出現的。

網絡節點:外部網橋(br-ex)的網絡
當數據從router中路由出來后,就會通過L、K傳送到br-ex這個虛擬網橋上,而br-ex實際上是混雜模式加載在物理網卡上,實時接收著網絡上的數據包。至此,我們的計算節點上的VM就可以與外部的網絡進行自由的通信了。當然,前提是我們要給這個VM已經分配了float-ip。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“openstack neutron的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

华坪县| 盐津县| 治多县| 营山县| 青海省| 静乐县| 余江县| 吉安县| 西平县| 南部县| 华蓥市| 武乡县| 噶尔县| 克东县| 安溪县| 禄劝| 平度市| 互助| 永川市| 台山市| 丰都县| 小金县| 塘沽区| 大安市| 合川市| 长宁县| 怀集县| 广宁县| 洞头县| 德兴市| 嵊泗县| 镇平县| 霸州市| 伊宁市| 高密市| 安泽县| 南岸区| 涞源县| 夏河县| 克东县| 新丰县|