91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

如何理解Neutron架構

發布時間:2021-11-19 15:56:47 來源:億速云 閱讀:323 作者:柒染 欄目:云計算

這篇文章將為大家詳細講解有關如何理解Neutron架構,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

今天我們分析 Neutron 的架構。

Neutron 架構

與 OpenStack 的其他服務的設計思路一樣,Neutron 也是采用分布式架構,由多個組件(子服務)共同對外提供網絡服務。

Neutron 由如下組件構成:

Neutron Server
對外提供 OpenStack 網絡 API,接收請求,并調用 Plugin 處理請求。

Plugin
處理 Neutron Server 發來的請求,維護 OpenStack 邏輯網絡的狀態, 并調用 Agent 處理請求。

Agent
處理 Plugin 的請求,負責在 network provider 上真正實現各種網絡功能。

network provider
提供網絡服務的虛擬或物理網絡設備,例如 Linux Bridge,Open vSwitch 或者其他支持 Neutron 的物理交換機。

Queue
Neutron Server,Plugin 和 Agent 之間通過 Messaging Queue 通信和調用。

Database
存放 OpenStack 的網絡狀態信息,包括 Network, Subnet, Port, Router 等。

Neutron 架構非常靈活,層次較多,其目的是:

  1. 為了支持各種現有或者將來會出現的優秀網絡技術。

  2. 支持分布式部署,獲得足夠的擴展性。

通常魚和熊掌不能兼得,雖然獲得了這些優勢,但這樣使得 Neutron 更加復雜,更不容易理解。 后面我們會詳細討論 Neutron 的各個組件,但在這之前,非常有必要先通過一個例子了解這些組件各自的職責以及是如何協同工作。

以創建一個 VLAN100 的 network 為例,假設 network provider 是 linux bridge, 流程如下:

  1. Neutron Server 接收到創建 network 的請求,通過 Message Queue(RabbitMQ)通知已注冊的 Linux Bridge Plugin。

  2. Plugin 將要創建的 network 的信息(例如名稱、VLAN ID等)保存到數據庫中,并通過 Message Queue 通知運行在各節點上的 Agent。

  3. Agent 收到消息后會在節點上的物理網卡(比如 eth3)上創建 VLAN 設備(比如 eth3.100),并創建 bridge (比如 brqXXX) 橋接 VLAN 設備。

關于 linux bridge 如何實現 VLAN 大家可以參考本教程“預備知識->網絡虛擬化”的相關章節。

這里進行幾點說明:

  1. plugin 解決的是 What 的問題,即網絡要配置成什么樣子?而至于如何配置 How 的工作則交由 agent 完成。

  2. plugin,agent 和 network provider 是配套使用的,比如上例中 network provider 是 linux bridge,那么就得使用 linux bridge 的 plungin 和 agent;如果 network provider 換成了 OVS 或者物理交換機,plugin 和 agent 也得替換。

  3. plugin 的一個主要的職責是在數據庫中維護 Neutron 網絡的狀態信息,這就造成一個問題:所有 network provider 的 plugin 都要編寫一套非常類似的數據庫訪問代碼。為了解決這個問題,Neutron 在 Havana 版本實現了一個 ML2(Modular Layer 2)plugin,對 plgin 的功能進行抽象和封裝。有了 ML2 plugin,各種 network provider 無需開發自己的 plugin,只需要針對 ML2 開發相應的 driver 就可以了,工作量和難度都大大減少。ML2 會在后面詳細討論。

  4. plugin 按照功能分為兩類: core plugin 和 service plugin。core plugin 維護 Neutron 的 netowrk, subnet 和 port 相關資源的信息,與 core plugin 對應的 agent 包括 linux bridge, OVS 等; service plugin 提供 routing, firewall, load balance 等服務,也有相應的 agent。后面也會分別詳細討論。

關于如何理解Neutron架構就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

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

AI

东港市| 汽车| 英超| 淳化县| 吉木萨尔县| 麻江县| 湖南省| 河间市| 涟源市| 平罗县| 怀化市| 洛川县| 调兵山市| 米林县| 安新县| 芦溪县| 隆昌县| 城步| 庄河市| 肥城市| 永德县| 高台县| 新巴尔虎右旗| 师宗县| 阳朔县| 阳新县| 隆安县| 宿州市| 崇礼县| 千阳县| 民权县| 永年县| 衡水市| 阳西县| 海林市| 和政县| 闽侯县| 砚山县| 时尚| 淳安县| 石阡县|