6.2. プロバイダーネットワークを使用する模範的なインストールシナリオ
このインストールシナリオでは、テナントネットワークではなく、プロバイダーネットワークを使用した OpenStack と OpenDaylight の例を示します。外部の neutron プロバイダーネットワークは、レイヤー 3 (L3) およびその他のネットワークサービスを提供する物理ネットワークインフラストラクチャーに仮想マシンインスタンスをブリッジングします。大半の場合は、プロバイダーネットワークは、VLAN ID を使用してレイヤー 2 (L2) セグメンテーションを実装します。プロバイダーネットワークは、プロバイダーネットワーク上で仮想マシンインスタンスの起動をサポートする各コンピュートノードでプロバイダーブリッジにマッピングします。
6.2.1. 物理トポロジー リンクのコピーリンクがクリップボードにコピーされました!
このシナリオのトポロジーは、6 つのノードで設定されます。
- 1 x director アンダークラウドノード
- 3 x OpenStack オーバークラウドコントローラー。OpenStack サービスに加えて OpenDaylight SDN コントローラーがインストール済み。
- 2 x OpenStack オーバークラウドコンピュートノード
6.2.2. 物理ネットワーク環境のプランニング リンクのコピーリンクがクリップボードにコピーされました!
オーバークラウドコントローラーノードはそれぞれ、4 枚のネットワークインターフェイスカード (NIC) を使用します。
| 名前 | 目的 |
|---|---|
| nic1 | Management ネットワーク (例: SSH を介したノードへのアクセス) |
| nic2 | Provisioning (PXE、DHCP)、Internal API ネットワーク |
| nic3 | Tenant ネットワーク |
| nic4 | Public API ネットワーク、Floating IP ネットワーク |
オーバークラウドのコンピュートノードには、4 枚の NIC が実装されます。
| 名前 | 目的 |
|---|---|
| nic1 | Management ネットワーク |
| nic2 | Provisioning および Internal API ネットワーク |
| nic3 | Tenant ネットワーク |
| nic4 | Floating IP ネットワーク |
アンダークラウドノードには 2 枚の NIC が実装されます。
| 名前 | 目的 |
|---|---|
| nic1 | Management ネットワークに使用 |
| nic2 | Provisioning ネットワークに使用 |
6.2.3. NIC の接続性のプランニング リンクのコピーリンクがクリップボードにコピーされました!
この場合は、環境ファイルは番号付けられた抽象的なインターフェイスデバイス名 (nic1、nic2) を使用し、ホストのオペレーティングシステムで提示されている実際のデバイス名 (eth0、eno2 など) は使用しません。同じロールに属するホストに全く同じネットワークインターフェイスデバイス名は必要ありません。1 つのホストが em1 と em2 のインターフェイスを使用して、他のホストが eno1 と eno2 を使用しても問題はありません。各 NIC は nic1 および nic2 と呼ばれます。
抽象化された NIC スキームでは、稼働中かつ接続済みのインターフェイスにのみ依存します。ホストによってインターフェイス数が異なる場合には、ホストを接続するために必要な最小限のインターフェイス数を使用すれば十分です。たとえば、1 台のホストに物理インターフェイスが 4 つあり、他のホストには 6 つある場合、nic1、nic2、nic3、nic4 のみを使用して、両ホストに 4 本のケーブルを接続します。
6.2.4. ネットワーク、VLAN、IP のプランニング リンクのコピーリンクがクリップボードにコピーされました!
このシナリオでは、ネットワーク分離を使用して、Management、Provisioning、Internal API、Tenant、Public API、Floating IP のネットワークトラフィックを分離します。
図6.2 このシナリオで使用するネットワークトポロジーの詳細
以下の表には、各ネットワークに関連付けられる VLAN ID と IP サブネットをまとめています。
| ネットワーク | VLAN ID | IP サブネット |
|---|---|---|
| プロビジョニング | ネイティブ | 192.0.5.0/24 |
| 内部 API | 600 | 172.17.0.0/24 |
| Tenant | 554,555-601 | 172.16.0.0/24 |
| Public API | 552 | 192.168.210.0/24 |
| Floating IP | 553 | 10.35.186.146/28 |
OpenStack Platform director は br-isolated OVS ブリッジを作成し、ネットワーク設定ファイルの定義に従って各ネットワークの VLAN インターフェイスを追加します。br-ex ブリッジも director によって自動的に作成され、関連するネットワークインターフェイスが接続されます。
ホスト間の接続性を提供する物理ネットワークスイッチが、VLAN ID を適用するように適切に設定されていることを確認します。ホストに接続する全スイッチポートは、VLAN を使用して trunk として設定する必要があります。ここでの trunk という用語は、複数の VLAN ID が同じポートを通過できるポートという意味で使用しています。
物理スイッチの設定に関する内容は、本ガイドの対象範囲外です。
network-environment.yaml の TenantNetworkVlanID で、VXLAN トンネリングを使用する場合のテナントネットワークの VLAN タグを定義することができます (例: VXLAN テナントのトラフィックが、VLAN タグ付けされた下層のネットワーク上で転送される)。テナントネットワークをネイティブ VLAN 上で実行する方が望ましい場合には、この値を空にすることも可能です。また、VLAN テナント種別のネットワークを使用する場合には、TenantNetworkVlanID に指定されている値以外の VLAN タグを使用できる場合がある点にも注意してください。
6.2.5. このシナリオで使用する OpenDaylight の設定ファイル リンクのコピーリンクがクリップボードにコピーされました!
このシナリオにおける OpenStack と OpenDaylight のデプロイには、アンダークラウドノードで以下のデプロイメントコマンドを実行しています。
本ガイドには、このシナリオの設定ファイル、設定ファイルの内容、設定に関する説明も記載しています。
6.2.5.1. extra_env.yaml ファイル リンクのコピーリンクがクリップボードにコピーされました!
このファイルにはパラメーターが 1 つしかありません。
parameter_defaults:
OpenDaylightProviderMappings: 'datacentre:br-ex,tenant:br-vlan'
parameter_defaults:
OpenDaylightProviderMappings: 'datacentre:br-ex,tenant:br-vlan'
これらは、OpenDaylight によって制御される各ノードのマッピングです。物理ネットワーク datacenter は、br-ex OVS ブリッジにマッピングされ、テナントネットワークのトラフィックは br-vlan OVS ブリッジにマッピングされます。
6.2.5.2. undercloud.conf ファイル リンクのコピーリンクがクリップボードにコピーされました!
このファイルは /home/stack/ ディレクトリー内にあります。
ファイルのパスは、カスタマイズされたバージョンの設定ファイルをポイントしています。
上記の例では、Provisioning ネットワーク用の 192.0.5.0/24 サブネットが使用されています。物理インターフェイス eno2 はアンダークラウドノードでプロビジョニング用に使用されます。
6.2.5.3. network-environment.yaml ファイル リンクのコピーリンクがクリップボードにコピーされました!
これは、ネットワークを設定するメインのファイルで、/home/stack/baremetal-vlan/ ディレクトリーにあります。以下のファイルは、異なるネットワークの VLAN ID および IP サブネットを指定し、プロバイダーマッピングを表示します。nic-configs ディレクトリーの controller.yaml および compute.yaml ファイルは、コントローラーノードおよびコンピュートノードのネットワーク設定を指定するために使用されます。
この例では、コントローラーノードの数 (3) とコンピュートノードの数 (2) が指定されています。
6.2.5.4. controller.yaml ファイル リンクのコピーリンクがクリップボードにコピーされました!
このファイルは、/home/stack/baremetal-vlan/nic-configs/ ディレクトリーにあります。この例では、 br-isolated、br-vlan、および br-ex スイッチを定義します:。nic2 は br-isolated の下にあり、nic3 は br-ex の下にあります。
6.2.5.5. compute.yaml ファイル リンクのコピーリンクがクリップボードにコピーされました!
このファイルは、/home/stack/baremetal-vlan/nic-configs/ ディレクトリーにあります。コンピュート設定のオプションの大半は、コントローラー設定のオプションと同じです。この例では、nic4 は、外部接続 (Floating IP ネットワーク) に使用される br-ex の下にあります。
6.2.6. このシナリオで使用する Red Hat OpenStack Platform director の設定ファイル リンクのコピーリンクがクリップボードにコピーされました!
6.2.6.1. neutron.conf ファイル リンクのコピーリンクがクリップボードにコピーされました!
このファイルは、/etc/neutron/ ディレクトリーにあり、以下の情報が含まれています。
[DEFAULT] service_plugins=odl-router_v2,trunk
[DEFAULT]
service_plugins=odl-router_v2,trunk
6.2.6.2. ml2_conf.ini ファイル リンクのコピーリンクがクリップボードにコピーされました!
このファイルは、/etc/neutron/plugins/ml2/ ディレクトリーにあり、以下の情報が含まれています。
-
[ml2] セクションの下には、ネットワーク種別として VXLAN が使用されており、
opendaylight_v2メカニズムドライバーが指定されている点に注意してください。 -
[ml2_type_vlan] の下で、
network-environment.yamlファイルと同じマッピングを設定します。 - [ml2_odl] の下には、OpenDaylightController にアクセスするための設定が記載されているはずです。
この情報を使用して、OpenDaylight コントローラーへのアクセスを確認することができます。
curl -H "Content-Type:application/json" -u admin:admin http://172.17.1.18:8081/controller/nb/v2/neutron/networks
$ curl -H "Content-Type:application/json" -u admin:admin http://172.17.1.18:8081/controller/nb/v2/neutron/networks