前回の記事では OVN について紹介しましたが、今回は OpenStack における OVN プラグインのリファレンスアーキテクチャについて解説します。
目次
アーキテクチャ構成
リファレンスアーキテクチャでは、OVN コンポーネントを 4 種類のノードに分割し、それぞれが異なる役割を担います。
コントローラーノード
コントローラーノードは、主に以下の機能を提供します:
- 1つの管理インターフェース
- 認証サービス (Keystone)
- イメージサービス (Glance)
- OVN ML2メカニズムドライバーによるネットワーク管理 (コントロールプレーン)
- コンピュートリソース管理 (Novaコントロールプレーン)
データベースノード
データベースノードは、主に OVN 関連のデータベースを担当し、以下のコンポーネントが含まれます:
- 1つの管理インターフェース
- ovn-northd
- OVN Northbound データベース
- OVN Southbound データベース
コンピュートノード
コンピュートノード(Compute node)には以下のコンポーネントが含まれます:
- 2〜3個のインターフェース(管理、オーバーレイ、プロバイダーネットワーク用)
- Nova-compute
- ハイパーバイザ (KVM)
- ovn-controller
- ovs-vswitchd
- ovsdb-server および OVS ローカル設定 (conf.db) データベース
- ovn メタデータ エージェント
ゲートウェイノード
ゲートウェイノード(Gateway node)には以下のコンポーネントが含まれます:
- 3個のインターフェース(管理、オーバーレイ、プロバイダーネットワーク用)
- ovn-controller
- ovs-vswitchd
- ovsdb-server および OVS ローカル設定 (conf.db) データベース
ハードウェア構成
ハードウェア構成については、公式ドキュメントの図を参照して、各ノードの最小要件を大まかに把握してください。
ソフトウェア構成
公式ドキュメントの図にあるソフトウェア構成では、各ノードで実行されているプロセスが紹介されています。これらのプロセスは OVN に関連するもののみがリストされており、Keystone などの他のサービスは記載されていません。
これはあくまで公式のリファレンスアーキテクチャであることに注意してください。ノード数が不足している場合は、一部のコンポーネントを同一ノード上で実行することも可能です业务。
OVNを統合したOpenStackネットワーク
デプロイされた OpenStack のネットワーク構成は、概ね以下のようになります。
networking-ovn を使用する場合、仮想ルーターを経由するすべての東西トラフィックは完全に分散されます。ネットワークノードを経由せず、コンピュートノードからコンピュートノードへ直接流れるため、レイテンシや潜在的なボトルネックが軽減されます。
SNAT(フローティング IP なし)を必要とする南北トラフィックは、ゲートウェイノードを経由する必要があります。複数のゲートウェイノードがある場合、OVN には組み込みの HA 機能があるため、いずれかのノードがオフラインになってもネットワークに影響はありません。
フローティング IP のデプロイ方式は、さらに以下の 2 つに分けられます。
集中型Floating IP
この構成では、ルーターを経由するすべての南北トラフィックがゲートウェイノードを通過するため、コンピュートノードは外部ネットワークと通信する機能を持つ必要がありません。
分散型Floating IP (DVR)
このアーキテクチャでは、Floating IPの南北トラフィックは特定のプロバイダーネットワークブリッジを介して、コンピュートノードから直接送出されます。この場合、コンピュートノードには外部ネットワークへの接続が必要です。
各コンピュートノードには、以下のコンポーネントが含まれています。
また、複数の異なるプロバイダーブリッジを異なるプロバイダーネットワークに接続することも可能です。
まとめ
以上が、OVNを利用してOpenStack Networkingを提供する場合のネットワークアーキテクチャの概要です。次回の記事では、OpenStackにおけるOVNとOVSの違いについて、手短に比較します。
著作権表示:特に断りのない限り、本ブログのすべての記事はCC BY-NC-SA 4.0ライセンスの下で提供されています。




