コントローラー ノードにおいて、Networking のコンポーネントのインストールと設定を行います。
# apt install neutron-server neutron-plugin-ml2 \
neutron-linuxbridge-agent neutron-dhcp-agent \
neutron-metadata-agent
Networking のサーバーコンポーネントの設定は、データベース、認証メカニズム、メッセージキュー、トポロジー変更通知、プラグインがあります。
注釈
設定ファイルのデフォルトは、ディストリビューションにより異なります。これらの既存のセクションとオプションを編集するのではなく、追加する必要があるかもしれません。また、設定のスニペットにある 省略 (...
) は、保持すべきデフォルトの設定オプションを意味します。
/etc/neutron/neutron.conf
ファイルを編集し、以下の作業をすべて行います。
[database]
セクションで、データベースのアクセス方法を設定します。
[database]
...
connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
NEUTRON_DBPASS
はデータベース用に選択したパスワードで置き換えます。
注釈
[database]
セクションにある他の connection
オプションは、コメントアウトまたは削除します。
[DEFAULT]
セクションで、ML2 プラグインを有効にして、追加プラグインを無効にします。
[DEFAULT]
...
core_plugin = ml2
service_plugins =
[DEFAULT]
セクションに、RabbitMQ
メッセージキューのアクセス方法を設定します。
[DEFAULT]
...
transport_url = rabbit://openstack:RABBIT_PASS@controller
RABBIT_PASS
を RabbitMQ の openstack
アカウント用に選択したパスワードで置き換えます。
[DEFAULT]
セクションと [keystone_authtoken]
セクションに、Identity サービスへのアクセス方法を設定します。
[DEFAULT]
...
auth_strategy = keystone
[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = neutron
password = NEUTRON_PASS
NEUTRON_PASS
を Identity サービスにおいて neutron
ユーザー用に選択したパスワードで置き換えます。
注釈
[keystone_authtoken]
セクションにある他のオプションは、コメントアウトまたは削除します。
[DEFAULT]
セクションと [nova]
セクションで、Networking が Compute にネットワークトポロジーの変更を通知するよう設定します。
[DEFAULT]
...
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True
[nova]
...
auth_url = http://controller:35357
auth_type = password
project_domain_name = Default
user_domain_name = Default
region_name = RegionOne
project_name = service
username = nova
password = NOVA_PASS
NOVA_PASS
は Identity サービスで nova
ユーザー用に選択したパスワードで置き換えます。
ML2 プラグインは、Linux ブリッジ機構を使用して、インスタンス用の L2 (ブリッジとスイッチ) 仮想ネットワークインフラを構築します。
/etc/neutron/plugins/ml2/ml2_conf.ini
ファイルを編集して、以下の作業をすべて行います。
[ml2]
セクションで、フラットネットワーク、VLAN ネットワークを有効にします。
[ml2]
...
type_drivers = flat,vlan
[ml2]
セクションで、セルフサービスネットワークを無効にします。
[ml2]
...
tenant_network_types =
[ml2]
セクションで、Linux ブリッジ機構を有効にします。
[ml2]
...
mechanism_drivers = linuxbridge
警告
ML2 プラグインの設定後に、type_drivers
オプションから値を削除すると、データベース不整合が発生する可能性があります。
[ml2]
セクションで、ポートセキュリティー拡張ドライバーを有効にします。
[ml2]
...
extension_drivers = port_security
[ml2_type_flat]
セクションで、プロバイダー仮想ネットワークをフラットネットワークとして設定します。
[ml2_type_flat]
...
flat_networks = provider
[securitygroup]
セクションで、 ipset を有効にし、セキュリティーグループルールの効率性を向上させます。
[securitygroup]
...
enable_ipset = True
Linux ブリッジエージェントは、インスタンス用の L2 (ブリッジおよびスイッチ) 仮想ネットワークインフラを構築して、セキュリティーグループを処理します。
/etc/neutron/plugins/ml2/linuxbridge_agent.ini
ファイルを編集し、以下の作業をすべて行います。
[linux_bridge]
セクションにおいて、プロバイダー仮想ネットワークをプロバイダー物理ネットワークのインターフェースに対応付けます。
[linux_bridge]
physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME
PROVIDER_INTERFACE_NAME
をプロバイダー物理ネットワークのインターフェース名で置き換えます。詳細は ホストネットワーク を参照してください。
[vxlan]
セクションにおいて、VXLAN オーバーレイネットワークを無効にします。
[vxlan]
enable_vxlan = False
[securitygroup]
セクションで、セキュリティグループを有効にし、 Linux ブリッジ iptables ファイアウォールドライバーを設定します。
[securitygroup]
...
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
DHCP エージェント は、仮想ネットワーク向けに DHCP サービスを提供します。
/etc/neutron/dhcp_agent.ini
ファイルを編集して、以下の作業をすべて行います。
[DEFAULT]
セクションにおいて、Linux ブリッジインターフェースドライバー、Dnsmasq DHCP ドライバーを設定して、 isolated metadata を有効にします。これにより、プロバイダーネットワークにあるインスタンスがネットワーク経由でメタデータにアクセスできます。
[DEFAULT]
...
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata = True
Networking コントローラーノードの設定 に戻ります。
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.