4.3. フラットプロバイダーネットワークの設定
フラットプロバイダーネットワークを使用してインスタンスを直接外部ネットワークに接続することができます。これは、複数の物理ネットワークおよびそれぞれ別の物理インターフェイスがあり、各 Compute ノードとネットワークノードをこれらの外部ネットワークに接続する場合に役立ちます。
前提条件
複数の物理ネットワークがある。
以下の例では、
physnet1およびphysnet2という物理ネットワークをそれぞれ使用します。独立した物理インターフェイスがある。
この例では、それぞれ別の物理インターフェイス
eth0とeth1を使用します。
手順
アンダークラウドホストに stack ユーザーとしてログインして、カスタム YAML 環境ファイルを作成します。
例
vi /home/stack/templates/my-modules-environment.yaml
$ vi /home/stack/templates/my-modules-environment.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow ヒントRed Hat OpenStack Platform Orchestration サービス (heat) は、テンプレート と呼ばれるプランのセットを使用して環境をインストールおよび設定します。カスタム環境ファイル を使用して、オーバークラウドの要素をカスタマイズすることができます。このファイルは、orchestration テンプレートをカスタマイズするための特別な種別のテンプレートです。
YAML 環境ファイルの
parameter_defaultsセクションで、NeutronBridgeMappingsを使用して外部ネットワークへのアクセスに使用する OVS ブリッジを指定します。例
parameter_defaults: NeutronBridgeMappings: 'physnet1:br-net1,physnet2:br-net2'
parameter_defaults: NeutronBridgeMappings: 'physnet1:br-net1,physnet2:br-net2'Copy to Clipboard Copied! Toggle word wrap Toggle overflow Controller ノードおよび Compute ノードのカスタム NIC 設定テンプレートで、インターフェイスがアタッチされたブリッジを設定します。
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow openstack overcloud deployコマンドを実行し、変更したカスタム NIC テンプレートおよび新しい環境ファイルを含む、テンプレートおよび環境ファイルを追加します。重要後で実行される環境ファイルで定義されているパラメーターとリソースが優先されることになるため、環境ファイルの順序は重要となります。
例
openstack overcloud deploy --templates \ -e [your-environment-files] \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/my-neutron-environment.yaml
$ openstack overcloud deploy --templates \ -e [your-environment-files] \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/my-neutron-environment.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
フラットネットワークとして外部ネットワーク (
public1) を作成し、設定済みの物理ネットワーク (physnet1) に関連付けます。このネットワークを共有ネットワークとして設定し (
--shareを使用)、他のユーザーが外部ネットワークに直接接続された仮想マシンインスタンスを作成できるようにします。例
openstack network create --share --provider-network-type flat --provider-physical-network physnet1 --external public01
# openstack network create --share --provider-network-type flat --provider-physical-network physnet1 --external public01Copy to Clipboard Copied! Toggle word wrap Toggle overflow openstack subnet createコマンドを使用して、サブネット (public_subnet) を作成します。例
openstack subnet create --no-dhcp --allocation-pool start=192.168.100.20,end=192.168.100.100 --gateway 192.168.100.1 --network public01 public_subnet
# openstack subnet create --no-dhcp --allocation-pool start=192.168.100.20,end=192.168.100.100 --gateway 192.168.100.1 --network public01 public_subnetCopy to Clipboard Copied! Toggle word wrap Toggle overflow 仮想マシンインスタンスを作成し、それを新たに作成した外部ネットワークに直接接続します。
例
openstack server create --image rhel --flavor my_flavor --network public01 my_instance
$ openstack server create --image rhel --flavor my_flavor --network public01 my_instanceCopy to Clipboard Copied! Toggle word wrap Toggle overflow