Contrailクラウドのサーバーノードネットワーク接続
Contrailクラウド環境のストレージノード、コンピューティングノード、管理ノードを相互接続するために、サーバー間ではさまざまなネットワーク接続が実行されます。これらのノードをEVPN-VXLANファブリックレイヤーに接続し、上位レイヤーのネットワークにアクセスするためにも、複数のネットワーク接続が使用されます。
これらのネットワーク接続については、次のセクションで説明します。
Contrailクラウドのサーバーノードネットワーク接続の概要
Contrailクラウド環境のストレージノード、コンピューティングノード、管理ノードを相互接続するために、サーバー間ではさまざまなネットワーク接続が実行されます。これらのノードをEVPN-VXLANファブリックレイヤーに接続し、上位レイヤーのネットワークにアクセスするためにも、複数のネットワーク接続が使用されます。
大部分のネットワーク接続(Contrailクラウド展開の外部で確立されるIPMIネットワークとイントラネットネットワークを除くすべてのネットワーク)は、Contrailクラウドの初回導入時にYAML設定ファイルの情報を使用して自動的に作成されます。これらのネットワークを作成するために、サーバー側のデバイスでユーザーの操作は必要ありません。ただし、サーバーデバイスとEVPN-VXLANファブリックスイッチ間でトラフィックが受け渡されるようにするには、EVPN-VXLANファブリックのスイッチでVLANを設定する必要があります。『 Contrailクラウド導入ガイド』を参照してください。
図 1 は、代表的なアーキテクチャで使用可能なネットワークを使用して、サーバー ノードがデバイスに接続する方法を示しています。
表 1 は、各ネットワーク接続の目的をまとめたものです。
ネットワーク | 目的 |
IPMIの |
サーバーのハードウェア管理を提供します。 IPMI サービスは、主に Openstack Ironic サービスによって使用され、Contrailクラウドインストールの外部で確立されます。IPMI サービスは、Contrailクラウドのサーバー ノードで使用できます。 |
イントラネット |
ジャンプ ホストへのユーザー アクセスを提供します。 ジャンプ ホストのサテライト リポジトリへのアクセスを提供します。 Contrailコマンド Web ユーザ インターフェイスへのアクセスを提供します。 コントロール プレーン ネットワークから SNAT 経由で外部ネットワーク アクセスを提供します。 |
プロビジョニングまたはコントロールプレーン |
PXE ブートを使用して新規ノードをデプロイし、オーバークラウドのベアメタルサーバーにソフトウェアパッケージをインストールします。プロビジョニング/コントロールプレーンネットワークは Red Hat Director によって使用され、アンダークラウドの作成前に事前定義されています。 |
内部API |
API通信、RPCメッセージ、データベース通信を使用して、Keystone、Nova、NeutronなどのOpenStackおよびContrail Networkingサービスとの通信を提供します。 |
外 |
テナント管理者は、OpenStack ダッシュボード(Horizon)グラフィック インターフェイス、OpenStack サービス用のパブリック API、パブリック Contrail API、Appformix WebUI にアクセスできます。イントラネットへのパスとして一般的に使用されます。 |
テナント |
オーバーレイデータプレーントラフィック(UDP上のVXLANおよびMPLS)と、ContrailコントローラからContrail vRouterコントロールプレーントラフィックをサポートします。 |
貯蔵 |
Ceph、ブロックストレージ、NFS、iSCSI、およびその他のストレージタイプのストレージデータトラフィックをサポートします。 |
ストレージ管理 |
Cephの制御、管理、およびレプリケーショントラフィックを提供します。 |
管理 |
(オプション)ジャンプ ホストを介してトラフィックを送信することなく、計算ノードへの直接アクセスを提供します。 DNSおよびNTPサービスに使用できます。 |
IPMI、管理、プロビジョニングの各ネットワークは、管理スイッチを介して接続され、ネットワークは、VLAN のトランク接続を使用するか、ネットワークごとに個別の VXLAN トンネルを使用して、スイッチ間で拡張されます。その他のネットワークは、IPファブリックのリーフスイッチに接続し、EVPNコントロールプレーンを備えたVXLANを使用してラック間を接続します。
外部ネットワークには、外部でルーティング可能な API と、さまざまなコントローラー機能の UI IP アドレスが含まれています。これらの関数は、通常、同じサブネット内にあります。外部ネットワークの VLAN は VXLAN 内にあるように設定されており、VXLAN は、テナント ユーザー パケットが外部ネットワークから到着するネットワーク間でルーティングするように設定された VRF インスタンスで終端します。
この代表的なアーキテクチャの IP ファブリックに直接接続されているその他のネットワークは、ラックごとに個別のサブネットを持ち、ルーティングを使用して VXLAN 内のサブネットを接続します。ルーティングは、リーフ デバイス(エッジ ルーティング)またはスパインデバイス(中央ルーティング)のいずれかに IRB インターフェイスを配置することによって行われます。
表 2 は、ネットワークの構成方法に関する推奨事項を示しています。
ネットワーク | サブネットの説明 | 実装 |
IPMIの |
IPMI は、通常、IPMI にルーティングできるデバイスで使用できる外部サービスです。IPMI は Contrailクラウドでは確立されません。 |
通常、IPMI はラックにまたがってはいません。VXLANを使用してラックにまたがることができます。 |
イントラネット |
ジャンプ ホストへの管理アクセス。 |
特定のポート構成 |
プロビジョニング |
レイヤー 2 単一サブネット |
VLANまたはVXLANを使用したスパンオーバーラック |
内部API |
レイヤー 2 単一サブネット |
VLANまたはVXLANを使用したスパンオーバーラック |
内部API(リーフ) |
ラックごとに 1 つのサブネット |
ラック間のレイヤー 3 ルーティング |
外 |
レイヤー 2 単一サブネット |
VLANまたはVXLANを使用したスパンオーバーラック |
テナント |
レイヤー 2 単一サブネット |
VLANまたはVXLANを使用したスパンオーバーラック |
テナント(リーフ) |
ラックごとに 1 つのサブネット |
ラック間のレイヤー 3 ルーティング |
貯蔵 |
レイヤー 2 単一サブネット |
VLANまたはVXLANを使用したスパンオーバーラック |
保管(リーフ) |
ラックごとに 1 つのサブネット |
ラック間のレイヤー 3 ルーティング |
ストレージ管理 |
レイヤー 2 単一サブネット |
VLANまたはVXLANを使用したスパンオーバーラック |
ストレージ管理(リーフ) |
ラックごとに 1 つのサブネット |
ラック間のレイヤー 3 ルーティング |
管理 |
レイヤー 2 単一サブネット |
VLANまたはVXLANを使用したスパンオーバーラック |
ネットワークが複数のサブネットで構成されている場合(このドキュメントで前述したリファレンスアーキテクチャには、ラックごとに1つのサブネットがあります)、すべてのラックサブネットを含むサブネットが作成されます。このサブネットはスーパーネットと呼ばれます。スーパーネットのサブネット・アドレスは、ラック間のトラフィック・フローを適切に確保するために、サーバー上に静的ルートを設定するために使用されます。
図 2 は、集中型ルーティング(スパイン デバイス上の IRB インターフェイスを使用してレイヤー 2 とレイヤー 3 の間でトラフィックを転送)が有効になっている場合に、エンド システムをゲートウェイ ルーター、スパイン スイッチ、およびリーフ スイッチに接続するネットワークで、VLAN、VTEP、IRB、VRF がどのように構成されるかを示しています。
表 3 は、デバイスごとの VLAN の導入方法をまとめたものです。
デバイス | VLANサマリー |
管理スイッチ |
IPMI、管理、プロビジョニング、およびイントラネット ネットワークはすべて、異なるポートで管理スイッチをサーバーに接続します。 各ネットワークのポートトラフィックは、タグ付けされずに管理スイッチに到着し、同じVLANに設定されます。 VLAN は、異なるラック上の管理スイッチ間で拡張されます。 |
リーフスイッチ(EVPN-VXLANファブリック) |
外部、内部API、テナント、ストレージ、およびストレージ管理ネットワークからのトラフィックは、異なるVLAN内のサーバーからリーフスイッチの高速インターフェイスに到着します。 VLAN は VTEP で設定されます。 リーフ ポートは、サーバーによってそのポートに接続されるネットワーク用の VLAN を持つ論理インターフェイスで構成されます。 各スイッチの各VLANはVXLAN VTEPに設定され、EVPNは接続された各サーバーのホストルートをスパインにアドバタイズします。 各ネットワークで使用されるVLANは、ファイルovercloud-nics.ymlで指定されます。 |
スパインスイッチ(EVPN-VXLANファブリック) |
スパイン スイッチは、内部 API、テナント、ストレージ、および Storage-Mgt ネットワークごとに VTEP を使用して設定され、これらはそれぞれ、スーパーネットの IP アドレスを持つ IRB インターフェイスに接続されます。各スパインスイッチには、リーフ スイッチから各ホストへのルートを受信する VRF があります。 |
SDNゲートウェイルーター |
SDN ゲートウェイは、外部ネットワーク用の VTEP と VRF で設定されます。各SDNゲートウェイは、レイヤー2ネットワーク外のピアに外部ネットワークのルートをアドバタイズします。 |
Contrailクラウド ネットワークのタイプ
表 4 は、Contrailクラウドのサーバー レイヤーでデバイスまたは VM によって使用されるネットワークをまとめたものです。
役割 | ネットワーク | |||||||
イントラネット | プロビジョニング | 内部API | 外 | テナント | 貯蔵 | ストレージ管理 | 管理 | |
ジャンプ ホスト (アンダークラウド VM) |
✓ |
✓ |
|
|
|
|
|
|
OpenStackコントローラ |
✓ |
✓ |
✓ |
随意 |
✓ |
✓ |
随意 |
|
Contrailコントローラ |
|
✓ |
✓ |
随意 |
✓ |
|
|
随意 |
Contrail分析 |
|
✓ |
✓ |
随意 |
✓ |
|
|
随意 |
Contrail分析DB |
|
✓ |
✓ |
随意 |
✓ |
|
|
随意 |
Contrailサービスノード(ToRサービスノード) |
|
✓ |
✓ |
随意 |
✓ |
|
|
随意 |
Appformix コントローラ |
|
✓ |
✓ |
✓ |
随意 |
|
✓ |
随意 |
ホストの制御(すべてのコントローラ VM を実行) |
|
✓ |
|
|
|
|
|
随意 |
コンピュートノード |
|
✓ |
✓ |
|
✓ |
✓ |
|
随意 |
ストレージ ノード |
|
✓ |
|
|
|
✓ |
✓ |
随意 |
ジャンプ ホストを経由せずにノードに直接アクセスできるようにする管理ネットワークの使用はオプションですが、多くの場合、推奨されます。
Contrailクラウドの役割とネットワーク
Contrailクラウドのネットワークは、ノードを管理スイッチまたはネットワークアクセスを提供するデバイスに接続します。このリファレンスアーキテクチャでは、Contrailクラウドのサーバーノードを上位レイヤーネットワークに接続するデバイスは、EVPN-VXLAN IPファブリックのリーフデバイスです。
表 5 は、Contrailクラウド内のノードのネットワーク接続をまとめたものです。
ノード | 管理スイッチの接続 | ネットワーキングデバイス接続 |
ジャンプホスト |
IPMIプロビジョニング管理イントラネット |
何一つ |
コントローラ ホスト |
IPMIプロビジョニング管理 |
外部内部APIテナントストレージストレージ管理 |
コンピュートノード |
IPMIプロビジョニング管理 |
内部APIテナントストレージ |
ストレージ ノード |
IPMIプロビジョニング管理 |
ストレージストレージ管理 |
Contrailクラウドでの設定とソフトウェアのアップデート
ネットワークノードの設定に一貫性を持たせるため、オーバークラウドのノード (コンピュートノード、ストレージノード、制御ホスト) に対する以下の変更は、常に Contrailクラウド を使用して行う必要があります。
ソフトウェアの更新。
設定変更(新しいノードの削除または追加を反映した設定変更を含む)。
Contrailクラウドを迂回して下位レイヤーに変更を適用すると、多くの場合、設定は後で上書きされます。
Contrailクラウドの設定ファイル
事前に設定された一連の YAML ファイル テンプレートは、Contrailクラウド インストールの一部として提供されます。これらのユーザー設定可能な YAML ファイルは、Contrailクラウド インストールの初期段階でジャンプ ホスト サーバーにダウンロードされます。ユーザーはジャンプ ホスト内から YAML ファイルにアクセスして編集でき、更新された構成は Ansible プレイブック スクリプトを使用してデプロイできます。YAML ファイルの場所および設定の更新手順の詳細については、「 Contrailクラウドの導入 」を参照してください。
表 6 は、Contrailクラウドで一般的に使用される YAML ファイル パラメーターの一覧と、パラメーターの目的の概要を示しています。
YAML File Parameter |
Purpose |
site.yml | |
グローバル: |
デプロイ環境の DNS、NTP、ドメイン名、タイム ゾーン、サテライト URL、プロキシ構成。 |
jumphost: |
ジャンプ ホストの NIC 名定義と PXE ブート インターフェイスをプロビジョニングします。 |
control_hosts: |
ホストパラメータを制御します。分析などの機能のロールごとのベアメタルサーバーとコントロールプレーンVMのディスクマッピングが含まれます。 |
compute_hosts: |
計算ノードの SR-IOV、DPDK、TSN のパラメーター。ハードウェアプロファイルごとのルートディスク構成。 |
storage_hosts: |
ストレージノードのCephおよびブロックストレージプロファイルの定義。 |
undercloud: |
ロールの Nova フレーバー。追加のハードウェアプロファイルを使用する場合に適用されます。 |
オーバークラウド: |
ハードウェアプロファイルとリーフ番号ベース:
|
ceph: |
ストレージノード上のCephの有効化とディスク割り当て(プール、OSD)。 |
ceph_external: |
外部にデプロイされたCeph統合パラメータ。 |
AppFormix: |
Appformix の HA、VIP IP、およびネットワーク デバイスの監視を有効にします。 |
inventory.yml | |
inventory_nodes: |
名前、IPMI、IP、すべての Contrail クラスタ ノードの LCM、ルート ディスク、その他の関連機能に使用される Ironic ドライバ。 |
control-host-nodes.yml | |
control_host_nodes: |
コントロールホストとコントロールプレーンの内部IPとDNS(コントロールノードごと)。コントローラに静的に追加された IP は、それを使用するネットワークの DHCP プールの外部にある必要があります。 |
control_host_nodes_network_設定: |
制御ホストのブリッジ、ボンディング、DHCP/IP、MTU。 |
control_hosts: |
制御ホスト マッピング上のブリッジを行う VM インターフェイス。 |
overcloud-nics.yml | |
contrail_network_config:controller_network_config:appformixController_network_config:computeKernel_network_config:compute_dpdk_network_config:cephStorage_network_config: |
インターフェイスからネットワークへのマッピング、ルート、DHCP-IP割り当て、ボンディング、VLANからインターフェイスへのマップ、および制御、ストレージ、および計算ノードのボンディングオプション。 |
compute-nodes.yml | |
compute_nodes_kernel:compute_nodes_dpdk: compute_nodes_sriov: |
インベントリからコンピュートノードのコンピュートロールおよびプロファイルへのホストのマッピング。 |
storage-nodes.yml | |
storage_nodes: |
ストレージ・ノードの名前。 |
vault-data.yml | |
グローバル: |
Red Hat Open Stack Vault 機能用のサテライトキーと Contrail ユーザーパスワード。 |
undercloud: overcloud: control_hosts: |
Red Hat Open Stack Vault 機能使用時の Contrail クラスターノードとアンダークラウドの VM およびベアメタルサーバー (BMS) パスワード。 |
AppFormix: |
Red Hat Open Stack Vault 機能を使用する場合の Appformix の MySQL および RabbitMQ パスワード。 |
ceph_external: |
Ceph External が Red Hat Open Stack Vault 機能とともに使用するクライアントキー。 |
inventory_nodes: |
Red Hat Open Stack Vault 機能使用時の Contrail クラスターノードの IPMI 認証情報 |