從裸機到雲端:OpenStack Neutron 介紹 — OVN 架構

從裸機到雲端:OpenStack Neutron — OVN Plug-in 架構

上篇介紹了 OVN,本篇要來進入 OVN Plug-in 在 OpenStack 中的參考架構。

架構布局

參考架構中將 OVN 元件拆分成 4 個不同種類的節點各自負責不同任務

Controller Node

Controller node 主要提供以下功能:

  • 1 個 management interface
  • 認證服務 (Keystone)
  • 映像檔服務 (Glance)
  • 透過 OVN ML2 mechanism driver 進行網路管理 (control plane)
  • 運算資源管理 (Nova control plane)

Database Node

Database node 主要負責 OVN 相關 databse,包含以下元件:

  • 1 個 management interface
  • ovn-northd
  • OVN northbound database
  • OVN southbound databse

Compute Node

Compute node 包含以下元件:

  • 2-3 個 interface,提供給 management, overlay, 跟 provider networks
  • Nova-compute
  • Hypervisor (KVM)
  • ovn-controller
  • ovs-vswitchd
  • ovsdb-server 跟 OVS local configuration (conf.db) database
  • ovn-metadata-agent

Gateway Node

Gateway node 包含以下元件:

  • 3 個 interface,提供給 management, overlay, 跟 provider networks
  • ovn-controller
  • ovs-vswitchd
  • ovsdb-server 跟 OVS local configuration (conf.db) database

硬體布局

硬體布局可以參考官方文件的圖片,大致了解一下各個節點的最低需求。

軟體布局

官方文件圖片的軟體布局裡面介紹了各個節點中跑了哪些 process,這些 process 只有列出跟 OVN 比較相關的,其他服務如 Keystone 等沒有列在上面。

注意這只是官方參考架構,在節點數不夠多時可以將一些元件跑在同一個節點上。

OVN 整合的 OpenStack 網路

部屬出來的 OpenStack 網路架構大致上長這樣:

使用 networking-ovn 時,穿過虛擬路由器的所有東西向流量流量都是完全分散式的,是從 compute node 直接到 compute node,不需通過 network node,這減少了一些 latency 以及可能的 bottleneck。

需要 SNAT(無 floating IP)的南北流量將會需要通過 gateway node,當你有多個 gateway node 的時候,OVN 有內建的 HA 讓你在其中一個 node 下線時網路不會被影響。

Floating IP 的部屬方式又分為下兩種:

Centralized Floating IPs

在這個架構下,所有的透過路由器的南北向流量都會通過 gateway node,compute node 可以不需要有跟對外網路溝通的能力。

Distributed Floating IPs (DVR)

在這種架構下,Floating IP 南北向流量會通過特定的 provider network bridge 直接從 compute node 出去。 在這種情況下,compute node 需要有對外網路連結。

每個計算節點都包含以下元件:

同時你可以有多個不同的 provider bridge 連接到不同的 provider network。

小結

以上大概就是利用 OVN 提供 OpenStack Networking 時的整個網路架構,在下一篇我們會快速的比較在 OpenStack 中使用 OVN 跟 OVS 的差別。


Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.