GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu14.04でのOpenStackLiberty–Neutronの構成

NeutronはOpenStackの重要なコンポーネントの1つであり、インターフェースデバイスを作成したり、ネットワークに接続したりできます。このガイドに従って、ご使用の環境でNeutron(ネットワーキング)を構成してください。 Neutronは、仮想ネットワークインフラストラクチャに必要なすべてのネットワーク関連のものを管理し、ネットワーク、サブネット、およびルーターオブジェクトの抽象化を提供します。

OpenStackの構成を進めるには、次のネットワークオプションのいずれかを選択する必要があります。

ネットワークオプション1:プロバイダーネットワーク
ネットワークオプション2:セルフサービスネットワーク

これらの詳細については、ここをクリックしてください。

ここでは、セルフサービスネットワークを使用します。

コントローラーノードのインストールと構成:

Neutronサービスを構成する前に、データベース、サービス、およびAPIエンドポイントを作成する必要があります。これを行うには、MySQLサーバーにルートとしてログインします。

# mysql -u root -p

中性子データベースを作成します。

CREATE DATABASE neutron;

中性子データベースに適切な許可を与えます。

GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'password';

パスワード」を置き換えます 」と適切なパスワード。 MySQLを終了します。

環境スクリプトから管理者クレデンシャルをロードします。

# source admin-openrc.sh

サービス資格情報を作成するためのneutronユーザーを作成します。

# openstack user create --password-prompt neutron
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | default                          |
| enabled   | True                             |
| id        | 91c75b24ce324309891f6a4ea8b33887 |
| name      | neutron                          |
+-----------+----------------------------------+

管理者の役割をneutronユーザーに追加します。

# openstack role add --project service --user neutron admin

中性子サービスエンティティを作成します。

# openstack service create --name neutron --description "OpenStack Neutron" network
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Neutron                |
| enabled     | True                             |
| id          | 1834077666c54c93821c95a03fa853a1 |
| name        | neutron                          |
| type        | network                          |
+-------------+----------------------------------+

neutronサービスAPIエンドポイントを作成します。

# openstack endpoint create --region RegionOne network public http://controller:9696
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | c145840a76004e6d9e4bdccfb3603e84 |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 1834077666c54c93821c95a03fa853a1 |
| service_name | neutron                          |
| service_type | network                          |
| url          | http://controller:9696           |
+--------------+----------------------------------+

# openstack endpoint create --region RegionOne network internal http://controller:9696
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | d2305c57e55341fcbfbc1bd91c4d6378 |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 1834077666c54c93821c95a03fa853a1 |
| service_name | neutron                          |
| service_type | network                          |
| url          | http://controller:9696           |
+--------------+----------------------------------+

# openstack endpoint create --region RegionOne network admin http://controller:9696
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 2dadc6ded42a4db3bf217d1abad22f15 |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 1834077666c54c93821c95a03fa853a1 |
| service_name | neutron                          |
| service_type | network                          |
| url          | http://controller:9696           |
+--------------+----------------------------------+

コントローラーノードにネットワークコンポーネントをインストールして構成します:

# apt-get install neutron-server neutron-plugin-ml2  neutron-plugin-linuxbridge-agent neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent python-neutronclient conntrack

/etc/neutron/neutron.confを編集します。

# nano /etc/neutron/neutron.conf

以下の設定を変更し、適切なセクションにエントリを配置してください。

[DEFAULT]
...
core_plugin = ml2
service_plugins = router
allow_overlapping_ips = True
rpc_backend = rabbit
auth_strategy = keystone
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True
nova_url = http://controller:8774/v2
verbose = True

## Replace "controller" with hostname of openstack controller

[oslo_messaging_rabbit]
...
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = password

## Replace "password" with the password you chose for the openstack account in RabbitMQ
## Replace "controller" with hostname of openstack controller

[database]
...
connection = mysql+pymysql://neutron:password@controller/neutron

## Replace "password" with the password you chose for neutron database
## Commentout any other MySQL connections

[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = neutron
password = password

## Replace "password" with the password you chose for neutron user in the identity service.
## Commentout other authentication details.

[nova]
...
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
region_name = RegionOne
project_name = service
username = nova
password = password

## Replace "password" with the password you chose for nova user in the identity service.

モジュラーレイヤー2(ML2)プラグインの構成:

/etc/neutron/plugins/ml2/ml2_conf.iniファイルを編集します

# nano /etc/neutron/plugins/ml2/ml2_conf.ini

次のスタンザを変更します。

[ml2]
...
type_drivers = flat,vlan,vxlan
tenant_network_types = vxlan
mechanism_drivers = linuxbridge,l2population
extension_drivers = port_security
[ml2_type_flat]
...
flat_networks = public

[ml2_type_vxlan]
...
vni_ranges = 1:1000

[securitygroup]
...
enable_ipset = True

Linuxブリッジエージェントを構成します:

Linuxブリッジエージェントを構成するには、コントローラーノードで/etc/neutron/plugins/ml2/linuxbridge_agent.iniを編集します。

# nano /etc/neutron/plugins/ml2/linuxbridge_agent.ini

以下のようにファイルに変更を加えます。

[linux_bridge]

physical_interface_mappings = public:eth1

## Replace "eth1" with the name of the physical public facing network interface.

[vxlan]

enable_vxlan = True
local_ip = 192.168.12.21
l2_population = True

## Replace "192.168.12.21" with the management ip-address of the controller.

[agent]
...
prevent_arp_spoofing = True

[securitygroup]
...
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

レイヤー3エージェントの構成:

/etc/neutron/l3_agent.iniファイルを編集します

# nano /etc/neutron/l3_agent.ini

以下のようにファイルを変更します。

[DEFAULT]
...
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
external_network_bridge =
verbose = True

DHCPエージェントを構成します:

/etc/neutron/dhcp_agent.iniファイルを編集します。

# nano /etc/neutron/dhcp_agent.ini

以下のようにファイルに関連する変更を加えます。

[DEFAULT]
...
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata = True
verbose = True
dnsmasq_config_file = /etc/neutron/dnsmasq-neutron.conf

次に、/ etc / neutron / dnsmasq-neutron.confファイルを作成してDHCPMTUオプション(26)を有効にし、1450バイトに構成します。

# nano /etc/neutron/dnsmasq-neutron.conf

下の線をその上に置きます。

dhcp-option-force=26,1450

メタデータエージェントを構成します:

コントローラノードの/etc/neutron/metadata_agent.iniファイルを編集します。

# nano /etc/neutron/metadata_agent.ini

それに応じて変更を加えます。

[DEFAULT]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_region = RegionOne
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = neutron
password = password

## Replace "password" with the password you chose for the neutron user in the Identity service.
## Commentout other authentication details.

nova_metadata_ip = controller
metadata_proxy_shared_secret = METADATA_SECRET

## Replace METADATA_SECRET with a suitable secret for the metadata proxy. generate using # openssl rand -hex 10

verbose = True

インストールを完了するには、データベースにデータを入力します。

# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron

ComputeAPIサービスを再起動します。

# service nova-api restart

ネットワークサービスを再起動します。

# service neutron-server restart
# service neutron-plugin-linuxbridge-agent restart
# service neutron-dhcp-agent restart
# service neutron-metadata-agent restart
# service neutron-l3-agent restart

デフォルトでは、UbuntuパッケージはSQLiteデータベースを作成します。 SQLiteデータベースファイルを削除できます。

# rm -f /var/lib/neutron/neutron.sqlite

ロードされた拡張機能を一覧表示して確認します。

# neutron ext-list
+-----------------------+-----------------------------------------------+
| alias                 | name                                          |
+-----------------------+-----------------------------------------------+
| dns-integration       | DNS Integration                               |
| ext-gw-mode           | Neutron L3 Configurable external gateway mode |
| binding               | Port Binding                                  |
| agent                 | agent                                         |
| subnet_allocation     | Subnet Allocation                             |
| l3_agent_scheduler    | L3 Agent Scheduler                            |
| external-net          | Neutron external network                      |
| flavors               | Neutron Service Flavors                       |
| net-mtu               | Network MTU                                   |
| quotas                | Quota management support                      |
| l3-ha                 | HA Router extension                           |
| provider              | Provider Network                              |
| multi-provider        | Multi Provider Network                        |
| extraroute            | Neutron Extra Route                           |
| router                | Neutron L3 Router                             |
| extra_dhcp_opt        | Neutron Extra DHCP opts                       |
| security-group        | security-group                                |
| dhcp_agent_scheduler  | DHCP Agent Scheduler                          |
| rbac-policies         | RBAC Policies                                 |
| port-security         | Port Security                                 |
| allowed-address-pairs | Allowed Address Pairs                         |
| dvr                   | Distributed Virtual Router                    |
+-----------------------+-----------------------------------------------+

それで全部です!。 Neutronコンポーネントと連携するように計算ノードをインストールして構成するときが来ました。


Ubuntu
  1. Ubuntu14.04LTSでのOpenStackLiberty–Novaの構成

  2. Ubuntu14.04.2でのOpenStackKilo– Neutron#1の構成

  3. Ubuntu14.04.2でのOpenStackKilo–Novaの構成

  1. Ubuntu14.04.2上のOpenStackKilo–Glanceの構成

  2. Ubuntu14.04.2でのOpenStackKilo– KeyStone#2の構成

  3. Ubuntu14.04.2でのOpenStackKilo– KeyStone#1の構成

  1. Ubuntu14.04.2でのOpenStackKilo– Swift#1の構成

  2. Ubuntu14.04.2でのOpenStackKilo– Cinder#2の構成

  3. Ubuntu14.04.2でのOpenStackKilo– Cinder#1の構成