ベアメタルからクラウドへ:OVN の紹介

Auto Draft

前の数回では、Linux BridgeとOpen vSwitchプラグインを使用したOpenStackの関連アーキテクチャを紹介しました。今回は、比較的新しく、アーキテクチャも異なるNeutronプラグインであるOVNを紹介します。概要:OVNは、OVSを通じて仮想ネットワークを構築する分散型SDNコントローラーと言えます。以下にOVNが提供する機能の一部を挙げます。L2およびL3オーバーレイを通じてOVSに抽象化レイヤーを提供し、同時に物理ネットワークとの接続を管理できます。OVSのコネクショントラッキングを利用した柔軟なACLをサポート。OVSフローを通じて実現される分散型L3ルーティングをサポートし、IPv4とIPv6の両方に対応。OVSコネクショントラッキングを利用したNATとロードバランシング。分散型DHCP […]

ベアメタルからクラウドへ:OpenStack Neutron の紹介 — OVS セルフサービスネットワーク

Auto Draft

前回の記事では、Open vSwitch with Provider Networksのアーキテクチャとパケットフローを紹介しました。今回は、Open vSwitch with self-service networksについて紹介します。Open vSwitch: Self-service Networks アーキテクチャ。上の図は、Open vSwitch – Self-service networks構成におけるアーキテクチャ全体の概要です。どのコンポーネントがコントローラーノードで動作し、どれがコンピュートノード、どれがネットワークノードで動作しているかを確認できます。この図は、単一のuntagged (flat) provider networkと単一のself-service networksにおいて、使用されるコンポーネントがどのように接続されているかを示しています。この例では、インスタンスとDHCPエージェントが同じノードにありますが、実際の状況ではDHCPエージェントは他のコンピュートノードにある可能性があります。トラフィックフロー […]

ベアメタルからクラウドへ:OpenStack Neutron の紹介 — OVS プロバイダーネットワーク

從裸機到雲端:OpenStack Neutron 介紹 — OVS Provider Networks

前回の記事では、異なる状況下でのNeutron Linux Bridgeプラグインのアーキテクチャとフローを紹介しました。これからの数日間は、OVSプラグイン使用時のアーキテクチャとトラフィックの流れについて紹介します。まず最初の記事として、Open vSwitch with Provider Networkを紹介します。Open vSwitch: Provider networks アーキテクチャ。上の図は、Linux Bridge – Provider Networks構成におけるアーキテクチャ全体の概要です。どのコンポーネントがコントローラーノードで動作し、どれがコンピュートノードで動作しているかを確認できます。この図は、単一のprovider network (untagged/flat) において、コンピュートノード内のコンポーネントがどのように接続されているかを示しています。この例では、インスタンスとDHCPエージェントが同じノードにありますが、実際の状況ではDHCPエージェントは他のコンピュートノードにある可能性があります。複数のProvider networksがある場合 […]

ベアメタルからクラウドへ:OpenStack Neutron の紹介 — Linux Bridge – セルフサービスネットワーク

Auto Draft

前回の記事では、Linux Bridge with Provider Networkのアーキテクチャとパケットフローを紹介しました。今回は、Linux Bridge with self-service networksについて紹介します。Linux bridge: Self-service Networks。Self-service networksは、ユーザーにほぼ無制限の数の仮想ネットワークを提供します。NeutronはVLAN self-service networksもサポートしていますが、この例ではVXLAN self-service networksを例に説明します。アーキテクチャ。上の図は、Linux Bridge – Self-service networks構成におけるアーキテクチャ全体の概要です。どのコンポーネントがコントローラーノードで動作し、どれがコンピュートノード、どれがネットワークノードで動作しているかを確認できます。この図は、単一のprovider networkにおいて、self-service networksで使用されるコンポーネントがどのように接続されているかを示しています。この例では、インスタンスとDHCP […]

ベアメタルからクラウドへ:OpenStack Neutron 紹介 — Linux Bridge Provider Networks

從裸機到雲端:OpenStack Neutron 介紹 — Linux Bridge 1

上篇介紹了 Neutron 的架構,再接下來幾天會介紹 Neutron 使用 Linux Bridge 跟 OVS plug-in 時的架構以及流量是怎麼流的。首先第一篇筆者會先來介紹 Linux Bridge with Provider Network。 Linux bridge: Provider networks Provider network 架構示例使用 VLAN (802.1q) tagging 在實例 (instance) 和實體網路基礎設施之間提供 L2 連接。 它支援一個 non-tagged(扁平)網路和多達 4095 個 tagging (VLAN) 網路。 VLAN 網路的實際數量取決於物理網絡基礎設施。 架構 上圖為 Linux Bridge – Provider Networts 架構下的整個架構總覽,可以看到那些元件是跑在 controller node 上,哪些是在 compute node 上。 這張圖畫出了在單一 […]

ベアメタルからクラウドへ:OpenStack Neutron 紹介 3

Auto Draft

上一篇介紹了 Neutron 的網路的概念,接下來將會接續介紹 Neutron 的一些名詞。 Neutron 概念 (名詞) Subnets (子網) Subnets 是一組 IP 地址和其相關的設定狀態,其功能是為 provider/project networks 提供 IPAM(IP 地址管理)的功能。 子網用於在網絡上創建連接埠時分配 IP 地址。 Subnet pools 使用者通常可以使用任何有效的 IP 地址創建子網,而沒有其他限制。 但是,在某些情況下,管理員或 project 會希望預先定義一個地址池 (IP address pool),使在創毽子網的時候自動分配一段地址。在一些狀況下管理員可能想避免 IP 地址重複,就可以使用 subnet pools 防止來自同一池的兩個子網的地址重複。 Port (連接埠) 連接埠是將單個設備(例如虛擬伺服器的 NIC)連接到虛擬網路的連接點。 該連接埠還描述了相關的網路設定,例如要在該連接埠上使用的 MAC 和 IP 地址。 路由器 (Router) 路由器提供虛擬的 L3 功能,例如self-service 跟 provider 網路之間或是 […]

ベアメタルからクラウドへ:OpenStack Neutron 紹介 2

Auto Draft

上一篇介紹了 Neutron 的架構,接下來兩篇將會接續介紹 Neutron 的一些概念和名詞。 Neutron 概念 Neutron 提供使用者創建網路跟其子網域,並可將其他 OpenStack 服務(如 Compute)將虛擬設備連接到這些網路上的端口,通常最常見的就是連接 Instance 到網路。Neutron 支援每個 project 擁有多個私有網絡,並允許 project 選擇自己的 IP addressing 方案,並且不同網路中的 IP 地址與其他 project 使用的 IP 地址重疊。 有兩種類型的網絡,provider network 和 self-service network,這些網路是可以在 project 之間共享的。 Provider Networks Provider networks 為實例 (Instance) 提供 L2 網路連結,並支援 DHCP 和元數據 (metadata) 服務。 這些網路是連接到資料中心現有的 L2 網路,通常使用 VLAN (802.1q) tagging 來識別和隔離它們。 […]

ベアメタルからクラウドへ:OpenStack Neutron 紹介 1

Auto Draft

昨天為讀者介紹目前 OpenStack 中算是最核心的元件,Keystone,今天來介紹 OpenStack 筆者認為最複雜的原件,Neutron,也是 OpenStack 提供網路服務的元件。 Neutron 架構 OpenStack Networking (neutron) 允許您創建網路介面 (network interface) 並接上其他 OpenStack 元件管理的服務 (如 Nova VM),使其能夠連接到網絡。可以透過不同的後端 plugin 去因應不同的網絡設備和軟體,為 OpenStack 架構和部署提供靈活性。 它包括以下組件: Neutron-server 接受 API 請求並將其路由到適當的 OpenStack Networking 插件以進行操作。 OpenStack Networking 後端 plug-ins 和 agents 插入和拔除端口,創建網絡或子網路,並提供 IP 位置。這些 plug-ins 和 agents 根據不同的雲中使用的供應商和技術而異。常見的 plug-ins 為 OVS, Linux Bridge 和 OVN,後續會介紹其架構。 常見的 agents […]

ベアメタルからクラウドへ:OpenStack Keystone 紹介

從裸機到雲端:OpenStack Keystone 介紹

上一篇介紹了歷史最悠久的 OpenStack 元件 Nova,這篇要來介紹目前 OpenStack 中算是最核心的元件,Keystone Keystone 是什麼? 官方文件中是這樣敘述的: Keystone 是一個 OpenStack 服務,通過實現 OpenStack 的 Identity API 來提供 API 客戶端認證、服務發現 (service discovery) 和分散式多租戶授權 (distributed multi-tenant authorization)。 簡單來講,你可以把它當成 OpenStack 中的認證服務,並且記錄了所有 OpenStack API 的所在位置 (endpoint)。 Keystone 架構 Keystone 是由多個不同的內部服務 (internal service) 組成,而這些服務通常是組合在一起使用。例如:一個認證的請求首先會透過 Identity 服務驗證使用者提供的 credentials,成功後透過 Token 服務生成一個 token 給使用者。 Keystone 包含了以下服務: Identity Resource Assignment Token Catalog 我們將一一介紹這些服務的功能。 […]

ベアメタルからクラウドへ:OpenStack 紹介 2

Auto Draft

前回の記事では、非技術的な視点から OpenStack プロジェクトを紹介しました。今回からは、より技術的な視点で OpenStack を紹介していきます。まず本記事では、OpenStack を構成するコンポーネントの概要を説明し、続く数記事で各コンポーネントについて詳しく解説していく予定です。